前回はSD Unityちゃんを動かせるようにしました.
ただし,そのままだとSD UnityちゃんはMain Cameraの視点から見ただけの位置しか表示されないので,広い範囲を移動したりすると視界の外に出ちゃいます.それは嫌ですよね.
はい,そこで今回はカメラがSD Unityちゃんに追従するように設定します. いくつか方法があるのですが,今回は代表的な2つの方法についてご紹介します.
Main CameraをSD Unityちゃんの子オブジェクトに設定する
最も簡単にカメラを追従させるのがこのやり方です.Scene内に配置されたSD Unityちゃんは位置情報を持ちます.そして位置情報を持つGameObjectの子Objectは自動的に親Objectと同じ位置情報を持ちます.つまりカメラでこれをやればカメラは自動的に親Objectに追従することになるわけです.やり方は簡単,HierarchyビューでMain Cameraを選択し,HierarchyビューのSD_unitychan_humanoidの真上にドロップします.するとMain CameraはSD_unitychan_humanoidの子Objectになります: 注意してほしいのが子ObjectとなっているMain Cameraの親Objectに対する相対位置と回転角によってはSD Unityちゃんを正しい位置(例えば背後)から見た風景にならないという点です.CameraはLocal座標のz軸正方向を撮影するという点を思い出してください.正しく設定されると次のようになります: www.youtube.com このテクニックは2Dのキャラクターを常に中央に表示したいときなどにも力を発揮します. ただ,このやり方だとSD Unityちゃんの背後しか見れないですね.また手前方向に向かせようとしてSキーないしは矢印キーの下を押してもガタガタ揺れるだけでなんか変です.そこで別の設定方法も考えてみます.
MultiPurposeCameraRigを使う
Projectビューの検索窓で"MultipurposeCameraRig"と入力します.するとPrefab AssetとしてMultipurposeCameraRigがProjectビューに出てきますので,これをHierarcyビューにドロップします:
次にInspectorでTargetにHierarchyビューのSD_unitychan_humanoidをドロップします: 最後にMain CameraのチェックをInspectorビューで外します: これで設定完了です.早速動かしてみましょう: www.youtube.com 先ほどと違って手前方向を向くことができるようになったことが分かります.
カメラを追従させる設定は上記2種類だけではなく沢山あります.検索エンジンを活用するなどして最適な方法を見つけてください.