(024)Unity3d Animator问题记录
1.动画剪辑的播放、暂停2.normalizedTIme 和 eventTime 的区别
1.问题一:Animator 事件帧触发不了?
答:因为调用了下面几个 API,导致动画上的事件帧播放不了了。只能通过在编辑器里面,Toggle 下
Animator 才使得事件帧从新生效。
animator.StopPlayback();
animator.StartPlayback();
animator.StopRecording();
其他见 => animator normalizedtime_Unity中Animator做UI动画的一些细节
2.问题二:normalizedTime 和动画事件的 eventTime 以及 animator.update 的参数 deltaTime 的含义?
答:normalizedTime 动画剪辑的标准化时间。将整段动画的播放时长标准化为 [0, 1] 范围内。Animator.Play 的第三个参数 、AnimatorStateInfo.normalizedTime 都是标准化时间。
NormalizedTime 区别于 AnimationEvent.time 和 Animator.Update 的参数 deltaTime。假如动画剪辑的整段播放时长有10秒,deltaTime 指的是第几秒的动画时刻。整段动画剪辑的时长,通过 AnimationClip.length 获取。某一帧(curFrame)的动画时间通过公式 curFrame / AnimationClip.frameRate
求得。
3.问题三:animator.Update 和 animator.Play 的区别?
答:假如从零开始,调用这两个API跳转到动画剪辑的一半时刻,同时,在一半时刻之前有个事件帧。那么 animator.update 将会触发该事件帧;animator.Play 不会触发该事件帧。
更多推荐
所有评论(0)