2017.05.24
第8回目:Mirror Effect
今回は最終回です。紹介するAssetは「Mirror Effect」で、有料の$16.20になります。このAssetは鏡の役割を持っていますが、鏡だけを表示させても面白くありませんので、鏡に3Dモデルを写す処理について解説しましょう。
Mirror Effect他のインポート
Asset Storeの検索欄に「Mirror Effect」と入力すると表示されますので、「ダウンロード」→「インポート」と進んでください(図1)。筆者は何度も使用していますので、「インポート」と表示されています。
図1から「インポート」をクリックすると、UnityのProject内に図2のようなフォルダが作成され、必要なファイルが取り込まれます。
次に、鏡にユニティちゃんを写すために、Asset Storeから「”Unity-chan!”Model」をインポートしてください(図3)。
するとProject内に図4のようなフォルダが作成され、必要なファイルが取り込まれます。
次に、Unitychanを動かすのに必要なコントローラーを持つ、「Mecanim Locomotion Starter Kit」をインポートします(図5)。
するとProject内に図6のようなフォルダが作成され、必要なファイルが取り込まれます。
では、次に舞台を作っていきましょう。
舞台を作る
HierarchyのCreateから「3D Object」→「Plane」と選択して、床となるPlaneを配置します。InspectorのTransformのScaleの「X」、「Z」に「2」を指定してサイズを少し大きくしておいてください(図7)。
Plane上にMirror(鏡)を配置する
Projectの「Assets」→「Plugins」→「Mirro for Unity Free」→「Prefabs」フォルダ内にある「Mirror.prefab」をPlane上にドラッグ&ドロップしてください。トランスフォームツールの移動や拡大・縮小アイコンを使って、サイズと位置を調整して下さい。Mirrorの位置はPlaneの表面スレスレに配置しています。そして、Main Cameraの位置を調整して、図8のように表示されるように配置してください。中心に見える「黒またはグレーの領域」がMirrorを配置した領域です。
次にPlane(白い領域)上にユニティちゃんを配置します。
Plane上にユニティちゃんを配置する
Projectの「Assets」→「UnityChan」→「Models」フォルダにある、「unitycahn.fbx」をPlane上にドラッグ&ドロップしてください。そのままではunitychanはカメラに背を向けていますので、InspectorのTransformのRorationの「Y」に「180」と指定してカメラの方を向けてください(図9)。
Unitychanを動かすためにコントローラーやスクリプトを指定する
Herarchyからunitychanを選択して、Inspectorを表示してください。AnimatorのControllerに、右隅にある「」(〇に・)のアイコンをクリックして表示される、「Select RuntimeAnimatorController」から「Locomotion」を選択してください。
次に、「Add component」から「Physics」→「Character Controller」を選択してください。Inspector内にCharacter Controllerが表示されますので、Centerの「Y」に「1」を指定してください。今回は特に「1」を指定する必要はないのですが、キャラクタの中心で衝突判定ができるように設定します。この「1」は設定する癖をつけておいた方が間違いないでしょう。
同じく、「Scripts」から「Locomotion Player」を選択してください。この項目は何も設定する必要はありません。すべて設定すると図10のようになります。
これで、Unitychanはキーボードの「左右上下矢印キー」で自由に動くことが可能になりました。しかし、このままで動かすと、カメラがUnitycanを追従せずにUnitychanを見失ってしまいます。そこでカメラの追従の設定を行います。
Unitychanにカメラを追従させる
HierarchyからMain Cameraを選択して、Inspectorを表示させます。「Add Component」から「Camera-Control」→「Smooth Follow」と選択します。Inspector内に「Smooth Follow(Script)」が追加されますので、Targetに右隅にある「」(〇に・)のアイコンをクリックして、「Select Transform」から「unitychan」を指定してください。距離を表すDistanceには「5」、高さを表すHeightには「4.5」を指定して、少し上からの目線にしておきます(図11)。このあたりの値は、必ずこの値でないといけないというものではありません。各自がいろいろ値を設定して、ちょうどいい視線で見えるように調整してください。
では、これでPlayしてみましょう。キーボードの「左右矢印キー」を操作して、UnitychanをMirror(鏡)の上を走らせてみてください。Uniychanが鏡に映っているのがわかるとおもいます(図12)。
実際にユニティちゃんを鏡の上を走らせた動画が動画1です。
今回で最終回ですが、いかがだったでしょうか。本連載では全部で8個のAssetを紹介してきました。有料のものは日本円で1500円から4000円までで購入できるものを解説してきましたが、機能面から考えて決して割高ではないでしょう。
Asset Storeには、まだまだ面白いAssetが沢山あります。紙面の都合上すべてを紹介することはできませんでしたが、機会があれば第2弾として紹介したいと思います。
面白いAssetを見つけたり、自分のコンテンツの中で利用したり、自分なりの楽しいコンテンツ作りで、この連載が役に立ったのであればうれしい限りです。ぜひ、みなさんで挑戦してみてください。
長い間のご愛読ありがとうございました。