【ue5】滑铲系统蓝图笔记

本文详细记录了在UE5中实现滑铲系统的蓝图步骤,包括导入动画、调整动画、条件判断、胶囊体缩放、检测滑铲状态、玩家与地板对齐、碰撞检测、持续滑铲判断以及滑铲结束时的处理。通过调整角色动画、设置按键触发条件、改变胶囊体大小以适应滑铲动作,并检测滑铲过程中与地板和物体的交互,最终实现流畅的滑铲效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大致逻辑如下:
在这里插入图片描述
在这里插入图片描述

一、导入动画

  • 滑铲
  • 蹲待机
  • 蹲行走

导入到文件夹中
可以右键设置颜色,便于区分。
在这里插入图片描述

二、调整动画

1.启动根运动

启动根运动后,人物才可以位移,不然只能在原地。
打开动画序列,勾选启用根运动Enabled root motion.
在这里插入图片描述

2.创建蒙太奇

对动画序列右键创建动画蒙太奇,用户释放技能时播放。
在这里插入图片描述
在这里插入图片描述

3.调整蒙太奇

因为我们要延长滑铲的时间,现在我们的滑铲蒙太奇是滑铲后站起来,但是我们只需要滑铲这个动作。
在这里插入图片描述

找到刚刚开始滑铲的时间,调整蒙太奇结束时间=0.71。现在我们的末尾动作就是滑铲。
在这里插入图片描述

4.设置循环

现在你可以看到人物一直滑铲后站起来再继续滑铲。
右键新建一个蒙太奇片段Create New Montage,名字为“循环”。
在这里插入图片描述

将“循环”拖拽到滑铲结尾,并勾选“循环”。现在人物滑铲后就停住了。
在这里插入图片描述

三、条件判断

打开人物蓝图

1.设置按键

Ue5改版后,需要新建一个操作输入。并命名为IA_Sliding。

在这里插入图片描述
在这里插入图片描述

在默认输入映射情境中选择我们刚才创建IA_Sliding,并将输入键设置为C。
在这里插入图片描述
在这里插入图片描述

2.当人物速度>200时,才可滑铲。

Slide输入键——获取角色移动Get CharacterMovement——获取速度Get Velocity——获取向量长度Vector Length——>200
在这里插入图片描述

接下来判断,当玩家正在掉落时或者滑铲时,不能触发。

1.正在掉落

获取角色移动Get CharacterMovement——正在掉落is falling

2.正在滑铲

网格体Get Mesh——获取动画实例Get Animin Instance——蒙太奇正在播放Montage is playing
使用“与门”And布尔值叠加。
在这里插入图片描述

3.是否滑铲?

创建一个布尔变量“滑铲?”。
在这里插入图片描述

4.播放蒙太奇

创建一个序列Sequence——序列0
设置正在滑铲=真。
设置通过网格体获取动画实例——播放蒙太奇Montage Play,选取上面创建好的滑铲蒙太奇。
在这里插入图片描述

四、缩放胶囊体

虽然现在我们已经可以位移了,但是如果不调整胶囊体,你会发现腿部动作形变得很厉害。
在这里插入图片描述

通过时间轴来缩放胶囊体。

1.创建时间轴

序列1——添加时间轴Add Timeline,命名“缩放胶囊体”。
打开时间轴,添加浮点型轨道,命名为“值”,长度=0.2
在这里插入图片描述

右键创建两个关键帧:
第一个关键帧:时间=0,值=0;
第二个关键帧:时间=0.2,值=1;
在这里插入图片描述

2.设置胶囊体大小

将时间轴的开始执行引脚改为Play

### UE5 蓝图学习教程与笔记 #### 一、蓝图基础概念 UE5中的蓝图是一种可视化脚本系统,允许开发者通过图形界面创建游戏逻辑而无需编写传统代码。这使得开发过程更加直观和高效[^1]。 #### 二、事件分发器的应用 事件分发器类似于C#编程语言里的事件与委托机制,在UE5中用于实现对象间的消息传递功能。当某个特定条件满足时触发相应的动作序列执行。例如定义一个名为`EventDispatcherExample`的自定义事件分发器,并关联多个响应函数如`Func1`, `Func2`等来处理不同类型的输入或状态变化[^2]。 ```csharp // 定义事件分发器及其绑定方法(伪代码) public delegate void EventDelegate(); private EventDelegate eventDispatcher; void BindFunctions() { eventDispatcher += Func1; eventDispatcher += Func2; } void TriggerEvents() { if (eventDispatcher != null) eventDispatcher.Invoke(); } ``` #### 三、常用节点解析 以下是几个常见的蓝图节点解释: - **Space Bar**:检测空格键是否被按下。 - **Spawn Actor BP Bullet**:实例化并生成指定的子弹Actor,其作用相当于Unity引擎内的预制体(Prefab)。 - **Add Impulse**:给定物体施加瞬时力使其移动。 - **Get Player Pawn**:检索当前场景下的默认玩家角色。 - **Get Actor Location** 和 **Get Control Rotation**: 获取目标Actor的位置坐标以及控制视角的方向角度。 - **Get Actor Forward Vector**:计算出面向前方的标准单位向量。 - **Multiply**:执行两个数值相乘运算[^3]。 这些基本组件构成了大多数交互行为的基础框架,熟悉它们有助于更好地理解和应用更复杂的蓝图结构。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值