TimelineでAnimation再生すると位置がズレる問題

普段Animator制御ってスクリプト側とかでやってる事多いから、TimelineでAnimator制御したらうまくいかないことあって学びを得た。

 

前提として

Timelineは親オブジェクトのTransformが基準となる。

他オブジェクトを動かす場合は、Timeline以下の子を動かす対象とする方が良い。

子以外の他階層オブジェクトをTimelineで動かそうとすると位置がおかしくなる。

 

 

それでも他階層のオブジェクトを制御したい時は

Timeline上でAnimatonTrackを選択してTrackOffsetsをApplySceneOffsetに設定する(Unity2022.3)

 

ApplyTransformOffset:親オブジェクトを基準にAnimtionClipの初期位置から再生

ApplySceneOffset:現在の位置からAnimationClipの動きを適用

 

ApplyTransformOffset でも Root Motion の影響を受けると動作が変わる可能性がある

※Autoは非推奨(Animtorありなしで挙動が変わる)
・Animator がある場合: ApplyTransformOffset の動作になる
・Animator がない場合: ApplySceneOffset の動作になる

 

 

参考:https://tsubakit1.hateblo.jp/entry/2018/09/14/233749

関連記事




コメントを残す

※コメントは承認後に表示されます。
 コメントを公開されたくない場合、名前の後に「:非公開」とつけてください。