Unity技術検証

AnimationControllerによる制御とTimelineのAnimationTrackの共存について知ったこと【Unity】【Timeline】

はじめに

AnimationControllerとTimeline、どちらでもアニメーションを管理したいときの備忘録です。

個人的はまりポイント

あるオブジェクトのアニメーションについて、通常はAnimationControllerで管理しているとします。
Idle状態から、スクリプトを経由してAttack状態になるとか、そんなやつです。

このオブジェクトについて、TimelineにAnimationTrackを作成し、一部Timeline上でアニメーションさせようとしたところ、AnimationControllerの管理部分がすべてガン無視されました

原因はAnimationTrackに作成したClipの、AnimationExtrapolationという項目でした。

この項目は、Clipの前後のAnimationをどのように補完するか設定する項目のようで、
(私の場合は)初期設定がHoldになっています

WalkClipの前後の∞はHoldを表しています。

公式によると、上記画像の∞マークのところで、Clipの最初のフレームと最後のフレームがそれぞれ維持されているようです。

こちらの設定項目をNoneにすることで、∞マークがなくなり、その範囲内ではAnimationControllerによる制御の影響を受けるようになりました。

なお、AnimationExtrapolationには他にも選択できる項目があり、該当Clipをループさせる等、色々な使い方があるようです。

なんとなくでTimelineを使っていたので、勉強になりました。

タイトルとURLをコピーしました