今回はUnityのStandardAssetsにあるMultipurposeCameraRigを使って、カメラがキャラクターを追従する様子を確認したいと思います。
MultipurposeCameraRigはキャラクターが移動したら追いかけていき、キャラクターが回転していない時にカメラをキャラクターの後ろ側に回りこませます。
MultipurposeCameraRigの設置
MultipurposeCameraRigをヒエラルキーに設置してみます。
AssetsフォルダにあるStandardAssets→Cameras→Prefabs→MultipurposeCameraRigをヒエラルキー上にドラッグ&ドロップします。
元々設置しているMain Cameraを非アクティブにするか削除します。
MultipurposeCameraRigのインスペクタは
↑のようになっています。
ProtectCameraFromWallClip、AutoCamスクリプトが設定されています。
ProtectCameraFromWallClipはターゲットとカメラの間に障害物があった時にカメラを移動させるスクリプトで、FreeLockCameraRigの記事で説明しているのでそちらを参照してください。
AutoCam
AutoCamはターゲットの移動に合わせてカメラを移動させ、ターゲットが回転していない時に後ろに回り込むようにするスクリプトです。
となります。
Follow Velocity以下は色々操作してもよくわかりませんでした・・・・(^_^;)
MultipurposeCameraRigの設定と確認
それでは設定して確認してみます。
MultipurposeCameraRigはターゲットの後ろ側に回り込むのでキャラクターの動きを↑のキーを押したらキャラクターが向いている方向に進み、←、→のキーを押したらキャラクターを回転させるだけにして確認してみます。
↑のようになりました。
キャラクターの回転が止まるとカメラがキャラクターの後ろに回り込んでいますね。
このキャラクターの動きはわたくしが自前で作ったスクリプトで動かしているもので、↑でキャラクターの前方に進み、←、→のキーでキャラクターをその方向に回転させています。
スタンダードアセットのThirdPersonCharacterを使った場合は、MultipurposeCameraRigの動きもちょっと違ったものになるので確認してみてください。