【经验记录】Animation动画播放及倒放的延迟问题

在使用Unity的Animator进行模型动画控制时,通过调整Speed参数实现播放、暂停和倒放。文章指出,当动画结束时normalizedtime超过1,在倒放时会导致延迟。解决方案是,在播放时同步设置normalizedtime为0或1,确保无延迟播放。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近使用Animator进行模型动画的播放,并且实现正常播放、暂停和倒放的功能,做出来之后发现播放过程中暂停再继续播放或者倒放是无延迟进行的,但是正向播放或者倒放动画完毕之后再进行播放会产生延迟。

Unity Animator解决动画倒放、倒放延迟、播放不连续问题
经过该博客指点之后,发现我原本只是简单增加了一个Float参数名为Speed,与对应的Animation的播放速度相乘,正向播放或者倒放以及暂停的时候修改为1、-1和0就完毕,忽略了动画层的normalizedtime的问题。正常动画播放前normalizedtime为0,播放完毕之后normalizedtime为1,但是在我的代码下例如在正向播放完毕之后,看似动画播放完毕,实际上normalizedtime还在继续增加至大于1,设置Speed为-1倒放回来之后normalizedtime是从>1的参数逐渐减回来,所以导致了延迟。在动画未播放完毕时normalizedtime是正常暂停增加,所以此时继续播放或者倒放都是无延迟的。
在这里插入图片描述
按照上述博客,在正向播放或者倒放的同时将normalizedtime设置为对应的0或者1,就能避免延迟的发生。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值