目录
前言
步骤
一、慢走
二、快速跑
三、蹲伏
前言
在上一篇文章基础上(【UE5.1 角色练习】01-使用小白人蓝图控制商城角色移动)继续实现角色的慢走、快速跑以及蹲伏功能
步骤
一、慢走
1. 打开项目设置,添加一个操作映射,这里按住Shift来使角色走路

2. 打开我们控制的角色的蓝图,添加如下节点,这里我们只需限制行走速度,动画蓝图会自动根据我们此时的速度来播放相应的移动动画。

此时效果如下,可以明显看到跑步与走路的对比

二、快速跑
3. 在项目设置中再添加一个操作映射

4. 同样可以通过修改最大行走速度实现角色快速移动

5. 我们还需要将跑步的动画变快。打开混合空间1D,将最大轴值改为1000

我们之前的三个动画的坐标分别在0、300、600

我们需要在坐标轴的1000处再添加一个跑步的动画序列,这里的跑步动画可以和600处的动画是一个动画

只要将1000处的动画的比率缩放改大一点即可,此时可以在预览中看到角色在速度1000处时的步伐频率更快

此时快速跑效果如下:

三、蹲伏
6. 在项目设置中继续添加一个操作映射

7. 在角色事件图表中继续添加蹲伏功能

选中角色移动组件,勾选“可蹲伏”

我们可以看到默认的最大蹲伏行走速度为300cm/s

8. 下面还需要蹲伏的动画,找到小白人蹲伏的动画序列(一个是原地蹲伏,一个是蹲伏行走)


双击这两个动画序列,然后使用“SK_Man_Skeleton”骨骼来替换这两个动画序列

9. 打开其中一个动画序列,创建一个混合空间1D

设置最大轴值为300

将两个蹲伏动画拖入坐标轴

10. 在动画蓝图中添加一个蹲伏的状态

添加一个布尔类型的变量用于表示当前是否需要蹲伏

双击打开“Idle”到“Crouch”的条件

值是True就蹲伏

打开“Crouch”到“Idle”的条件

当布尔值为false时执行该条件

右半部分同理

打开“Crouch”节点

通过行走速度控制混合空间输出蹲伏动画

那么如何来设置布尔变量“IsCrouch”的值呢?我们可以在动画蓝图的事件图表中设置

通过“正在蹲伏”方法来设置“IsCrouch”为True还是False

此时运行可以看到蹲伏功能可以正常使用:









![[NOIP2011 普及组] 瑞士轮](https://img-blog.csdnimg.cn/img_convert/7d1dc0fee2b90db8a1d1eef463d3b603.png)








![BUUCTF靶场[MISC]荷兰宽带数据泄露、九连环](https://img-blog.csdnimg.cn/direct/2116ffe2e1fc47e7b8fe36740a59ae87.png)
