UE4蓝图学习笔记04 人物左右移动

tech2022-12-05  89

多维线性混合

在Animation文件中创建Blend Space混合空间,命名Walk-Run。命名Horizontal水平方向为Strafe左右移动值,命名Vertical垂直方向为ForwardSpeed前进值,并将每组动画拖入混合空间,前进,前跑,左移,左跑,右移右跑,后退。将各种状态混合在一个空间中。在动画蓝图中命名新变量Strafe左右数值,float类型。将之前创建的Walk-Run状态机删除,Sprint变量删除,在Walk/Run(State)中直接加入刚创建好的Walk-Run,并将变量Speed和Strafe赋值给新的混合空间将动画蓝图里的Set Speed移动到角色蓝图中,并将点乘结果除600使速度范围在0-1.0之间,通过Mesh从动画蓝图中获取并设置Speed。增加Get Actor Right Vector左右向量,对Strafe进行设置。

整理蓝图与线性混合运用

将之前在Tick板块中设置好的防止后退冲刺的节点进行塌陷(Collapse Bode)命名为Prevent Backward Sprint,并将其中设置冲刺变量的节点删除。将上图中的多线性混合操作也进行塌陷,并加入Tick板块的Sequence(Sequence的顺序并无严格的先后顺序,当上一个进程遇到阻塞或延迟之后会自动进入下一个,并不会等待当前执行)的执行序列中。在之前的InputActionSprint中将设置冲刺变量的节点删除,保留设置Speed速度的节点,并划分为Sprint板块。速度的统一设置,在角色蓝图中添加变量WalkSpeed,RunSpeed,并运用到所有速度数值设置节点。容错值判定范围的调整,在Sprint板块中将Get Velocity获取的值通过Normalize节点单位化,将数值判定节点改为>= -0.01。同时将Prevent Backward Sprint板块中的速度也进行单位化,判定节点改为<-0.01。
最新回复(0)