君が本当にゲームを作るまで

個人開発を始めてからリリースするまでの実際のゲームの作り方


どうしてこの本を書くのか


2022-07-17
Written by Tatsuya Koyama

2022 年現在、デジタルゲームを作ること、そしてその方法を学ぶことは、以前よりもずっと敷居の低いものになりました。 20 年前に中学生だった自分が今の環境を見たら、たいそう羨ましがることでしょう。 世の中にはすでに、ゲーム開発を学ぶための本や Web サイト、YouTube の動画など、優れた教材が溢れています。 そんな中、僕がわざわざこの本を書く意味はあるのでしょうか。

若い頃の僕が知りたかったこと

僕は 「今目の前に 10 年前の自分がいたら、彼に教えてあげたいこと」 を書こうと思っています。 対象読者は 10 年前の自分というわけです。 10 年前… 25 歳の僕はゲームプログラマとして働き始めて 3 年目でした。 学生時代から趣味でゲームを作っていましたし、仕事でのチーム開発もいくつか経験した頃合いだったので、 もうゲーム開発初心者の域は脱した、といってもよいレベルだったと思います。

しかしわからないことや、うまくやれないことはたくさんありました。 ゲームデザイン、シナリオ、グラフィックデザイン、音楽(DTM)などはわりと未知の領域でした。 専門のプログラミングやソフトウェア設計もまだまだ自信の持てる水準ではなく、 今ではすっかりメジャーになったゲームエンジンの Unity に関しても、 当時業務で使っていなかったので「触ってみた」程度のレベルでした。 でも僕は、いつしかそうした複数の分野を学んで、 自分の作りたいと思うゲームを、独力で完成させられるくらいになりたいと考えていたのです。 (無謀ですね!)

自分の勉強法は各分野の本を買ってきて読んだり、Web 上の記事や動画を眺めたり、 たまには勉強会や技術カンファレンスに参加したり、ためしに自分で何かを作ってみたり… という普通のやり方でした。 これは地道で真っ当ですが、実戦で使える知識や技術に昇華するには時間がかかるやり方です。

本はその性質上、一般化した知識を扱うことが多いので具体性に欠けることがあります。 ゲーム開発の本で題材にするサンプルゲームやサンプルコードは、大体が架空のものや、小さいものです。 カンファレンスなどでは商用ゲームの具体的な事例の話を聞くことができますが、 それはごく一部のトピックを切り取ったものであったり、自分がピンポイントに知りたい情報とは違っていたりします。

若い僕は 「基礎知識やプラクティスや精神論も良いけど、実際問題ゲームを一本作るときに各工程をどう考えてどう作るのか、そういう具体的な話が聞きたい」 と渇望していました。それは仕事でゲームを作っていても、容易に得られる知見ではなかったのです。 (他の人が作ったデータの成果物やソースコードは見ることができますが、その思考プロセスや試行錯誤の過程までは見られないですから)

「すでにそれをやった人」に教えてもらうのが一番早い

やり方を学ぶときに、最も効率のよい方法はなんでしょうか。 自分は 「すでにそれをやったことがある人に教えてもらう」 ことかなと思っています。先人に訊くということです。 僕の場合、先人とは 「個人開発で(ある程度の規模の)ゲームを完成させて実際にリリースした人」 でした。 そういう人に、何を使ってどう作ったのか、どう考えて設計したのか、どういう失敗や成功があったのかを教えてもらえたら、 一気に知識の経験値を稼げる、と思ったのです。 そのような先人に会えなくとも、せめてそういう人が書いた本が読めたら…

同時に、 そんな都合のよい本はそうそう存在しない ということもわかっていました。 そもそも、書き手はまず 個人開発で(ある程度の規模の)ゲームを完成させて実際にリリース するような人でなければなりません。 その上で、「よし、自分のゲームをどう作ったか、その全容を本にしよう」と思い立ち、実際に書ききらねばなりません。 小さな確率と小さな確率を掛け合わせると、その結果はもっと小さな確率です。 実際に自分はそのような本をこれまで、寡聞にして知りませんでした。

10 年前の僕へ

さて、35 歳の僕は折しも、個人で作っていたゲームの開発を終わらせ、リリースしました。
「ドアを開ける短いゲーム」 というタイトルの、3D のアドベンチャーゲームです。

このゲームはそれほど長いゲームでもありませんが言うほど短いゲームでもなく、 3D モデル、様々な景色のマップ、キャラクターの会話、オリジナルの仕様、ちょっとしたストーリー展開などの要素が含まれます。 「ゲームらしいゲームを 1 つ完成させた」と言っても、バチは当たらないでしょう。

僕は、ゲームを一本作ったときの実際のプロセスを知っています。
僕は、10 年前の僕にとっての「先人」たり得るわけです。
(なんだかトートロジーのようなことを言っているような気もしますが、まあいいでしょう)

僕はこの「ドアを開ける短いゲーム」を題材にして、その開発をどうやったかを、10 年前の僕に教えることにします。 僕はもう 10 年前には戻れませんが、これを書くことで、 あの頃の僕と同じような知識を求めている現在の人々を助けられるかもしれません。

10 年前の僕と、それと同様な立ち位置にいるみなさん、よいですか。
これは君が本当にゲームを作るまでの物語です。