さて、いよいよ3Dキャラクターを登場させよう。今回の3Dキャラクターは「Asset Store」からダウンロードせず、Unityがもともと備えているものを使用する。
まず、Unityメニューの「Assets」→「Import Package」→「Characters」と選択する(図20)。
「Importing Unity Package」の画面が表示されるので、「Import」をクリックする(図21)。
「Project」の「Assets」フォルダ内に「Characters」のフォルダが作成される(図22)。
同じく、Unityメニューの「Assets」→「Import Package」→「Cameras」で、カメラもインポートしておく。手順は「Characters」をインポートしたのと同じ手順だ。
最終的にProject内のフォルダ構成は図23のようになる。
冒頭でも触れたが、「ThirdPersonController」は三人称の視点で3Dキャラにキーボード操作させるようにできる“動き”のアセットだ。
Project内の「Assets」→「Standard Assets」→「Characters」→「ThirdPersonCharacter」→「Prefabs」の中にある、「ThirdPersonController.prefab」をScene画面上に配置する。
「ThirdPersonController.prefab」を配置しても小さく表示されるので、マウスホイールで拡大して確認するが、その前に、いったん仮置きしておく必要がある。どこに「ThirdPersonController.prefab」を配置したらいいか分からないからだ。Hierarchy内の「Main Camera」をダブルクリックすると、Scene画面に、現在のカメラの位置が表示されるので、そのカメラの範囲に映る位置に仮置きしてから、マウスホイールで拡大しよう。
次に、Projectの「Assets」→「Standard Assets」→「Cameras」→「Prefab」と選択して、「FreeLookCameraRig.prefab」をHierarchy内にドラッグ&ドロップする。この時点で、Hierarchy内の「Main Camera」はマウスの右クリックで表示される「Delete」から削除してしまおう。
次に、Hierarchy内の「FreeLookCameraRig」を選択して、Inspectorを表示し、「Free Look Cam(Script)」項目の「Target」の右端隅にある「○に・」のアイコンをクリックして、「Select Transform」を表示させ、その中から、「ThirdPersonController」を選択する。「Move Speed」は「10」、「Turn Speed」は「2.5」程度にしておく(図24)。
小さくて分かり辛いが、「ThirdPersonController」を配置したのが図25だ。「FreeLookCameraRig」を配置して、「Target」に「ThirdPersonController」を指定したので、カメラは自然と「ThirdPersonController」の動きについてきてくれる。カメラが人物に追従してくれるようになるのだ。
以上で、マウス操作で画面をグリグリと見回せるようになり、キーボードの上下左右矢印キーで配置したデフォルト3Dキャラクターを操作できるようになる。またキーボードのスペースキーでジャンプもする。ここまでは全くのノンプログラミングだ。実際に動かしたのが動画1だ。
これで一応完成だが、これだけでは3DキャラクターがTerrainから足を踏み外すと奈落の底に落ちてしまい、その後何も続けられなくなってしまう。そこで3DキャラクターがTerrainから落ちた場合は、また一から開始できるようにしてみよう。
Cubeオブジェクトの落下領域「outarea」をTerrianの外に配置し、当たり判定のための「レイヤー」を追加する。そのレイヤーとThirdPersonControllerをひも付け、「outarea」にスクリプトを追加。そのスクリプトでThirdPersonControllerが呼び出されるというイメージだ。
Copyright © ITmedia, Inc. All Rights Reserved.