7.动画蓝图 – 慢跑状态

继续**Animation Blueprint**和**State Machine**,本节我们设置**Jog**状态以及到/从它的过渡。

  1. 在状态机图形中,在**Asset Browser**中拖入图形**Jog_BS**。

    AnimBP_Jog1.png

  2. 打开**Jog_BS**并拖入**Speed**和**Direction**变量,如下所示连接。

    AnimBP_Jog2.png

  3. 返回状态机图形。

  4. 创建从**Crouch_Idle_Rifle_Hip**到**Jog_BS**以及从**Jog_BS**到**Crouch_Idle_Rifle_Hip**的**Transitions**。

    AnimBP_Jog3.png

  5. 打开从**Crouch_Idle_Rifle_Hip**到**Jog_BS**的**Transition Rule**并重建以下图形。

    AnimBP_Jog3b.png

    如果慢跑为_True_且玩家的速度大于 0,他们将进入慢跑混合空间。

  6. 返回状态机图形,并打开从**Jog_BS**到**Crouch_Idle_Rifle_Hip**的**Transition Rule**。

  7. 在**Transition Rule**中创建以下图形。

    AnimBP_Jog3c.png

    在这里,我们将让玩家从蹲伏进入慢跑状态(他们停止慢跑后即返回蹲伏)。

  8. 返回状态机图形,并创建从**Crouch_BS**到**Jog_BS**以及从**Jog_BS**到**Crouch_BS**的**Transitions**。

    AnimBP_Jog3d.png

  9. 打开从**Crouch_BS**到**Jog_BS**的**Transition Rule**并创建以下图形。

    AnimBP_Jog5.png

    这会检查玩家是否已蹲伏并按下**Left Shift**(我们的慢跑键),如果是就将他们过渡到慢跑状态。

  10. 返回状态机图形,并打开从**Jog_BS**到**Crouch_BS**的**Transition Rule**。

    AnimBP_Jog5b.png

  11. 在**Transition Rule**内重建以下图形。

    AnimBP_Jog6.png

    在这里,我们检查玩家是否在慢跑并按下**C**(我们的蹲伏键),如果是就将他们过渡到蹲走状态。

  12. 返回状态机图形,并创建从**Jog_BS**到**Idle_Rifle_Hip**的**Transition**。

    AnimBP_Jog7.png

  13. 打开从**Jog_BS**到**Idle_Rifle_Hip**的**Transition Rule**并创建以下图形。

    AnimBP_Jog8.png

  14. 返回状态机图形,并创建从**Jog_BS**到**Walk_BS**以及从**Walk_BS**到**Jog_BS**的**Transitions**。

    AnimBP_Jog9.png

  15. 打开从**Jog_BS**到**Walk_BS**的**Transition Rule**并重建以下图形。

    AnimBP_Jog10.png

  16. 返回状态机图形,并打开从**Walk_BS**到**Jog_BS**的**Transition Rule**。

  17. 在**Transition Rule**内重建以下图形。

    AnimBP_Jog11.png

  18. **Compile**并**Save**动画蓝图