动作停止过渡问题
问题:目前碰到游戏中播放左转,右转的时候,有几率出现没有停止过渡的bug,然后开始查bug,发现以下情况 1.我的controller里只有2个层,一个是待机的站立,一个是左转,右转的移动,移动的层级要比待机的优先级高 然后正常的左转,停止,停止后会有应该是如图中Transition Duration的百分比时间来过渡到低层动作(低层的站立动作一直在播放) 2.如果我先播放左转,马上停止,立刻播放左转就会出现角色从新开始播放左转,然后在停止后就没有按照百分比过渡,直接是瞬切到低层动作 3.用demo在unity5.6.5版本,5.6.6版本,2017.1.1版本会出现角色闪烁一下,但是不会有过渡问题。 4. 2017.4.3版本,2017.4.17版本,2018.1.1版本都测试过有该问题,但是发现5.6.0版本不会出现该问题
请问各位大神们有没有碰到过相应问题,求解决思路? 以下是demo,按a左转,摁d右转。 testanimator.unitypackage
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
感谢,感谢! 我尝试一下缩短过渡时间看看其他动作播放是不是会影响动作感觉
确实有复现,但无法确认准确的原因。
当尝试把向左转动画的过渡时间缩短(脚本中按下A的crossfade时间从0.3-u003E0.05),症状减轻。
猜测一个原因: 当按键A时,开始向左转动画切换,但过渡尚未结束时A键被松开,此时向base动画切换,但状态机仍然处于向左转动画切换的过渡过程中,并且过渡到了后期,此时可能会直接按照当前的过渡进度向base动画过渡,看上去就像省略了过渡过程直接到了base动画。。所以当通过缩短向左转的过渡时间,使按键A按下和松开的间隔能完整完成动画过渡,不影响到接下来的动画过渡时,症状可能会缓解。。
要稳定解决该问题,仍然需要进一步准确定位到原因。也希望其他同学能够提供思路。
老版本的transition: https://blogs.unity3d.com/2016/07/13/wait-ive-changed-my-mind-state-machine-transition-interruptions/ , 老版本不会出问题,看起来transition也是修改过了