2017.04.26
第4回目:MazeMaker
今回紹介するAssetは「MazeMaker」です。有料で$10.80になりますが、迷路を一瞬にして作成できます。ただ迷路を作っただけでは面白くないので、ここでは3Dオブジェクトも配置して、迷路の中を走らせるように作ってみましょう。
MazeMakerのインポート
Asset Storeの検索欄に「MazeMaker」と入力すると表示されます。初めての場合は「ダウンロード」→「インポート」と進んでください。筆者は何度も使用していますので、「インポート」と表示されています(図1)。
但し、このAssetは有料ですので、初めての方には「購入」と表示されています。「購入」ボタンをクリックすると、クレジットカードの登録をしていない方は、登録画面が表示されますので、表示される指示に従ってください。クレジットカードが認証されると「ダウンロード」にボタンが変わります。一度購入すると、後は何度でもダウンロードやインポートは可能になります。
図1から「ダウンロード」をクリックすると、「ダウンロード」→「インポート」と変化し、UnityのScene画面のProject内に図2のようなフォルダが作成され、必要なファイルが取り込まれます。
実際にMazeMakerを使って迷路を作成する
まず、HrerarchyのCreateから「3D Model」→「Cube」を選択して、Cubeを1個配置しておきます。何も設定をする必要はありません。
MazeMakerをインポートすると、Unityのメニューに「MazeMaker」のメニュー項目が追加されていますので、先ほど配置したCubeを選択した状態で、このメニューをクリックします。するとMake Mazeの画面が起動します。WidthとHeightに「15」を指定します(図3)。特に「15」と決められているわけではありません。値を大きくすると複雑な迷路が作成されますので、各自試してください。
図3の画面から「Create」をクリックすると図4のように迷路が作成されます。
色のついた迷路を作成する
色のついた迷路を作成するには、まずCubeを1個配置し、ProjectのCreateからMaterialを選択します。New Materialが作成されますので、名前を「Red」としておきましょう。
「Red」のMaterialを選択して、Inspectorから、Main Mapsの「Albedo」横にある白い矩形をクリックします。すると「Color」が表示されますので、「赤」を選択してください(図5)。すると図5のようにRedのMaterialも「赤い球」に変化します。
CubeにMaterialを適用する
図5のRedを選択して、Scene画面内のCubeにドラッグ&ドロップしてください。Cubeが赤に変化します。
この状態でCubeを選択してUnityメニューのMazeMakerを選択します。今回はWidthに「30」、Heightに「30」と指定してみましょう。Createボタンをクリックすると図6のような複雑な迷路が作成されます。図4では元となるCubeは目立っていませんので、そのままにしていますが、今回は元となるCubeが目立ちますので、元となるCubeはHierarchyから削除してください。
Sphereの迷路を作成する
先ほどはCubeをもとに迷路を作成しましたが、特にCubeに限る必要はありません。例えばSphereを配置して、BlueのMaterialを作成し、Sphereに「青」を適用して、図6と同じようにMazeMakerを起動してWidthに「30」、Heightに「30」と指定すると図7のようにSphereで迷路が作成されます。元となるSphereは削除してください。
これで、迷路は作成できたのですが、この迷路は空中に作成されていますので、この迷路の中で3Dオブジェクトを動かすと下に落ちてしまいます。そこで、床を作りましょう。使用するのは、図6で作成した迷路を使用します。
迷路に床を作る
HierarchyのCreateから「3D Object」→「Plane」と選択します。図8のトランスフォームツールを使って、迷路の下にPlaneがうまく配置できるようにします。Planeの大きさは矩形で囲った「拡大・縮小」アイコンで設定してください。
最終的に図9のような迷路が完成します。ちゃんと床もついていますので、3Dモデルを動かしても落ちることはありません。
では、この迷路の中で3Dモデルを走らせてみましょう。
3Dモデルを迷路の中で走らす
Asset Storeから第2回目で使用した、Mecanim Locomotion Starter KitとCartoon BigHead Starterの2つをインポートしてください。BigHeadsを動かす方法は第2回目で紹介していますので、そちらを参照してください。
Projectの「Assets」→「BigHeads Starter」の中にある、BigHeads.fbxを迷路の適当な場所に配置してください。BigHeadsのサイズが大きいと迷路の中でつかえて走れませんので、InspectorのTransformのScaleの「X」、「Y」、「Z」に「0.5」を指定して、少しサイズを小さくしてください。筆者は図10のように配置しました。
先にも書きましたが、このBigHeadsの3Dモデルをキーボードの「上下左右矢印キー」で動かす方法については、第2回目を参照してください。
このままの状態で、BigHeadsを動かすと、カメラがBigHeadsの動きについて行けずに、BigHeadsを見失ってしまいます。そこでMain CameraをBigHeadsに追従させるよう設定します。
Main CameraをBigHeadsに追従させる
まず、HiearchyからMain Cameraを選択します。表示されるInspectorから「Add Component」をクリックして、「Camera-Control」→「Smooth Follow」と選択します。このSmooth FollowはMecanim Locomotion Starter Kitをインポートするとついてくるスクリプトです。
Main CameraのInspectorにSmooth Followが追加されますので、Targetに「BigHeads」、距離を表すDistanceに「5」、高さを表すHeightに「4」を指定し、少し上からの目線にします(図11)。このあたりの数値は、各自がいろいろ値を変えて確認しながら設定してみてください。
では、これでPlayしてみましょう。図12のような表示になります。
実際に動かした動画が動画1になります。
今回はこれで終わりです。この迷路に目的地を設定し、所要時間等を表示させるようにすれば、目的地に達するまでのタイムを競うゲームも作れると思います。皆さんで、ぜひ挑戦してみてください。
次回は、いろいろな種類のドラゴンを空中に飛ばすことが出来る「Little Dragons:Sea(有料)」の使い方を解説します。お楽しみに。