【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

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

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

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

相关推荐
星火撩猿2 天前
常见游戏引擎介绍与对比
unity·ue5·游戏引擎·godot
清流君2 天前
【MySQL】数据库 Navicat 可视化工具与 MySQL 命令行基本操作
数据库·人工智能·笔记·mysql·ue5·数字孪生
Involuter2 天前
UE5 Assimp 自用
ue5
电子云与长程纠缠2 天前
Unreal Niagara制作SubUV贴图翻页动画
学习·ue5·编辑器·贴图·niagara
子燕若水2 天前
“Daz to Unreal”将 G8 角色(包括表情)从 daz3d 导入到 UE5。在 UE5 中,我发现使用某个表情并与闭眼混合后,上眼睑出现了问题
3d·ue5
半天法师3 天前
UE5.2+VarjoXR3,Lumen、GI、Nanite无效的两种解决方案
ue5·xr·vr
ue星空3 天前
UE5摄像机画面没有填充满屏幕有黑边
ue5
李詹4 天前
游戏开发核心技术解析——从引擎架构到攻防体系的完整技能树
架构·ue5·游戏引擎·游戏程序·3dsmax·虚幻
子燕若水4 天前
UE5的 Modify Curve 蓝图节点
ue5
人宅6 天前
UE5有些场景的导航生成失败解决方法
ue5