【レビュー】ゼロからスタート!Unityゲーム開発1冊目の教科書|初心者が9日でアプリを作れた話

Unity完全初心者の僕が、この本をきっかけにホラー風ブロック崩し「ZOMBIE BREAKER」を9日間で作った体験談です。

本のレビューに加えて、つまずいたポイントと解決法も書いておくので、同じ本で勉強してる方の参考になれば。 この本をAmazonで見る

この本を選んだ理由

ゲーム開発の本は山ほどありますが、この本を選んだのは3つの理由があります。

1つ目は、1冊で3つのゲーム(ブロック崩し、クイズゲーム、モグラ叩き)が作れること。いきなり大きなRPGを作ろうとして挫折する…というのを避けたかったので、小さいゲームを複数作れる構成はありがたかったです。

2つ目は、著者のひろはすさんがYouTubeでもゲーム開発の動画を出していること。本だけだと分かりにくい操作も、動画を併用すれば理解しやすいだろうと思いました。

3つ目は、サンプルデータのダウンロードが付いていること。万が一コードが動かなくても、サンプルと比較して問題を見つけられるのは心強いです。

実際にやってみた

本の手順に従ってブロック崩しを作り、そこからホラー風にアレンジして「ZOMBIE BREAKER」というゲームを完成させました。

以下が9日間の流れです。

  • Day 1:本の通りにプロジェクト作成、パドルが動くところまで
  • Day 2:ボール、壁、ブロックを実装。スコア・ゲームオーバー・リトライまで完成
  • Day 3:Asepriteで自作ドット絵(ゾンビブロック)を描いて差し替え。背景もダーク仕様に
  • Day 4:ホラーBGM・効果音を追加
  • Day 5:パドル(バリケード)とボール(眼球)も自作ドット絵に
  • Day 6:タイトル画面作成、ステージ制(3面)を実装
  • Day 7:スペースキーで発射する仕組み、残機3のライフ制を追加
  • Day 8:AdMob広告組み込み、ストア素材(アイコン・スクショ・説明文)を準備
  • Day 9:ステージを全5面に拡張、操作説明テキスト追加

本の内容は2日目でほぼ終わりましたが、その後のアレンジで7日使いました。「本を終えてから自分の色を付ける」という流れが結果的にうまくいきました。

正直、Day 1の夜に「本の通りなのにエラーが出た」時は焦りましたが、原因が分かった瞬間の達成感は大きかったです。

良かった点

手順が丁寧で迷わない

スクリーンショット付きで「ここをクリック」「この数値を入力」と具体的に書いてあるので、Unity初心者でも迷子になりにくいです。

物理の仕組みが自然と身につく

ブロック崩しはRigidbody(物理演算)やCollider(当たり判定)を多用するので、Unityのゲーム開発で一番重要な物理周りの基礎が自然と身につきます。実際、本を終えた後のアレンジで「ここにはBoxCollider2Dを付けて…」と自分で考えられるようになっていました。

3つのゲームで段階的に学べる

ブロック崩しでUnityの基本操作と物理を学び、クイズゲームでUIの作り方を学び、モグラ叩きでタイマーやランダム処理を学ぶ、という段階的な構成が考えられています。

つまずいたポイントと解決法

Unity 6でInput Systemのエラーが出る

本の通りにPaddleControllerのコードを書いて再生したところ、以下のエラーが出ました。

InvalidOperationException: You are trying to read Input using the UnityEngine.Input class, but you have switched active Input handling to Input System package in Player Settings.

これは本で使われている書き方(Input.GetAxis)が「旧Input System」で、Unity 6.4のデフォルト設定が「新Input System」になっているために起きるエラーです。

解決方法は簡単で、両方使える設定に変更します。

  1. メニュー → Edit → Project Settings
  2. 左のリストから「Player」をクリック
  3. 下にスクロールして「Other Settings」を開く
  4. 「Active Input Handling」を「Both」に変更
  5. Unityが再起動される

これで本のコードがそのまま動くようになります。Unity 6.4でこの本を使っている方は、最初にこの設定を変えておくのがおすすめです。

FindObjectsOfTypeの警告

Unity 6.4ではFindObjectsOfTypeが非推奨になっており、黄色い警告が出ます。これはFindObjectsByTypeに書き換えれば消えますが、警告のままでも動作には影響ありません。初心者のうちは気にしなくて大丈夫です。多分

僕は直して無いです。

本を終えた後にやったこと

本のブロック崩しをベースに、以下のアレンジを加えました。全て本で学んだ知識の応用です。

  • Asepriteで自作ドット絵を作り、ブロック・パドル・ボールを差し替え
  • Unity Asset Storeのホラー音源パックでBGM・効果音を追加
  • タイトル画面を作成してシーン遷移を実装
  • 全5ステージ制に拡張
  • 残機3のライフ制を追加
  • HP制ブロック(2回当てないと壊れない硬いゾンビ)を実装
  • Google AdMobで広告を組み込み

「本の知識だけでここまでできるの?」と思うかもしれませんが、できます。足りない部分はネットで調べたり、AIに聞いたりすれば解決できました。大事なのは「基礎が分かっている状態で調べる」ことで、その基礎を作ってくれたのがこの本でした。

こんな人におすすめ

  • Unityを触ったことがない完全初心者
  • プログラミング経験がほとんどない人
  • 「勉強」より「完成」を目標にしたい人
  • スマホゲームを作ってリリースしてみたい人

逆に、Unityの基本操作が分かっている人や、もっと高度なゲーム(3Dアクション、オンラインゲーム等)を作りたい人には物足りないかもしれません。あくまで「1冊目」の名前通り、最初の一歩に最適な本です。

まとめ

この本のおかげで、9日間でゲームを1本完成させてApp Storeに申請するところまで来ることができました。

「1冊で完璧に覚えられるか」と聞かれたら、正直覚えられません。でもそれでいいんです。1冊目で「一度通った道」を作って、2本目のゲームを作るときに「あれ、これ前にやったな」と思い出しながら調べ直す。その繰り返しで定着していきます。

まず1本完成させたい人に、自信を持っておすすめできる1冊です。

この本をAmazonで見る

コメント

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