【Timeline】AnimationTrackに早送りやスキップがうまく適応されない時に見直したい事

起きた事象

前提として、TimelineのAnimationTrackを使うことで、TimelineからAnimationClipのアニメーションを呼びだせる。

コードからTimelineを操作してスキップ(特定の時間へ即移動)したり、倍速再生したときに

 playableDirector.time = 5f; //5秒目へスキップ

AnimationTrackで作ったアニメーションだけにスキップ処理や倍速処理が適応されなかった…(他のTrackは問題なし)

本来は、TimelineからAnimationClipを呼んだ場合もスキップや早送りが適応されます。
(Timelineで作ったアニメーションじゃなくてもこれらの恩恵はちゃんと得られる)

対処法


AnimationTrackに設定しているAnimatorのContollerにAnimatorController がついていたことが原因。Timelineで使う場合はNoneになってる事を確認しよう。
(そもそもAnimatorControllerの代わりにTimeLine作ってるのでいらない)
Timelineの操作がAnimatorControllerで打ち消されてしまっていた模様。
(自分でアニメーションを作っている人なら問題でなそうだが、デザイナが作ったデータをエンジニアが操作しているときとか発生しそう)

ちなみにシグナルから呼ばれたスクリプト処理にはスキップや早送りは適応されません
シグナルから呼ばれるスクリプトでサウンド再生処理とか作った上で早送りとかしても、サウンド自体は早送りされないって意味。