UE动画状态机的事件触发顺序测试

20 篇文章 1 订阅

正常A状态过渡到B状态的事件顺序:

在这里插入图片描述

整个流程为:

  1. 调用B状态的On Become Relevant事件
  2. 调用B状态的On Update事件
  3. 调用A状态的Left State Event事件
  4. 调用B状态的Entered State Event事件
  5. 调用B状态的Start Transition Event事件
  6. 调用B状态的End Transition Event事件

注意:

  • 同一帧内,即使B状态的Entered State Event里修改了变量,但过渡仍然认的是修改前的。
    需要加一个Current State Time > 0.01这样的判断,让过渡在非第一帧生效。
  • End Transition Event有时候会不触发,可能是A过渡尚未完成但B过渡已经完成了状态跳转。

如果切到B状态又立刻返回A状态的事件顺序

比如加一个变量默认为True,到了B状态秒切回A状态:
在这里插入图片描述
在这里插入图片描述

执行后的结果可以看出,LeftState、Enter State、Start Transition Event这三个事件是仍然会正常调用的,而OnRelevant和OnUpdate在快速状态切换时调用并不稳定,有时触发有时不触发。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值