Unity のメモ in Windows そして伝説へ…

Unity の学習も、ついに猫本最終章。

最終章は、レベルデザインを取り扱っている。ので、Unity の使い方についての説明は比較的少なめ。

  • Light の明るさを変更するには、Inspector→Light→Intensity を変更する。デフォルトは 1。
  • 影の輪郭がどの程度正確になるか (どの程度ジャギるか) は、設定による。メニューから Edit→Project Settings を選択し、Quality→Shadow Distance の数値を下げると、プロジェクト全体で、(影から) 近い物体の影のみ描画するようになる代わりに解像度を上げることができる。
  • Physics.Raycast() を使うと、レイが何か (Collider) にぶつかった座標を得ることができる。
  • Unity の Physics で当たり判定を行うには、双方のオブジェクトに Collider がアタッチされていることに加え、少なくとも一方は Rigidbody もアタッチされている必要がある。
  • オブジェクトにタグを付けることができるが、Unity の場合は Edit→Project Settings→Tags and Layers からあらかじめタグを登録した上で、Inspector→Tag で設定する。コード上からは gameObject.tag で string として取得できる。

この章で繰り返しアピールされていたのは、技術よりも、遊んで面白いゲームを作っていくことが大事、という点。 もちろん、技術はどうでもいいというわけではないけど、技術を習得することに夢中になって、ゲームを作ること自体がおろそかになると本末転倒ですよ、と。 確かに。

猫本の感想

この本を読み始めたのが 4/13 で、今日が 4/21。おおよそ 1 日に 1 章ペースで進んだ。1 章あたりの所要時間は 1~2 時間くらいだろうか。

僕は C# は多少経験があったので、2 章はほぼまるごと読み飛ばしている。3 章以降に出てくるコードは難しいことをやっているわけではないけど、プログラミング自体が初めての人だったら、理解にもっと時間がかかるかもしれない。

よかった点として、

  • 手順の説明が初心者にやさしい。前の章と同じことをやるのであっても、再度説明してくれるので、いちいち前の章の該当ページを探して疲れる必要はない。
  • 制作にあたっての考え方 (設計方針、作業フロー) が最初から一貫している。最初の方の章ではそのうち一部が「このゲームにはない」という扱いなんだけど、最初から全体像が理解できるので、次の章に進んでも違和感がないし、同じ流れを何度も繰り返すことで、ちゃんと練習になる。
  • 画像やモデルを配置していくときに、必ず数値で座標やサイズを教えてくれるので、その通りに入力すればお手本ときっちり同じになる。これがもしイラストを見ながらマウスで同じように頑張って配置、だと、同じようにしたつもりが説明通りの表示にならず、直し方もわからないので挫折、ということが起きそう。必要な画像や 3D モデルなどの素材が公式サイトからまとめてダウンロードできる点も、同様に手順の再現性を高めている。

他の書籍と見比べたわけでないので、あくまで絶対評価でだけど、とてもわかりやすかった。

本書で得られなかった部分としては、

  • 上にもメモした通り、本書のスタンスは、技術を高めようとしてゲームがエターナるよりは、下手でも面白さを追求してゲームをどんどん作っていこうよ、というもの。だからあえてだと思うけど、本書で学んだ後に、さらに知識を得るにはどうしたらいいか、という説明はまったくない。アセットとはみたいな説明もないし、本書で説明されたようなゲーム以外を作ろうとしたときに、いったん途方に暮れてしまうことはありそう。まぁ、ググれということかな。
  • 一部、なぜその手順が必要なのかが説明されていない。具体的には、「プロジェクトを作成した後に、毎回 SampleScene を別名保存するのはなぜなのか」と、「必要ないのになぜ Android Studio をインストールさせたのか (Android SDK をインストールしているのだから、少なくとも本書の範囲では Android Studio 不要)」。

あたりかな。