ルートモーション
公式サイト:
ルートモーションの仕組み | Unity マニュアル [公式]
使い方
- 「Bake into Pose」を有効にすると、ボディの回転あるいは位置がポーズの一部として扱われる。
設定
- Root Transform Rotation
- Bake into Pose
- Based Upon
- Original
- Body Orientation
- Offset
- Root Transform Position Y
- Bake into Pose
- Based Upon
- Original
- Center of Mass
- Feet
- Offset
- Root Transform Position XZ
- Bake into Pose
- Based Upon
- Original
- Center of Mass
参考:
Animation Clip のルートモーションの設定 | かめくめ
アニメーションクリップのプロパティを理解する | XR-Hub
MMD モデルを独自アニメーションで走らせる | テラシュールブログ
Animator コンポーネント
- Apply Root Motion
ドキュメント:
Animator コンポーネント | Unity マニュアル [公式]
参考:
Unity 2018.3 以降の Animation で相対的な座標を扱う方法 | はなちるのマイノート
Generate Root Motion Curves ボタンが存在しない | リジェクト東京
OnAnimatorMove
ドキュメント:
MonoBehaviour.OnAnimatorMove | Unity スクリプトリファレンス [公式]
位置/姿勢を取得する
ドキュメント:
Animator.rootPosition | Unity スクリプトリファレンス [公式]
Animator.rootRotation | Unity スクリプトリファレンス [公式]
スクリプトで操作する
参考:
Animator で動かすオブジェクトをスクリプトでも動かす際の注意 | テラシュールブログ
Generate Root Motion Curves
※ Unity 2018.3 以降では「Generate Root Motion Curves」は廃止されたので、「Animator」コンポーネントの「Apply Root Motion」を使用する。
参考:
Unity 2018.3 以降の Animation で相対的な座標を扱う方法 | はなちるのマイノート
Root Motion を利用したアニメーションと、その注意点について (Unity 5) | テラシュールブログ
Animation コンポーネントで相対的にアニメーションさせる | KAZUPON 研究室
Animation Clip で設定した位置を相対的な値として扱う方法 | おもちゃラボ
Root position or rotation are controlled by curves / Rigidbody2D and Animator problem – Unity Forum
チュートリアル
Animated Character Controller with Root Motion (TheKiwiCoder)
Root Motion Explained (Ketra Games)
Using Root Motion with a Character Controller (Ketra Games)