CharacterControllerを使った移動(Animator追加)

CharacterControllerを使った移動にモーションを付けてみた

Animatorに立ち、歩き、走り状態のアニメーションを設定して、キャラクターのオブジェクトにアタッチしておく
そしてCharacerBaseにアタッチしたスクリプトを以下に変更

00013

これでアクションゲームのプレイヤーのような挙動ができるようになったはず

CharacterControllerを使った移動

キーボードやコントローラーで入力した方向にオブジェクトを移動させる
で実装したオブジェクトの移動をCharacterControllerを使って移動できるようにする

まず空オブジェクト(CharacerBase)を作成して、その子オブジェクトに表示するキャラクターのオブジェクトと、ここで作成したカメラオブジェクトを配置する(positionも統一させる)
CharacerBaseにCharacterControllerを追加して、コライダーをキャラクターのサイズに調整する
00011

CharacerBaseに以下のスクリプトをアタッチする

00012

移動はできるようになったものの、移動時のアニメーションがついていないのでちょっと違和感
スクリプトにアニメーション関連を実装すればそれっぽくなるはず

オブジェクトを中心にしたカメラの回転処理

対象のオブジェクトを中心にしてカメラを回転させる処理を実装する

まず対象のオブジェクトの子オブジェクトに空オブジェクトを作成し、位置を対象と同じにする。
更にその子オブジェクトにメインカメラを配置する。
空オブジェクトに以下のスクリプトをアタッチする

カメラではなく、カメラの親オブジェクトを回転させる事で、対象のオブジェクトの周りを回転できるようにしている
水平軸の回転はワールド軸にして、y軸を中心に回転させることがポイント

00010