見出し画像

大学生が自作ゲームを1本作るまでに経験した数々の地獄のお話


初めまして。突然ですが、皆さん!

人生で1度はゲームクリエイターになりたい!と思ったことありますよね!

この記事は、大学2回生からゲーム作りを勉強し始め、実際にゲームを完成させるまでに経験した数々の地獄について書いています。

そんなことをわざわざ書いた理由は、最後にあります。

ゲームに限らず、今から何かを始める方に是非読んでいただきたい記事です。
ぜひ最後まで読んでやってください。

1.経済学部の地獄

「やりたい事がないから取り敢えず大学に入って将来の選択肢を増やします!」

これって高校生あるあるですよね。
高校生の自分に言いたいけど、大学生になったからやりたいことが見つかるわけではないぞ。

何も考えず入った経済学部。
当然、授業は退屈で、経済学部のおイキりになられている方々を見下したせいで、友達も出来ず、1年くらい軽い不登校になりました。

その時期にふと就活のことを考え、学部の人が行く就職先を見ると、銀行や証券が多く、周りは壊れたロボットのようにコンサルコンサルコンサル。
しかも皆、仕事内容に興味があるというより、年収や肩書きの話ばかり。
クソだ!と思いつつ、自分もやりたいことがない。

この頃から自分のやりたいことってなんだろうと考え始めました。

2.プログラミングの地獄

やりたい事と言われましてもなぁ、、、
と思いつつ、プログラマとかハッカーってカッコ良いと思い、プログラミングを勉強することにしました。

プログラミングの詳しい話なんて楽しくないので詳しく書きませんが、恐らく五回くらい挫折したと思います。

猫でも分かると書いてある本が分からず、猫に尊敬の念を抱いたり、環境の設定が上手くいかず、自分のPCプログラミング出来ないタイプだわと言いふらしたり、工学部の教授に実装ってどういう意味ですか!って聞きに行って滅茶苦茶貶されたりしました。

プログラミングをこれから学ぶ全ての人に言いたいことはこれです。

全部分からなくて良いから自分が使うとこから始めて下さい

これめちゃくちゃ重要です。
プログラミングは受験勉強と全く違い、
基礎からやって、全体を理解して〜
とか無理です!!!!!!
後、挫折して当たり前です。
後、Twitterの凄い人は見ない方が良いです。

そんなこんなでちょこっと書けるようになった時にPythonで2048というゲームを作ってみました。

自分がこう動け!と思った通りにゲームが動く気持ち良さを知って、ここからゲーム作りに興味を持ちました。

プログラミングを関数やクラスくらいまで勉強した後は、自分で考えて何か作ってみると面白いと思います。

3.PythonからC++の地獄

ここは、マニアックな章なので飛ばしてもらって構いません。プログラマは喜ぶかもしれないですね。

ゲームを作るならCを勉強したほうが良いと言われて、C++を勉強することにしました。

分かる人には分かると思いますが、PythonとC++は全く違います。Wii Sportsのボーリングと実際のボーリングくらい違います。

ポインタや変数の宣言といった訳の分からない単語が出てきます。
そして、環境構築でまた死にました。

プログラミング初学者の1番の敵は環境構築です。そして再び、私のPCはC++に対応していないと言いふらしました。

まだまだ書きたことだらけですが、割愛します。
今となっては、C++の方が読みやすくて好きです。

4.Unityの天国

ゲーム作ったことなくても名前くらいは聞いたことあるんじゃないでしょうか。
ざっくり言うとゲームを簡単に作れるツールです。

重力とか当たり判定とか物の配置とかあらゆることをやってくれます。
初めて触った時は感動しました。

Unityでは、C#を使うのですが、知らなくても書けます。キャラクターに力を加えたい!と思ったらその都度、書き方を調べれば良いです。そうです!

全部分からなくて良いから自分が使うとこから始めて下さい

ですね。
私の場合は、本の通りにゲームを作りながらコードの書き方を覚えました。

実際にキャラが動くのは、本当に楽しいです。
思ったように動く気持ちよさを味わえました。

5.インターンの地獄

この辺りで、せっかくなのでゲーム会社のインターンに参加することにしました。

作品好評会ということで1ヶ月くらいかけて、ゲームを作成し、締め切り3日前から徹夜して、こんな感じのゲームを作りました。

遊びのシステムもふわふわで、正直面白さも説明出来ない状態でした。(見た目より面白くないです。アイテムもボタンしか存在しないです。)
でも、自分がこんなの作った!って言う嬉しさで自信満々でインターンに参加しました。  

いざ発表。

まず僕の番です。
自信満々であったはずなのに、どこが面白いか、どうやって遊ぶのかを聞かれて殆ど答えられず、社員さんも困った様子でした。そして僕の番が終わり

次の人!
「日本ゲーム大賞の受賞作品なのですが、、、」

その次の人!
「韓国の大会に出した作品なのですが、、、」

さらに次の人!
「Wiiで動く作品なのですが、、、」

この辺りでもうメンタル死んでました。
めちゃくちゃ落ち込んみました。
あ、自分は全く違う土俵にいるんだって思いました。

そして最後の人!
「ごめんなさい、他の人の作品見て、自分は出すのやめようと思いました、、、」

おー同じ気持ちの人がいてくれた!と少し安心したのですが、社員さんがそれでも良いから見せてというと、確かにまだゲームとしては出来ていないものの、アイデアが天才的でした。

具体的には言えませんが、バズりそうなバカゲーかつ面白いアプリでした。

インターン終わった後、自分は技術力も無ければ、面白いアイデアも出せない。
クソだ終わりだ。と思いながらコンビニ飯で暴飲暴食を繰り返しました。

6.面白いアイデア出ない地獄

メンタルが復活し、いざゲームを作ろうと思ったのですが、一切手が動きませんでした。

これまでキャラが動くだけで満足していた自分が、面白くないなら作っても意味がないと思うようになりました。

インターンで見た、ゲーム専門大生や良いアイデアを持った学生のゲームが忘れられず、特にゲーム大賞の人の作品は、しょっちゅう思い出してYouTubeで見てました。

友達にも自慢げにこんな人と一緒にインターン受けたと言いふらしてました。
一番情けない時期。

ただ、インターンの悔しさのおかげでゲームジャム(短期間でゲームを作るイベント)やゲーム大賞、インディーゲームを調べまくり、面白いゲームをたくさん知ることができました。

そして、とにかく手を動かそうと、思いついたアイデアをデモステージにしていくことにしました。

以下に、ボツになったクソゲー(ほんの少し作ったものや全く作らなかったものも含む)を挙げさせていただきます。追悼。

・レーザーを避けて武器を運ぶゲーム
・矢印を動かして対戦するゲーム
・数字テトリス(面白そうだが作れなかった)
・戦車と洗車をかけたゲーム
・未来予知して攻撃を避けるゲーム(面白そうだが作れなかった)
・エスカレーターを逆走するゲーム(迷走)
・エレベーターをぴったし止めるゲーム
・画面外の足場や隠しブロックなど、ズルイやん!ってステージを集めたゲーム
・敵に倒されに行くゲーム
・MPもHPも全て1つのゲージで管理するゲーム
・キャラクターの大きさを変えるゲーム
・立体駐車場(どう遊ぶか決まらなかった)
・画面外がめちゃくちゃになってるゲーム
・虫になって人を誘導(既にあった)

色々作ったり作らなかったりしました。
ほとんど面白くなかったですね。
しかし!後に活きてきたゲームが2つあります。

・ステージが回転するゲーム
・透明な敵と戦って、後から再生してバカな動きを楽しむゲーム

後の章で出てきます!お楽しみに、、、

7.プログラミングの地獄 Part2

面白いゲーム作れないならプログラミング能力で勝負じゃ!と思いました。

結論から言うと間違いです。
技術で勝つのが世界一難しいです。

とにかく、エンジンに頼っちゃいかん!
重力も画面描写も自分でプログラミングするんじゃ!!!!と思って、こんな本を買いました。

マジで地獄でした。
今までのプログラミングお遊びだったんだなって思いました。
ポインタとか継承とか二進数とかしっかり理解していなとついていけないです。

今となっては、この時の知識が物凄く活きていて、困った時に応用が効くようになりましたが、初心者がこの本で挫折はして欲しくないです。

ある程度余裕があって、ゆったり勉強出来る人には物凄くオススメです。

ちなみに、分からなすぎて、机100回は叩きましたし、分かるかボケェってベランダで叫びましたし、もうお前なんか知らん!って言って快活クラブ(漫画喫茶)に泊まりに行きましたし、分からない自分に悲しくなって深夜に自転車で金閣寺まで行きましたし、鍵垢作って俺には何もないんだってツイートしましたし、マクドナルドで暴飲暴食繰り返して、15kg太りました。

8.自作ゲームの地獄

せっかく本で勉強したし、エンジン使わずにゲーム作るぞ!と思い、「ステージが回転するゲーム」を作りました。

作りました。ってたった6文字ですけど、本当にキツかったです。まず、エラーが出るわけですよね。それが、僕が書いたとこじゃない標準ライブラリに赤線が引かれるわけですよ。つまり、エラーを引き起こしている場所がわからないわけです。

スマホ無くして、位置情報見たら海を指してたみたいな感じです。(違う気がする)
これが大体1日に10回は起きます。

優秀な人は、違うかもしれませんが、僕の場合は大抵思ったように動かず、その原因を探るのが作業時間の70%くらいでした。

途中、本当に頭わけわかんなくなって、エディタ画面の色変えたり、文字のサイズ変えたりしてニヤニヤしたり、快活クラブに泊まりに行ったり、銀閣寺に行こうとして道に迷ったり、2時間半かけて姫路の友達の家に突撃したり、鳥貴族で暴飲暴食を繰り返したりしました。
(ちなみに姫路の友達に、家に入れるの嫌と断られ、1時間歩いて快活に泊まりました。)

結果出来たゲームがこちら。

絵は友達が描いてくれました。
右下の猫がプレイヤーです。

しんどかったことばかり書きましたが、エンジンを使わずに書くと、より達成感を得られます。

例えば、メニューからステージ選択まで自分で遷移の仕組みを考えますし、これは僕が無知だったからですが、ステージを作成してセーブする時に、ステージ名を入力するテキストボックスも自作しました。

絶対間違ったやり方だろうなと思いつつ、誰も思い付かないような方法で実装して、上手く動いた時、本当に嬉しいです。
自分天才だ!って思います。
(そして大体30分後にはエラーにブチ切れてます。)

ただやっぱり当たり判定が怪しかったりと、ゲームとしてリリースするクオリティにはなりませんでした。

9.Unreal Engineの天国

時期は、やや前後しますがUnreal Engine(以下、UE4)と出逢います。これは、Unity同様ゲームエンジンなのですが、僕はある動画を見て感動し、このエンジンを使い始めました。それがこちら。

今でも鳥肌が立ちます。
こんなに美しくてワクワクする世界を作れるのか!と思いました。

そして、久しぶりに純粋にゲームを作りたい気持ちを思い出しました。
このワクワクする世界を作りたい!

そしてエンジンの勉強を始めました。
「猫でも分かるUE4」という動画が非常に分かりやすいので、オススメです。
こちらは本当に猫でも分かるタイプです。
C++の本と違って!!!!(最近読み直したらめっちゃ分かりやすかった)

UE4は一切プログラミングが出来なくても、ゲームが作れます。ブループリントという誰でも分かるものを使ってキャラを動かしたり、ギミックを作ったりできます。ちなみに、僕の作ったゲームも一回もコード書いてないです。

純粋にゲーム作りをするのであれば、本当にオススメです。
自分の作りたいものを実現することができます。
宣伝ではないです。

とにかく、エンジン無し時代の反動もあってとても楽しかったです。
そして、ステージが回転するゲームと違って、エンジンを使うからには絶対面白いものを作ろう、技術力とか忘れて、本当に面白さだけにこだわろうと思いました。

そこで、「透明な敵と戦って、後から再生してバカな動きを楽しむゲーム」を思い出しました。

自分の動きを再生するのが面白かったので、これを逆再生にして逆再生の自分と協力するゲームを作ろう!と思いました。

10.自作ゲームの地獄Part2

地獄とは書いてますが、正直ここまでのゲーム作りでダントツで楽しかったです。

自分で自信を持って面白いと思えるものを作っていたことと、エンジンによって実装が簡単であったことのおかげだと思います。

ただしんどかったことがいくつかあります。

1.Twitterの化け物開発者からくる劣等感
2.セーブやパッケージ化などリリースするためにやらないといけないこと

1はもうどの世界でもですね。絵師さんの世界とかよく聞きますよね。本当に凄い人は凄いです。見ない方が良いです。Qiita書いてる人も天才です。彼らは人生5周目くらいです。感謝して1周目の私たちに教えてもらいましょう。

2は割と多くの人の挫折の原因だと思います。
同じゲーム作りでも、適当に作るのときちんと一本完成させるのじゃ全く違います。同じパスタ作るのでも、ソース買ってくるか1から作るか、くらいの差があります。

他にもビジュアル面整える必要があったり、モデリングを考える必要があったりします。

それでも本当に楽しかったです。

全てを勉強しなくて良い
作るのに必要な部分だけ調べる
自分が面白いと思うものを作った
バカ売れして有名になることを想像してた

が楽しかった要因かなと思います。
ゲームの設計に関しては、ディレクターの講演の記事読み漁ったり、ゲームを分析しているYoutuberの動画全て観たり、テストプレイめちゃくちゃお願いしたりしました。

11.面白くない気がしてきた地獄

途中、これ面白くないんじゃね病にかかりました。
後に知るのですが、これはゲーム開発者あるあるみたいです。

ただとにかく完成を目指したおかげで何とか助かりました。あと、第三者の目線です。
友達数人に体験版配ったりして、感想を聞いてました。皆優しいので面白いと言ってくれます。
その言葉を信じて作り続けました。

ちなみに最後の方は、熱中しすぎて大学のテスト全て飛ばしました。単位全部落としました!
大好き!経済学部!!!

12.ゲーム遊んでもらえた天国

そんなこんなで、なんとか完成してTwitterで公開したのがこちら。


自慢ではないですが、3742RTされました。3742RTされました。全然自慢じゃないです。語呂合わせは、さなよに。

冗談は置いといて、本当に嬉しかったです。
テストプレイしてくれた友達に電話かけまくりました。

いやいやなんだよ、苦労したけど成功したって話ね、はいはい。

って思われたそこのあなた。そんなことが言いたいわけじゃないんです。

13.言いたいこと

私はゲームを作り始めた時に、こういうバズってる人を見て、
「あー凄い凄い、こういう人は別格だから」
って思ってました。

でも、実際はこんなに挫折しまくってますし、今も「やり方わかんねぇわボケ!」ってツイートしながら毎日ゲーム作ってます。

もしこれからゲームを作りたい、ゲーム業界に行きたいと思っている人に
「なんだ、やっぱり皆挫折するものなのね」
「最初は面白くないもの作って当たり前なのね」
って思って欲しくて書きました。

自分がゲームを作り始めた時に、一番知りたかったことは、分かんなくて良い、って事です。
これを理解出来なかったせいで、ゲーム作りを何度も辞めかけました。

私と同じ理由で挫折した人がこの記事を見て、気持ちが楽になってくれると嬉しいです。

私はたった一本ゲームを完成させただけです。Twitterの他の開発者さんに、偉そうにしてるとか思われたら嫌なので、自分なんて凄くないってすぐ言います。

でもそれは自分が過去に苦しめられた言葉です。
自分より凄い人たちがこれくらい当たり前って顔してるから、「皆出来て当たり前なんだ、自分は向いてないんだ」と思ったんです。

だから私は敢えて言います!
自分がゲーム一本完成させたことは、めちゃくちゃ凄いことです!
そして、なによりめちゃくちゃ大変でした!
分からないことだらけでした!

これからゲームを使る人には、分からなくて当たり前なんだと思って欲しいです。
出来たら凄い!って精神でやって欲しいです。
是非たくさん挫折して下さい!

以上!
ゲーム一本作るまでに経験した数々の地獄のお話でした!

この記事が気に入ったらサポートをしてみませんか?