【UE5.1 角色练习】14-枪械射击——实现移动射击状态

效果

步骤

  1. 找到"AnimStarterPack"资源包中的如下4个动画序列,分别表示角色射击状态下的前进、后退、向左走、向右走的动作。
  1. 通过IK重定向器将这4个动画序列重定向给我们的角色
  1. 打开动画蓝图,创建一个混合空间资产

这里命名为"BS_IdleRifle"

打开"BS_IdleRifle",设置水平坐标用于控制方向,垂直坐标用于控制速度,方向在-180~180之间,速度在-600~600之间

向前走的动画放在(0,600),向后走的放在(0,-600)

再次将向后走的动画放在(-180,600)和(180,600)

将向前走的动画放在(-180,-600)和(180,-600)

将向左跑的动画放在(-90,600)和(-90,-600);

将向右跑的动画放在(90,600)和(90,-600);

  1. 在动画蓝图中添加一个状态,这里命名为"RunRifle"

双击进入状态"RunRifle",将混合空间"BS_IdleRifle"作为输出动画姿势

由于我们已经有了变量"GroundSpeed"用于记录角色的移动速度,因此这里我们只需再创建一个浮点类型变量来表示角色的方向,这里命名变量"Direction"

将变量"Direction"、"GroundSpeed"作为混合空间的输入

在动画蓝图的事件图表中设置"Direction"值

下面需要在动画图表中的设置从站立射击状态到移动射击状态的过渡规则

当角色移动速度超过10就认为转为移动射击状态

当速度小于10就认为回到站立射击状态

此时运行效果如下,可以看到当我们控制角色移动时角色也能处于移动射击的状态

  1. 打开角色蓝图,如果我们希望在进入射击状态后视角能够随着角色的旋转而旋转,我们可以在进入射击状态后设置"Orient Rotation to Movement"为False

然后我们可以设置进入射击状态后不显示鼠标

选中角色移动组件,勾选"使用控制器所需的旋转"

此时运行可以看到角色在进入射击状态后,玩家能够通过鼠标来控制角色的朝向,效果如下

相关推荐
AA陈超13 小时前
ASC学习笔记0007:用于与GameplayAbilities系统交互的核心ActorComponent
c++·笔记·学习·ue5·虚幻引擎
AA陈超21 小时前
UE5笔记:OnComponentBeginOverlap
c++·笔记·学习·ue5·虚幻引擎
AA陈超1 天前
ASC学习笔记0014:手动添加一个新的属性集
c++·笔记·学习·ue5
曹勖之1 天前
UE5中,导入的CAD的Actor为什么Simulate Physics无法被勾选?
ue5
AA陈超2 天前
ASC学习笔记0001:处理目标选择系统中当Actor拒绝目标确认时的调用
c++·笔记·学习·游戏·ue5·游戏引擎·虚幻
AA陈超2 天前
ASC学习笔记0022:在不打算修改属性集时访问生成的属性集
c++·笔记·学习·ue5·虚幻引擎·unreal engine
曼巴UE52 天前
UE5 C++ 定时器 官方案例练习
ue5
曹勖之2 天前
UE5导入的CAD文件零件如何被Merge?
ue5
Creator丶小鑫2 天前
UE5 PAK 封包 加载实用方法
ue5·ue5 pak 封包解包·ue5 获取所有文件路径·ue5 调用cmd·ue5 保存写入txt
AA陈超3 天前
ASC学习笔记0017:返回此能力系统组件的所有属性列表
c++·笔记·学习·ue5·虚幻引擎