Language:
Page Info
Engine Version:
Share

创建状态机

在开始创建状态机 之前,最好花一些时间规划具体需要哪些状态,以及驱动状态转换的具体情境。这样不仅有了可靠的状态机启动计划,还有了有关驱动状态机所需的变量以及构成每个状态机的动画的确切计划。

您可以在 动画蓝图编辑器动画图表 内部创建 新状态机

  1. 动画蓝图 的动画图表内部 单击右键,并从快捷菜单中选择 状态机(State Machines)>新状态机( New State Machine)

    CreateNewStateMachine.png

    一般而言,最好在创建后立即对状态机命名。

  2. 我的蓝图(My Blueprint) 窗口中 右键单击 新状态机,并在名称字段中输入新名称。

    RenameStateMachine.png

    在本例中,状态机已经命名为“Locomotion”。

    LocomotionSMNode.png

  3. 您可以 双击 状态机将其打开,以定义其状态和转换。

    StateMachineEntryPoint.png

    这样通常会打开一个空的新图表标签页,其中只有一个输入点,这个输入点就是用来启动动画的。

创建状态和导管

创建新状态类似于在蓝图中创建新节点。

  1. 您可以 单击右键 并从快捷菜单创建一个状态。

    AddState_CM.png

    还可以拖出一根引线,拉到图表的空部分,然后松开鼠标,这样也会调出快捷菜单。

    AddStateDragWire.png

  2. 在图表中 右键单击 节点来重命名状态。

    StateDefault.png

    在上图中,状态已创建完成,在下图中重命名为 Idle

    StateRenamed.png

  3. 导管的创建方式类似,也是在图表中 单击右键,或拖出一根新引线到图表的空位置并松开鼠标。

    CreateConduit.png

创建转换规则

转换规则NEW! 会沿着连接状态和导管的引线自动创建。从图形上看,转换规则显示为循环方向小图标,如下图所示:

NewTransitionRule.png

这意味着,通过拖出引线到图表空位置来创建状态或导管时,将自动针对该引线创建转换规则。此外,您可以将引线拖回到原始节点,创建表示转换回到该节点的第二个转换规则。

CreateTransition.png

您可以在转换规则上 双击 以打开新图表,允许您定义转换的成功或失败条件。

TranstionRule.png

在上图中,如果布尔值 IsSecondaryAttacking?True,则会发生到新状态的转换。