この書籍がとても良かったので、同じくUnity初学者の方に参考になればと思いレビューしてみることにした。
本書はUnityエディターの基礎的な使い方を段階を追って学べる。
使用するスクリプトはC#だが、C#の文法等については詳しく解説されていない。しかし、サンプルゲームのプログラムリストは全て本書に書かれているので、ただそのスクリプトを打ち込むだけで、サンプルゲームを組み上げることはできる。また、C#の経験がなくとも何らかのプログラミング言語の経験があるなら、見よう見まねで理解できる範囲に収まっていると思う。
本書ではIllumiball、Candy Dozer、Nejiko Run、Flappy Azarashiの4つのサンプルゲーム作りを通して、実に上手くUnityの機能を段階的に学べるようになっている。
サンプルゲーム Illumiball
Illumiballは物理演算を使った3Dゲームで、3つのボールを転がしてゴールに入れるとクリアというルールになっている。主に学べること
- プリミティブを使ってのゲームオブジェクトの作成
- ゲームオブジェクトとコンポーネントの関係
- マテリアルの設定
- Emission(発光)カラーの使い道
- ライティング
- 点光源(Point Light)
- オブジェクトの親子構造
- カメラのアスペクト比の設定
- スクリプトの作成
- キーボード入力操作
- スマフォデバイスの加速度センサー
- スマフォデバイスのOrientation設定(端末の向き)
- グローバルイルミネーション(GI)
- 3D物理エンジンの使用
- 当たり判定によるイベント制御
- スマフォデバイスへのゲームの転送
ざっと書き出してみただけでもこれだけあるが、順を追って丁寧に解説されているので焦らなくていい。嬉しいのが早々にスマフォ(実機)への転送方法が示されていることだ。iOSの場合はAppleのDeveloper Program(有料)に加入しなければ実機への転送はできず、加入方法など詳細は割愛されている。その辺りの情報はネットなどでいくらでも得られるのだし、それで良いと思う。
実はこのゲームは、本書の最初のサンプルゲームにもかかわらず、一番実機での動作が重い。原因はGIの使用と、3つの点光源を使用しているためだと思うが、初心者が初めてこれを見せられると「うわっ、Unityって遅い!」とネガティブな気持ちになってしまうかもしれない。
実は最初、IllumiballをiPod touch5で実行した時に、フレームレートが5fpsぐらいしか出なかったので幻滅しかけた。しかし、画面をよく見るとフル解像度(640x1136)でレンダリングでされているのに気がついた。ネットで調べて、これを320x568でレンダリングするようにスクリプトを追加したら、30fpsで動かせるようになったのでひとまず安心した。
何はともあれ、3Dゲームを制作して、それを実機に転送するまでが、こんなにも簡単に出来てしまうことに驚いた。本書の解説の上手さもあると思うが、改めてUnityの学習コストの低さに驚かされた。
サンプルゲーム Candy Dozer
Candy Dozerはゲームセンターにあるコインドーザーゲームのキャンディ版で、こちらも物理演算を使った3Dゲームだ。プッシャーにうまくキャンディを押し出させて獲得するルールになっている。主に学べること
- Unityパッケージのインポート
- マテリアルの設定
- 3D物理エンジンの使用
- プレファブを利用してオブジェクトを動的に生成する
- オブジェクトの削除
- 乱数の利用
- コルーチン
- パーティクルシステム
- BGM、効果音の再生
サンプルゲーム Nejiko Run
Nejiko Runは直線を走り続ける主人公を、左右移動とジャンプで障害物を回避するゲームだ。主に学べること
- Unityパッケージのインポート
- キャラクターのボーンアニメーションの仕組み
- キャラクターの動作の制御(CharacterController)
- プロジェクターによる影の表示
- レイヤーの設定
- ステージの自動生成
- シーンギズモの表示
- uGUIを使ってユーザーインターフェースを作る
- シーンの切り替え
- Invoke関数
- データの保存
サンプルゲーム Flappy Azarashi
Flappy Birdタイプのゲームのアザラシ版で、本書唯一の2Dゲームだ。主に学べること
- Unityパッケージのインポート
- 2Dスプライトの使用
- スプライトアニメーションの作成
- 2D物理エンジンの使用
- 2Dの当たり判定
- エディターの2Dと3Dモードの変更
- スプライトアトラス(テクスチャーアトラス)について
- SortingLayerの使用
以上4つのゲーム作りを通して、Unity5の基本的な使い方や機能を体験できる。
尚、本書にはスクリプトエディターMonoDevelopは日本語入力に対応していないと書かれているが、Unity5.3になって対応されたので、これからUnityを学ぼうとしている初心者の人にとっては、とても良いタイミングなのではないだろうか。
0 件のコメント:
コメントを投稿