unity动画状态机做到立即取消当前动画的播放,再次播放该动画

时间:2024-04-08 16:29:50

unity动画状态机做到立即取消当前动画的播放,再次播放该动画
这里Jump2和Jump1播放的是同一个动画,Jump1和Jump2都连上Idle动画,不设条件
unity动画状态机做到立即取消当前动画的播放,再次播放该动画
在没有设置条件时,只有在Has Exit Time勾上时,Jump动画在执行完成后才会自动跳转到Idle动画,但是,勾上了Has Exit Time,就会有动画过渡延迟,可以将Exit Time(退出时间),Transition Duration(过渡时间),Transition Offset(过渡延迟)都设为0.在设置条件时只有满足条件时才会跳转动画。
接下来进入正题:
据我现在了解的,在动画状态机中没有找到停止播放当前动画的方法,故采用animator.Play(string stateName, int layer)来播放Jump动画,animatorPlay()播放指定动画stateName的时候,可以立即中断其它动画的执行,然后播放指定动画;但是他不会中断被指定的动画stateName,因此这里需要两个Jump交替使用。
代码:

unity动画状态机做到立即取消当前动画的播放,再次播放该动画