【ゲーム制作010】テックアカデミーの9~17週目:卒業課題!オリジナルゲームをつくる -前編-

ゲーム制作

ご覧になっていただきありがとうございます。「ひさよろ」です。

“ありたい自分” で人生を楽しむ大人を増やす
という理念のもと、コーチングを使って
日本人が大志を抱けるゲームをつくる

私は上記のような夢を持ち、会社員ながら完全未経験の『ゲーム制作』と『コーチング』を掛け合わせた活動を行っています。

オンラインスクール「TechAcademy(以下、テクアカ)」Unityコースでの学習状況紹介の続きです。

4か月プランの半分ほどの時点で、Lesson7(全9個)までを終えました。ゲーム作りの基本的な学習は終わり。Lesson8は小技的な内容なのでササッと終わらせ、最後のLesson9「オリジナルのゲームアプリを開発しよう」に取組みます。

先に言ってしまうと「車を走らせるコースをつくるゲーム」をつくりました。これから2つの記事に分けて

  1. なぜその題材を選んだか
  2. 最初に考えた構想と卒業のために妥協したこと
  3. ゲームプロジェクトの構成【今回はここまで】
  4. 苦労・工夫したこと
  5. 今後のアップデート内容(いつの日か)

をご紹介いたします。大したゲームではないですし、初心者丸出しな部分が多いですが、自分の頭の整理と記録のためにも記事にしておきます。どうぞお付き合いください。

↓リンク先の記事からプレイすることができます。よろしければどうぞ。

人生で最初につくったゲーム「Car Course Creator」

せっかくなのでテクアカも宣伝しておきます。ゲーム制作を始めたい人はこちらで学んでみては?

Unityコース
Unityを選抜された現役エンジニアから自宅で学べる。パーソナルメンターがマンツーマンで学習サポート。

オリジナルゲームの題材

卒業課題が「オリジナルゲーム開発」ということは最初から分かっていたので、前半のLessonに取組みながら何となくアイデアを考えていました。いきなり難しい・大規模なゲームをつくるのは、スキルや時間が不足し過ぎています。これまでのLessonで学んできたことを上手く使い、ちょうどよいゲームはないかなぁ、、、と。

みなさんだったら、どんなゲームにしますか?

悩みましたが、すでにお伝えした通り「車を走らせるコースをつくるゲーム」に決めました。

なぜか?はい、直感です。

別に私は車が好きというわけではなく、子どもと家で遊んでいる時にビビびっ!と思いつきました。

↓のおもちゃで遊んでいた時です。

おもちゃ屋さんに行けば類似の物が見つかると思います。

特徴として、コースの元となる「緑色の細いパーツ」をつなげ、背骨みたいにクネっと自由に曲げることができます。そして、坂道や橋のような大物パーツも組み合わせると自由度の高いコースを作ることができます。その上に電池で走る車を置くと、ミニ四駆のようにコースを周回するというわけです。

いかにも子ども向けで単純なおもちゃ。しかし日々の仕事に疲れた私には、休みなく走る車をボーっ眺めているのがとても心地よい。。。ちょっと手を動かして、後はこんな風にボーっと眺める時間ってのもいいなぁ。。。

そうだ!これをゲームにしよう!ゲームなら客観視点だけじゃなく、運転席からの主観視点でも楽しめるはず!

そんな感じで、ゲームの題材を決めました。

ゲームの構想〜卒業するための妥協

では早速Unityを起動して、、、とはせず、まずはどんな感じでゲーム化するかを考えてみました。「ゲーム画面」「コースをつくるためのパーツの接続方法」「必要なスクリプト」はどんな感じにしようか。

やはり、例のおもちゃを再現するには、細かいパーツを背骨のようにつなげてクネクネ動かせることが肝です。

最初に考えたゲームの構想

↑みたいにイメージを描くだけなら簡単ですね。しかし、制作にとりかかるとすぐに気がつきます、、、この「背骨クネクネ」機能は(私には)ムズ過ぎる。

なので、パーツ接続機能は後回しにして他の機能をつくりながら悩んだ末、最終的に「背骨クネクネ」は諦めました。テクアカを卒業するためには、ある程度ゲームの形として完成させなければならないからです。

また、いろんなパーツをつくろうとすると時間が足りません(モデルつくるだけでも四苦八苦)。なので、パーツは直線とカーブ、それぞれ大小の4種類のみとしました。

最終的に完成したゲームは、「↑で紹介したおもちゃ」というか、「プラレール」を再現した感じですね。。。ちょっと特徴がないなぁ。

しかし、作品づくりにおいては、完璧を求め過ぎず時間内に完成させることも大事です。妥協も大事!

ゲームプロジェクトの構成

Unityではゲームを動かすために必要なすべてのデータをひとまとめにしたものを「プロジェクト」と呼びます。ざっくりですが、どんな風に構成されているのかを説明します。

Sceneについて

まずはSceneです。

TitleScene

タイトル画面ですね。ここには「ゲーム本番への移動ボタン」「サンプルゲームへの移動ボタン」あとは、よくある「何年にリリースしたか」「制作者名」を表示しています。

GameScene

ゲーム本編の画面。ここにシステムの全てを組み込んでいます。全体像は↓な感じです。

Sample

あらかじめ準備したコースで操作を試してもらうための画面。こういう優しさがゲームには必要ですよね(チュートリアル的にはできませんでしたが)。木や岩といった飾りオブジェクトも設置できるようにするつもりでしたが、時間の都合で本編では割愛となりました。。。

Prefab(オブジェクト)について

1つの車と、4つのコース用パーツのPrefabをつくりました。Prefabとは同じオブジェクトを複数呼び出したいときに便利なテンプレートのようなものです。

直線パーツはCubeオブジェクトの組合せで、曲線パーツはProbuilderのArchを使って作成しました。最初はProbuilderの操作がよくわからず苦戦したので、こんな簡単な形状のパーツでも愛着がものすごくわきます。

車はテクアカLesson6でも使った「Cartoon Car – Free」という無料アセットを使いました。場面に不似合いな乗用車なので今後のアップデートに期待?

スクリプト(コード)について

↓のようなスクリプトを準備しました。

色々と苦労や試行錯誤の末にたどりついたコードで、初心者感丸出しなものも多いと思います。その辺の苦労は後編で。しかしながら、生成AI(私はCopilotを使用)はすごいな。なかったらスクリプト書けんよ。本当にありがとうございました。

というわけで

テクアカの卒業課題でつくったゲームの紹介をしてきました。この記事を書きながら自分がやってきたことを振り返れて良かったです。次回は後編として、「工夫・苦労したこと」と「今後アップデートしたいこと」を紹介します。お楽しみに。

というわけで最後にいつもの、

みんなだんばれ!!

頑なに張るの「がんばる」ではなく、
弾むように張るの「だんばる」で、
一緒に人生を楽しみませんか?

最後までご覧になってくださったあなた、ぜひぜひX(旧Twitter)で交流しましょう!ゲーム制作をしていない方もウェルカムです。人生や働くことを楽しむために、日々くだらないことをつぶやいています。

以上です。

コメント

タイトルとURLをコピーしました