Programming Serendipity

プログラミングを中心に種々雑多に書き留めます

編集後記:「モンスターをストライクするゲームの作り方」

技術書典というイベントで、「モンスターをストライクするゲームの作り方」を発表した。

techbookfest.org

作った感想としては、とにかく大変だった。

私は今までずっと、「スタートから完成まで基礎知識がすべて含まれたゲーム開発解説コンテンツがないのはなぜだ」とずっと疑問に感じていたが、その理由がわかった。とにかく大変なのだ。 実に1年近くの作業時間を要したこの作品を作りたいと思った経緯から振り返ってみたい。

動画内からわかるように、動画を撮影したのは2015年11月。 だが、これを作ろうと思ったのは9月頃だったと思う。 まず、構想段階で、「完璧なUnity入門コンテンツを作りたい」というのがあった。 巷にあふれるどの本や公式チュートリアルなどを見ても、ちょっとだけ作ってできたことにしている内容ばかりで、初心者向けをうたいながら内容は初心者に不親切、かつ非効率なやり方をしていたりひどいものは致命的なバグがあったりと、「なんだこれは」という思いがあったからだ。 そして一般では「初心者本を何冊か組み合わせて理解していくのがいい」とまで言われている。そういう面もなくはないだろうが、技術書は価格レンジが高めなので、当たり本を引くまでのガチャ感は財布的にも精神的にも負担が重い。どうせなら1つで完結していたほうが一貫性もあるだろうし、その過程で深いところまで進めばより多くのことを学べるだろうと思ったのだ。 こういう思いから、軽い気持ちでコンテンツ作りが始まった。

まず、どういう形態にするのがいいだろうか。紙の本だと「書いてある通りに操作したのにうまくいかない」「これどうやるのかわからない」というのが発生しがちである。 紙面には限りがあるし、SSだけでは伝わらない部分もあるからだ。 そこで、初心者向けなら特に、動画にするのがいいのではないかと考えた。 動画なら、動作動作の合間のテクニック的なものや、便利なショートカットなどもダイレクトに紹介できる。 では題材はどうしよう。オリジナルでもいいが、やはり有名なゲームを真似るのがいいだろうと思った。モチベも維持しやすいし、有名なゲームの構造についても知ることができて一石二鳥だからだ。それが今回の題材である。

さて、やりたいことは決まったが、まずは自分でその題材になる作品を完成させなければならない。 そうして作り始めたが、当時は自分自身もUnityに今よりも慣れていなく、1か月ほど掛かって10月ごろに完成させた。

これを元にして、最初から作っていく過程を動画にとるわけだが、しかしそれをそのまま作品にしたのではそれだけでは既存のコンテンツと同じだ。 私が作りたかったのは、「誰がやっても必ず最後まで完成させられる、質も高く、モチベも維持しやすい、網羅的な入門コンテンツ」だった。 私だけで作っても説明不足の点も出るだろうし、初心者にとって不要な予備知識を要求する恐れがある。 そのためには、動画に撮影する前に、実際に初心者が完成させられるか確かめる必要があった(一般に売られている初心者向けの本の多くはこれが決定的に欠けているのではないか)。 幸い、さいたまげーむすではゲーム開発経験の多寡を問わず意欲的なメンバーが集まっていたので、彼ら彼女らにこの任をお願いした。 完成したゲームを、自分自身ももう一度作りながら、ともに最後までトレースしてもらったのだが、なかなかにハードなもので、土日両方の午前から夜9時ごろまで使って丸々2日掛かった。丸2日終わったときは、自分も相手もお互いにへとへとである。手伝ってもらった方々には、無理強いをしてしまって申し訳ないと同時に、ついてきてくれて本当にありがとうと言いたい。 これを3人ほどにやってもらい、その中で説明不足な点も見えてきた。 3人ともUnityはカジュアルゲームを作ったことがあるくらいだったが、終わった後には3人ともが「なんとなくUnityがわかったような気がする」と言ってもらえたことはうれしかった。 本当は10人くらいに試してもらいたかったが、このペースでは時間がかかりすぎることに気づき、次の段階に進むことにした。

ここまででひとまず、初心者でも最後まで通すことができるということは確認できたので、これをもとに動画を撮影するが、全部を暗記することはできないので台本を作った。この台本は28章にもなる。 土日2日丸々使って、メインPCで台本を表示させながら、ノートPCで撮影。 誰もいないのに、撮影時にはかなり緊張した。人は最高のパフォーマンスを1発で出そうとすると、どんな状況でも緊張するのだと悟る。 作成過程全体を4分割し、土日で2つずつ撮影した。 が、ここで私は致命的なミスを犯す。 最後のpart3の撮影が終わって保存するとき、part2と同じ名前を指定してしまい、part2の動画が跡形もなく消えてしまった! (キャプチャにはAGDRecorderを使っていたのだが、ファイル名の指定で「日時を入れる」にチェックが入っていなかったために起きた。デフォルトではチェックが外れているため、何もしなければ自動的に上書きになってしまう。使用する人は気を付けよう。) 大慌てで、復元、リカバリーソフト、全てを試したが、だめだった。茫然自失、撮り直しが確定した。 しかも、全てのパートはつながっている。綺麗になぞれればいいが、間違えると動画の内容に齟齬が出る。part2だけ撮影日が異なるのはこのためで、part2-1があるのは撮り直し時にやり忘れた部分だ。

ともかく、トラブルはあったが動画は撮れた。生状態の動画の長さは実に6時間を超えた。あとはこれに解説を加えなければならない。書籍1冊分をゆうに超える文章量になる。 実のところ、これが一番大変だった。動画編集ソフトには、自分自身動画作成に慣れていないことを考慮してWindowsムービーメーカーを選択したが、これが間違いだった。読み込みが遅く、バグだらけのソフトであることが判明したからだ。 1時間半の動画を読み込むのに45分かかり、機能も貧弱で、字幕を同時に2つ以上つけられない。 分割のショートカットキーMを押すと、場合によっては動画の後ろのほうの部分が消失してしまう。(part3の最後が切れているのはこのせいで、書き出すまで気づかなかった。元に戻そうにもアンドゥの回数の制限も厳しく、上書き保存したあとだったので復元できなかった。) このソフトは2度と使わないと心に決めたが、途中までこれで作ってしまったので今回はこれでいくしかない。

字幕付けは途方に暮れる作業だ。このあたりから、軽い気持ちで動画づくりを始めたことを後悔し始める。字幕の完成を待っていてはチェックが進まない。作成途中ではあったが、WIP状態の動画を他の人にも試してもらった。やはり字幕がなく、生動画では大変だったようだ。すまない思いとありがとうという思いの両方がある。 字幕を付けてもつけても、まだ数時間分を字幕を付けなければならないという状態に圧倒されたが、それでも、どうにかこうにか、途中で投げ出したくなりながらも、最後まで字幕を付け通した。

ここからはもうひたすらにフィードバックを受けて改善して、の繰り返しだ。 台本を字幕として付け直すだけでは、やはり分かりにくい箇所が大量にあり、良く見直せば、自分でもわかりにくいと感じる部分もあった。 ひたすら「どこがわかりにくかったか」「何と説明すればわかりやすいか」メンバーにヒアリングを繰り返し、改善を図った。 これもやはり、時間がかかる。メンバーにも予定があるし、そもそもこの活動は完全に自分の発案実行であり、さいたまげーむす全体として取り組んでいるわけではない。 本当はこの段階で完璧になるまでブラッシュアップしたかったが、それでは完成させることができない。本当に納得いくまでやったら挫折しそうだった。 まずはここで動画を書き出し、さらにコアメンバー以外のメンバーにも試してもらった。 さいたまげーむすに訪れる人に片っ端から声をかけ、依頼してみた。私がまさに知りたいのは初心者の意見であり、さいたまげーむすとしてメンバーの育成にも役立つと思った。 だが、多くは1回だけでやめていってしまった。 というのも、おそらく、このコンテンツというよりも、さいたまげーむす自体に1回行ってみたかっただけという人だったからだろうと思う。 正直かなり残念だったが、あまりおいそれと有料で配布する予定のものをやたらめったらに配ってもだめで、協力を依頼するのは、まじめに取り組んでくれる人、主にさいたまげーむすに2~3回以上継続して参加してくれる人に限ることにした。実際、最後まで協力してくれた人はそういう人だった。

こうして動画に解説をつけていったが、時間がたつにつれて自分のUnityの知識も変わってくるし、不完全なところが見えてきて1から作り直したい気持ちもあったが、作りこもうとすると際限がないので、この方向性で詰めてひとまず完成とした。 4月ごろのことで、字幕付け作業を始めてから実に半年がたっていた。 正直、納得はしていない。まだまだ説明不足な点はあるだろう。それでもお蔵入りになるよりは、ということでこの状態で世に問うことにした。

あとは体裁だ。 空のDVDを買い、データを焼いて、ラベリングをし(プリンターを持っていないので実家に帰って実家でプリントした)、ケースを購入して、指紋がつかないように軍手をしてDVDを入れ、委託なので最後はプチプチ包装して紙袋に入れて宅配便で発送した。

他のサークルもこれほどの作業をしているのだろう。いままでイベントには一般参加しかしてこなかったのであまり意識していなかったが、裏側の作業の多さには少し驚いた。

作品が完成したら、価格を決めなければならない。 率直に言って、市販のUnity本の内容と比較すれば、6000円くらいの価値はあると自負している。 しかし、それでは初心者にリーチできない。 クオリティのわからない技術書にそんな大金を出せる人もそうそういない。 他の買い物をするついでに手に取りやすい、イベント価格の500円で出すことにした。

ここまでやって、ようやく作品が日を浴びる。

大量に売れ残ったら寂しいな、とか、自分はこういうコンテンツに需要があると思って必死に作ったが、本当に需要があるのか、とか不安だったが、意外に多くの人の手に渡ったようで少しほっとしている。 見ていただいた方には、ぜひ感想や意見を聞かせてほしい。

落選サークルも来場者も多かったようで、完全に会場のキャパシティを超えていたが、やむを得ないところかもしれない。私もコミケには行くが、コミケの感覚で言えばこの大盛況は予想できないだろう。私が運営でもあの規模の会場を予約する。 しかし、技術だけを独立させると価値が出るというのは注目に値する。

…私は、ゲーム開発技術の解説コンテンツがもっと世の中に増えてほしい、と願っている。 特にゲーム開発のクライアント側の情報は、時代の進化に比べて出回る量が少ない。 Web系であれば、ご存知の通り有名企業を中心に情報発信が非常に活発だし、ゲームでもサーバー側のほうは勉強会などが積極的に開催されているが、 本体のほうはぽっかり穴が開いている。

このコンテンツを作ったのも「開拓され切った情報はじゃんじゃん吸収してもらって、最先端の研究に参加してほしい」という思いからだ。 セガ黒本の平山さんと同じ気持ちである。 そうしてWeb系と同じくらい、ゲーム系で優秀なプログラマが生まれやすい状態になれば、きっと面白いゲームも増えてくれると信じている。 そのための活動を、私は今後もしていきたい。 この流れで言えば、今回の解説動画第2弾を計画したいところだが、あまりの作業量なので、すぐに続編をというのは難しい。協力者が増えればできるかもしれない。

さいたまげーむすは現在、もくもく会を中心に活動しています。もし興味があれば、さいたまげーむすの集まりをのぞいて見てください。あらゆる人の参加を歓迎しています。

atnd.org