Timline.time をコントロールした際にAnimationClipが再生されない
Editor上ではタイムラインのヘッダをいじると再生されるのに、スクリプトからTimeline.timeを直接いじってTimeline.Evaluate()をさせた場合に、配置してあるAnimationClipが再生される場合とされない場合があった。
再生するコードはこんな感じ。
PlayableDirector timeline; // Stop状態 float time = 0f; private void Update() { this.time += 0.1f; this.timeline.time = this.time; this.timeline.Evaluate(); )
動かない方にはAnimationControllerが設定されていて、動く方はAnimatorのControllerがNoneになっていた。
追記) 2019.02.19
その後 UnityQA チームから返信をいただき、Evaluate() ではその後に AnimationController などから値が上書きされてしまうので、DeferredEvaluate() が使えるよと教えてもらった。
コメントを残す