5.动画蓝图 - 闲置和行走状态

在本步中,我们将在动画蓝图中为人物创建闲置和行走状态的逻辑。

Windows
MacOS
Linux

在本节中,我们将设置基于玩家在游戏中所采取行动决定播放什么动画的 Animation Blueprint。然后,我们将设置 State Machine,并创建 IdleWalk 状态,并且设置各状态间的过渡。

有关动画蓝图的更多信息,请参见 动画蓝图 文档。

以下步骤将告诉你如何设置动画蓝图:

  1. 找到并打开你的 MyAnimationBlueprint 资源。

  2. MyBlueprint 窗口中创建4个 Bool 变量(IsJumpingIsCrouchingIsJoggingIsProne)。

  3. 创建2个 Float 变量(SpeedDirection)。

    AnimBP_1.png

  4. MyBlueprint 窗口中 Double-click EventGraph ,以打开 Event Graph 选项卡。

  5. Event Graph 上重建以下设置,然后点击 Compile 按钮。

    单击图像可查看全图。

    在以上图形中,我们将获取玩家人物的方向和速度,并将其分配给将用在动画蓝图内的变量。我们也将从 MyCharacter 蓝图获(通过拖开 Try Get Pawn Owner 节点和人物蓝图的 Casting)取响应玩家所采取行动的变量。然后将这些变量传给动画蓝图内决定何时在动画状态间过渡的变量。

  6. 点击 Anim Graph 选项卡,在图形中 Right-click ,然后搜索并添加新 State Machine

    AnimBP_AnimGraph2.png

  7. 赋予状态机名称,然后将其与 Final Animation Pose 节点连接。

    AnimBP_AnimGraph3.png

  8. Double-click 状态机来打开它。

  9. Asset Browser 窗口中搜索 Idle,并将 Idle_Rifle_Hip 资源拖入图形。

    AnimBP_AnimGraph4.png

  10. Entry 节点与 Idle_Rifle_Hip 节点连接,然后点击 Compile

    AnimBP_AnimGraph5.png

    点击编译后,你应该能在预览窗口中看到人物进入闲置姿势。

  11. Asset Browser 中搜索 Walk_BS,并将其拖入图形。

    AnimBP_Walk1.png

  12. Double-click Walk_BS,然后从 MyBlueprint 选项卡按住 Control,并拖入 SpeedDirection 变量。

    AnimBP_Walk2.png

    连接如上所示。在这里,我们将提供带有来自人物的值的混合空间。

  13. 关闭 Walk_BS 选项卡,然后在状态机图形上创建从 Idle_Rifle_HipWalk_BSTransition

    AnimBP_Walk3.png

  14. 创建从 Walk_BSIdle_Rifle_HipTransition,然后 Double-clickIdle_Rifle_HipWalk_BSTransition Rule

    AnimBP_Walk4.png

    Transition Rule 决定状态机何时能在动画状态间移动。

  15. Transition Rule 内重建如下所示图形。

    AnimBP_Walk5.png

    我们将在以上脚本中检查,以确保玩家人物目前未在空中(无论在下降或跳跃),并且其当前速度大于 160,如果是这样,我们将允许从闲置到行走的过渡发生。

  16. 返回状态机图形,并打开从 Walk_BSIdle_Rifle_HipTransition Rule

  17. Transition Rule 内重建如下所示图形。

    AnimBP_Walk6.png

    这里,如果人物的速度小于160,我们将允许过渡发生。

  18. CompileSave 动画蓝图。

欢迎来到全新虚幻引擎4文档站!

我们正在努力开发新功能,包括反馈系统,以便您能对我们的工作作出评价。但它目前还未正式上线。如果您对此页面有任何意见与在使用中遭遇任何问题,请前往文档反馈论坛告知我们。

新系统上线运行后,我们会及时通知您的。

发表反馈意见