【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

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

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

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

相关推荐
directx3d_beginner2 天前
42,将移向指定位置改为c++
ue5
ue星空5 天前
UE5放了playstart显示badsize解决方案
ue5
directx3d_beginner7 天前
41,从UE5.1迁移到UE5.8排坑全记录
ue5
落魄大学生之流水线上谋生计11 天前
BLACK TIDE · 黑潮
ue5
曼巴UE518 天前
UE5 客户端 需要的网络同步概念总结(3 )-事件同步 RPC 以及三种调用方式
网络·c++·网络协议·学习·rpc·ue5
归真仙人21 天前
【UE项目迁移银河麒麟(Linux)局域网会话搜索失败排查】
ue5·ue4·vr·unreal engine·银河麒麟
fanfan_hongyun22 天前
UE5.1 应用InWebSocketClient-main 接收websocket信息
ue5
远离UE423 天前
Chaos、WFC 与 FJA 原理与区别笔记
ue5
平行云23 天前
3D应用推流太贵太慢?ImmerShare Lite:利用本地算力实现极简一键分享
unity·ue5·实时云渲染·云桌面·像素流·云游戏·串流
fanfan_hongyun24 天前
UE5.1 VaRest插件 读取json http请求
ue5