4.创建混合空间

为了给人物创建动作,接下来要为每个动作状态(行走、慢跑和蹲走)创建**Blend Spaces**。混合空间是特殊的资源,它能使动画的混合基于两个输入的值。在我们的例子中,我们将基于人物的动作速度和方向混合向前/向后和左/右运动。

有关混合空间的更多信息,请参见 混合空间 文档。

以下步骤将告诉你如何设置运作混合空间:

  1. 在**Content Browser**内**Right-click,选择**Animation,然后选择**Blend Space**来创建新资源。

    Blendspace_1.png

  2. 在**Pick Skeleton**窗口中选择框架(UE4_Mannequin_Skeleton),然后将资源命名为**Walk_BS**。

  3. 打开**Walk_BS**混合空间,然后在**Parameters**下将**X Axis Label**设置为**Direction,将**Y Axis Label**设置为**Speed

  4. 将**X Axis Range**设置为-180**至**180,并将**X Axis Divisions**设置为**4**。

  5. 将**Y Axis Label**设置为**Speed,将**Y Axis Range**设置为**0**至**200,并将**Y Axis Divisions**设置为**4**。

  6. 为 X 和 Y 轴设置值后,单击**Apply Parameter Changes**按钮。

    Blendspace_2.png

    你的设置应看上去如上。单击应用后,将更新**Parameter**窗口左侧的网格空间,以使用我们的输入值,这些值将用来确定运动动画间的混合。

  7. 在**Asset Browser**窗口内搜索**rifle ironsights**动画(我们将为人物使用这些运动)。

    Blendspace_3.png

  8. 找到**Walk_Fwd_Rifle_Ironsights**动画,然后将其拖放到网格空间的底部中心位置。

    Blendspace_4.png

    这将在网格空间上创建一个基准点。

  9. 将**Walk_Lt_Rifle_Ironsights**和**Walk_Rt_Rifle_Ironsights**动画拖入向前走点左/右侧的网格。

    Blendspace_5.png

    以上**Walk_Lt_Rifle_Ironsights (L), Walk_Fwd_Rifle_Ironsights (F) 和 Walk_Rt_Rifle_Ironsights** (R) 显示在网格上。

  10. 拖入**Walk_Bwd_Rifle_Ironsights**动画,并将其放置在左下和右下终点。

  11. 沿网格顶部,从左到右(Bwd、Lt、Fwd、Rt、Bwd)重复与底部相同的布局。

    Blendspace_6.png

    现在,在网格内移动鼠标,你应该能看到人物在行走并在方向间混合。

  12. 在**Anim Asset Details**中**Sample Interpolation**下,将**Target Weight Interpolation Speed Per Sec**设置为**2.0**。

    Blendspace_7.png

    这将在改变方向时使混合流畅。

  13. **Save**然后关闭**Walk_BS**混合空间窗口。

  14. 在**Content Browser**中,Right-click****Walk_BS**资源,然后选择**Duplicate

  15. 重命名**Jog_BS**的副本并打开它。

  16. 在**Parameters**下将**Y Axis Range**最大值从 200 改为**375**,然后点击应用。

    Blendspace_8.png

    375 值指我们在 MyCharacter 蓝图内设置的慢跑速度。

  17. 将更新网格,以使用最大速度值,但网格上的点仍处在先前位置。

    Blendspace_9.png

1 **Left-click**并将每个点向上拖动至网格顶部的各自位置。

  1. 在**Asset Window**内搜索**Jog**动画。

  2. 通过在网格的行走点上拖动慢跑动画,用慢跑动画替换网格上的行走动画。

    Blendspace_10.png

    我们将在网格的底部和顶部使用慢跑(Bwd、Lt、Fwd、Rt、Bwd)步枪动画。

  3. **Save**然后关闭**Jog_BS**混合空间窗口。

  4. 复制**Jog_BS**并将其重命名为**Crouch_BS**,然后打开它。

  5. 在**Parameters**下将**Y Axis Range**最大值从 375 改为**160**,然后单击应用。

  6. 在**Asset Browser**中搜索**rifle ironsights**。

  7. 用各自的**Crouch_Walk**动画替换网格上的每个点。

    Blendspace_11.png

  8. **Save**然后关闭**Crouch_BS**混合空间窗口。