ゲームに限らず、プログラマーなら個人ゲーム開発者になれます。それは私がなっているからです。サンプル数が1とはいえ、「なれる」「なれない」論に決着をつけるなら、「なれる」です。
しかし、皆さんは本当はそんなことが知りたいわけではないと思います。
きっと知りたいのは「プログラマーだけど、独立してゲーム開発をするためには、どんな困難が待ち受けていて、自分にはそれが耐えられるのか?」なんだと思います。
そこで、この記事では、ゲーム会社に勤めたことのないプログラマーである私が、プログラムしかできない人間が個人ゲーム開発者になることはどういうことなのかを解説します。主に、プログラムができることが、ゲーム開発にとって、どういうメリット・デメリットがあるかを紹介します。
ゲーム開発におけるプログラムができることのメリット
私が考えるプログラミングができる人のゲーム開発におけるメリットは次の3つです。
- 面白さを追求することができる。
- ゲームエンジンに慣れやすい。
- プログラム資産の流用ができる。
詳しく解説します。
面白さを追求することができる
1つ目のメリットは、思い通りの動きを実装することができることだと思います。
最近ではビジュアルスクリプティング、ノーコードなんてのが浸透してきましたが、結局は1から理解してプログラムを組める人間には勝てません。簡単なゲームや、決まり切った動きをするだけのゲームを作るなら、プログラムができなくても大丈夫ですが、おそらくあなたが作りたいと思っているゲームの面白さを追求していくなら、細かなプログラムの制御が必要になってきます。そんな時に、プログラミングができるのか、できないのか、が大きく響いてくるでしょう。
ゲームエンジンに慣れやすい
2つ目のメリットは、UnityやUnreal Engineなどのゲームエンジンに慣れやすことです。
最近のゲーム開発でこれらのゲームエンジンを使わずに開発することは、ほぼありません。そのためゲームエンジンを使いこなせるかどうかは、ゲーム開発にとって大きな要因となってきます。
この点、ゲームエンジンとプログラムは密接な関係にあるため、プログラムができるとゲームエンジンに早く慣れることができます。また、ゲームエンジンのエディタ機能を拡張したり、他の開発者のソースコードを読むことができたりと、ゲーム開発におけるプラスの要因があります。
プログラム資産の流用ができる
3つ目のメリットが、プログラム資産を流用することができるということです。
ゲーム開発において、プログラミングは半分ぐらいの工数を占めます。そのためプログラミングの開発工数を小さくすることは、ゲーム開発者にとって、死活問題とも言えます。そのため可能な限りプログラムは流用したいところです。
そう考えた時、ちゃんと保守性の高いプログラムが組めるかどうか、同ジャンルの他のゲームに流用しやすいプログラムが組めるか、は重要になってきます。
そしてそれができるのは、習熟したプログラミングスキルを持った、プログラマーなわけですね。このメリットは表層には現れにくいですが、非常に大きなメリットと言えるでしょう。
プログラムしかできないことのデメリット
さて、次にプログラムしかできないことで発生するデメリットについて説明します。主に次の3点でデメリットを感じることになるでしょう。
- 思い通りの見た目のゲームにならずに悶々とする。
- 理詰めではない問題への解決で苦しむ。
- 難しいロジックにチャレンジしがち。
それでは、解説していきます。
思い通りの見た目のゲームにならずに悶々とする
1つ目のデメリットは、グラフィック関係で、思い通りの見た目にすることができず、「これでいいのか?」と悶々とすることです。
グラフィックについては無料・有料問わず、数々の素材が世の中に存在します。この素材をうまく組み合わせれば、ゲームはできてしまいますが、正直、この戦略はうまくありません。
なぜなら、世の中の素材をかき集めた場合、ゲーム内のグラフィックについての統一感がなくなってしまいます。特に2Dの場合、製作者ごとにテイストが違うので、組み合わせても違和感のある世界観の画面ができてしまいます。とはいえ、一人の製作者だけでは自分が作りたいゲームの素材が足りません。
じゃあ、どうするかというと、自分で作るしかないわけですが、3Dモデルもドット絵も描いたことがないので、「さて、どうしよう」と頭を抱えることになりますが、なんとかするしかないわけですね。
理詰めではない問題への解決で苦しむ
2つ目のデメリットは、理屈では答えが出ないような問題に直面した時に、ストレスを感じることです。
プログラミングはコーディングスタイルはあるものの、インプットとアウトプットを決めれば、ロジカルに組むことができます。これに慣れていると、全ての問題を理詰めで解こうとしてしまいます。
そんな中、ゲーム開発では、グラフィックの良し悪し、ゲームの面白さ、SEの有無など、UIデザイン、など、ユーザーの直感に作用する問題が山積しています。これらを解決するには経験が必要になってきますが、プログラムしかできない(やってこなかった)場合、その経験がなく、「さて、どうしよう」と苦しむことになるでしょう。
難しいロジックにチャレンジしがち
3つ目のデメリットは、プログラミングができてしまうが故に、高度なロジックへチャレンジしてしまいがちというのがあります。
他のゲームと差別化を図るために必要なロジックなら、チャレンジしてもいいのですが、あまり関係のない部分で「こだわり」を入れてしまうことがあります。その結果、ゲームの面白さとは関係のない部分で工数をかけてしまうことになり、ゲーム開発全体を見た時に「無駄な作業」をしてしまうことにつながります。
複雑なロジックを使った面白くないゲームより、簡単なロジックの面白いゲームを作るのがいいのですが、よりベターなコーデイングが頭に思い浮かぶと、ついつい、そちらに走ってしまうのは、プログラマーの性でしょう。
個人ゲーム開発者になるには覚悟が必要
プログラマーが個人ゲーム開発者になることについて、メリットとデメリットを挙げましたが、これらを勘案した時、あなたはゲーム開発者になりますか?
おそらくこの質問に対して、この場で答えは出せないと思います。
しかし、どれだけ悩んでも、最終的には覚悟を持たないと個人ゲーム開発者にはなれません。
ここでいう覚悟とは「暗闇の中を走る覚悟」です。
デメリットの2つ目のところで話したように、答えのない問題をひたすら解き続けるのが、ゲーム開発の苦しいところです。
- どんなジャンルのゲームを作る?
- どんなゲームが売れる?
- 自分が面白いと思っているゲームは本当に面白い?
- グラフィックはどうしよう?
- サウンドはどうしよう?
- ゲームの雰囲気は?テーマは?ストーリーは作る?でもボリュームが・・・
こんなのは、ほんのひと握りです。砂浜で砂を摘んだ程度の量です。
悩みは膨大、選択肢は無限大、どれが正解でどれが間違いかなんてわからない。そんな暗闇であっても、駆け抜けなければなりません。恐る恐る歩いているようでは、ゲームをリリースする前に足が止まってしまいます。しかも、走り切った後に待ち受けるのは、完走者への賛辞とは限らず、無慈悲なユーザーによる酷評かもしれません。
そういう意味で、どんどん湧いてくる答えのない問題に無理矢理でも答えを出しながら、暗闇を駆け抜ける覚悟が必要となってきます。これはプログラマーに限らず、グラフィッカーでも、サウンドクリエイターでも、プランナーでも、何もできない人でも、同じことです。
それでも、あなたがゲームを作りきり、人目に晒すことができれば、個人ゲーム開発者になれます。
実は、今、あなたが何をできるかは関係ありません。問われているのは、あなたの覚悟だけです。
さあ、あなたは暗闇を走りきれますか?