[Unity本 紹介] Unityの寺子屋 定番スマホゲーム開発入門

Unityの寺子屋 定番スマホゲーム開発入門
「 Unityの寺子屋 定番スマホゲーム開発入門 」は「UnityではじめるC# 基礎編」の姉妹本となる、いたのくまんぼう氏と大槻有一郎氏によるUnity本である。基礎編に収録されているC#の基本などの要素は無く、ゲームを作ることに特化した内容となっている。
けっして本作がダメなわけではないのだが、個人的な満足度は前作 「UnityではじめるC# 基礎編」 の方が高かった。基本的なことの説明が省かれている部分もあり、この本からいきなりUnityに初挑戦というのは少しハードルが上がる気がした。逆に分からない部分を自分で調べて解決できるような方には、少し物足りない印象を持たれるかもしれない。
欲を言えば、本作と前作を合本したものがあればUnityの入門書としてベストなものができたのではないかと思う。しかし決してオススメできない内容の本ではない。あえて重箱の隅をつつくようなことを言うとすればの話だ。金銭的に余裕があるのなら2冊あわせて購入してもいいと思うし、金銭的に余裕がないとか本選びにできるだけ失敗したくないという方には前作がオススメというだけである。
本の内容をChapterごとに紹介
この本の内容をイメージできるように、問題のない範囲で各 Chapterごとに内容を簡単に紹介したい
Chapter 1 Unityの基本を身に付けよう
Unityのインストール方法が簡単に説明されているが、インストールに関しては最新情報をネットで見ながらするほうがいい。Unityに限ったことではなく、開発ソフトは頻繁にアップデートされるので本の情報はすぐに古くなってしまう。
Unityのプロジェクトの構成(シーン、オブジェクト、コンポーネント)の簡単な説明。実際のエディタ画面のごく簡単な説明。さっそくプロジェクトをたちあげてオブジェクトをいじってみる。ほんとうにさらっと触れるだけで一から十までの丁寧な説明はない。確認程度の操作説明。
C#スクリプトを使ってのオブジェクトの制御をやってみる。C#についての説明は無いので、ある程度はC#もしくは他のプログラミング言語を使ったことがないと理解するのが難しいと思う。各種のイベント(スタート時の処理やフレームごとの処理等)がUnityのシステムによって管理されC#のスクリプトを記述することで制御できることを簡単に確認。
オブジェクトを配置してC#で動かしてみるという肩慣らし的な内容。決して難しい内容ではないが、UnityもC#も触ったことのないガチの初心者にはこの内容でもちょっと厳しいかもしれない。
Chapter 2 放置ゲームをつくろう
放置ゲームの説明。ここで作成したゲームを土台にしてクッキークリッカーに改造する。スマートフォンでのプレイを想定した設定でプロジェクトをたちあげる。画面のサイズや基本的なフォルダの構成など、初期の設定を詳しく説明してくれる。
本の解説どおりに画像を配置して設定していけばゲーム画面が出来上がるが、次から次へと操作と解説が登場するのでけっこう大変。初心者が一度に受け止められる情報量ではないので、多少混乱してもあせらずゆっくり確かめながら配置してゆくのがいいと思う。
画面が出来上がったら集めてゆくオーブを作成してゆく。重力や当たり判定を調整してオーブ同士が重ならないように設定する。C#スクリプトで一定の時間でオーブを自動生成したりタッチで集められるようにする。タッチ後はスコアを更新してオーブが消える処理をする。最後はスコアの上昇でお寺がレベルアップする仕組みを導入する。
本に書いてあるとおりにC#のスクリプトを書けばゲームの基礎は完成する。だがスクリプトの内容は完全に初心者置いてきぼりだ。「なんか分からないけど本を写したら動きました」状態になることは確実だろう。そこそこ実用的なゲームを作るとなると内容の複雑化はしょうがないとは思うが。
Chapter 3 放置ゲームに演出を加えよう
前Chapterで作成したゲームに演出を加えてもう少しリッチなゲームに仕上げる。効果音やBGMをつけたり、アニメーションやレベルアップの演出など、「らしい」ゲームへと磨いてゆく。
フリーで入手できる音楽サイトやUnityのアセットストアの使い方を紹介してくれている。個人で開発する者にはありがたい情報である。キャラクターが動いたり音が出たりするだけで印象がかなりアップするのを体験できる。
最後にデータの保存についての説明。「PlayerPrefs」という機能を使ってゲーム内のデータを保存する。これを使うことによってゲームを中断しても続きからプレイすることができる。 「PlayerPrefs」 で時間を記録する方法も説明されている。
Chapter 4 クッキークリッカーに改造しよう
放置ゲームを改造してクッキークリッカーに改造する。クッキークリッカーとは、最初はクリックしてクッキーを焼いていき、そのクッキーを消費してさらに効率的にクッキーを焼く。中毒性のある不思議なゲームだ。日本語版もあるので興味のある方はここで遊んでみるといいだろう。
オーブの発生を自然発生から画面タップで発生に変える。発生したオーブが自動的にお寺に飛んでいく。放置ゲームと共通する部分は流用して、変更する部分だけを改造していく。いきあたりばったりではなく、差分をきちんと把握してから変更を加えてゆく。
前Chapterで導入した時間の記録を利用して、前回のゲーム終了時から次回復帰時の時間経過でオーブが発生するようにする。タップによって発生するオーブやレベルアップに必要なオーブの数を調整。タップ中心でゲームが進行しやすくなるゲームに調整する。
調整次第でゲーム性が変わることや、ゲームを遊んでいない時間でもゲームが進行しているように感じさせることができるということを学べる。スマホゲームを作りたい者にとっては興味のそそられる内容だと思う。
Chapter 5 サイドビューアクションをつくろう
横画面のジャンプアクションゲームを作る。スマホ用に左右ボタンとジャンプボタンを配置して、画面だけで遊べるように作る。敵を踏んで倒す、オーブを取るとスコアが増える、ゴールまで到達するとゲームクリア。単純なゲームだが、スマホでは操作が難しいので難易度を低めに作ることが大切。
マップの効率的な作成方法を詳しく説明している。ブロックをつなげたり消したりして効率的にマップを構成してゆく。頭ではわかっていても、実際にUnityの画面上で配置してゆくのには覚えておくべきことが多い。
キャラクターを物理演算(Rigidbody2D)で動かす。ここで Rigidbody2D の設定項目が詳しく解説されている。細かい当たり判定の設定や調整をして走ってジャンプできるキャラクターに仕上げる。意外と作業量が多いのだが、おそらくイメージどおりの動きにはならないだろう。市販のゲームにおける”気持ちいい操作感”がいかに細かい調整の積み重ねで実現されているか実感できる。
画面に判定を導入して”落ちたらゲームオーバー”にする。ゴールにも判定をつけて”当たったらゲームクリア”にする。基本的にはどちらも同じような仕組みで実現させる。うまく実装して遊んでみると、これだけでも達成感があり楽しい。
罠と敵とオーブの設置。基本的にはどちらも触ればゲームオーバー。しかし敵は踏んだときには敵が死亡しなければならない。その実現方法を詳しく解説してくれる。オーブは取ればスコアに変換される。どれもプレイヤーキャラとの接触判定でイベントが起こる。よくある横画面のだが、作るとなると思っているより複雑で大変だ。
Chapter 6 サイドビューアクションを仕上げる
ゲームをより豪華にするためにキャラクターにアニメーションをつける。クッキークリッカーでつけたアニメーションよりも複雑なアニメーションをコントロールする。歩く、ジャンプ、ダメージなどのモーション設定し、場面ごとにスクリプトで切り替える方法を学ぶ。
クッキークリッカーで使用したアニメーションのアセットを利用する。アセットはプロジェクトごとにインストールしなくてはいけないので、もう一度アセットをインストールする。アニメーションの設定はやや複雑に感じるが、キャラクターが魅力的に生き生きと動くので、ぜひ自分のものにすべき操作だ。BGMや効果音をつけてさらにゲームらしくなる。
ステージの構成やタイトル画面からの画面の切り替えを設定する。ステージ選択の画面は 「UnityではじめるC# 基礎編」からの流用。 サンプルファイルから読み込ませるということになっているが、このあたりはきちんと作り方を記載してほしかった。セッティングでシーンを並べて”タイトル→ステージ選択→ゲーム画面”と画面が切り替わるようにスクリプトを書く。
スタートからゲームオーバーまでひととおりパッケージングしたゲームが完成する。おまけで横スクロールするように改造できるスクリプトが載っている。ステージを横にのばして横画面のゲームから横スクロールのゲームに発展させられる。ゲーム製作としてはステージを作成するここからが本番といえる。
Chapter 7 アプリ販売の寺子屋
地味ではあるが、この本の最大の目玉といえるChapterである。自分が作ったゲームをどうやってマネタイズするのか。どうやってみんなに知ってもらうのか。少し前の時代の話だが今でも通用するような提案がぎっしりと詰まっている。ゲーム内における広告の種類や表示のタイミングなど、プレイヤーに不快感をできるだけ与えず利益を得るのかという話も面白い。
課金や買い切りでお金を得ることができればそれが最高だが、多くのゲームがストアに並ぶなかで自分のゲームを選んでもらうのは至難の業である。実際にゲームでお金を稼いでいる人の考え方や方法論を読めるのは貴重だと思う。ゆくゆくはゲームでお金を稼ぎたいと思っている者にとっては、ぜひとも読んでおいて損はない内容が書いてある。
感想
初心者が読みこなすにはちょっと難しい内容だし、2冊めに購入するには「UnityではじめるC# 基礎編」の続編感が強い。私としてはどうにもおすすめしにくい。「UnityではじめるC# 基礎編」から入った方なら買っても後悔しないのでは?といった感じだ。ただ「Chapter 7」に関しては、初心者向けの他の書籍ではあまり見かけない内容だったのでよかった。
出来上がるゲームは音も入って演出も凝った脱初心者っぽいゲームが出来上がる。ただゲーム自体の面白さは自分で工夫しなくてはいけない。ジャンプを調整したりステージの配置を考えたり。そのあたりは読者の意欲にまかされている感じなので、手取り足取り教えてもらいたいという需要には答えてくれない。
「UnityではじめるC# 基礎編」 と 「 Unityの寺子屋 定番スマホゲーム開発入門 」 をセットで1冊の本と考えれば、初心者向けとしておすすめできる教則本だと思う。買って損するような本ではないのだが、単体ではおすすめしにくい本だ。別の書籍で基礎は大丈夫という方にとっては、もう1本くらいゲームが収録されていればとても満足できる内容になったのでは?と思う。