UE动画蓝图的状态机 如何运行 |随笔

我目前在学习UE  一提到动画  他们就和我说状态机 后面 学了一下基础

就是这个

这个从入口开始  跟随着箭头  然后满足转换状态的条件时转换状态

这个我理解了 但是 

这一串的运行流是如何开始的呢? 我如何知道怎么去使用我创建的状态机呢? 运行流究竟是如何的

如 我右键创建了一个新的状态机 名字为 TextState1

点击进入设置其中的状态

都说这里是状态机运行流的入口 现在右键创建一个状态

这玩意是有方向的  运行流也是箭头的方向

State1是运行该状态机时 运行的第一个状态  现在我们来建立第二个状态

我们看到线上方多了一个双向符  这个符号可以点进去  里面返回的是一个布尔值  当布尔值为真时候 该转换条件成立  运行流便从状态 State1 运行到 状态State2 

现在我们点击 状态 看看 State1

状态节点 其实是输出一个动作  现在我们拖个动作进去 注意看下图右下角

 

该动作是这个

现在我们如何让动画会运行到这个状态机呢?

这里是动画图表最终输出的动作 我们也看到了蓝图运行时 那可视化的运行流  这个便是当前正在运行的运行流

我们可以看到几个状态机都在运行  但是我们新创建的状态机并没有运行

现在我们先断掉 连接最终动画输出的地方

我们发现  都不运行了 状态机其实也只是输出当前运行时此状态机内 状态的动画

注意看左边 还有运行流

看它直接输出State1 状态的动作

现在我们使用这个 并命名为 Textpose

这个可以保存状态机运行时 输出的动作

直接使用它和直接使用状态机 TextState1是一样的

注意运行流  这点证明了  运行流是否存在  动画图表中  与是否连接这个最终输出动作节点有关

看这样就不运行了  我们看看如果间接性的会不会运行

比如把这个换掉

我们看到的确运行我们自己的状态机

现在我们来看看状态机如何切换动作  来到切换状态的条件处 

在左下角建立一个布尔类型的变量 bTextP2;

我们又创建了一个变回来的条件

这个NOT 便是取反的意思

我们看右下角  那个变量的名字 这个是测试用的

看我们给bTextP2为true时 运行流 到 State2了

看bTextP2为false时 运行流 到 State1了 这里切换是跟着箭头方向走的

我们看看这个TextPose 既然保存了一个动作 那我们能不能在另一个状态机中使用呢?

新建一个状态机

证明可以用 我们创建一个缓存TextPose2 把动作保存下来

使用TextPose2

我们发现两状态机都在运行

总结:

直接 或 间接连接到动画图表最终输出动作的节点

其中连线的路径便可为 动画图表运行流  没有连接的不会运行

也就是我们应该把此处看作动画图表的入口  这个也是每帧运行的

  • 18
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值