我有一个StateMachineBehaviorScript,它需要检查外部布尔值是true还是false,如果为false,则当前状态需要立即停止以使下一个状态继续进行。
如果条件为假,我尝试使用animator.StopPlayBack(),并且在输入和更新中都尝试了此方法,但都没有起作用,无论布尔值如何,动画仍然一直播放。预先感谢您的帮助!
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
{
if (!isReady)
{
animator.StopPlayback();
}
}
答案 0 :(得分:0)
在动画设置中,请确保未选中名为“退出时间”的选项。 因为如果可以的话,无论开始新动画之前执行什么操作,它都会完成当前动画。