UE5 - 移动组件使用详解(发射物、插值到、旋转移动组件)
作者:hangge | 2025-09-19 08:36
在虚幻引擎 5(UE5)中,移动组件(Movement Components)是实现游戏对象动态运动的核心模块。通过灵活组合不同组件,我们可快速实现物理模拟、平滑插值、旋转动画等效果。本文我将详解三种常用移动组件,附代码示例及使用场景。

(2)再次单击“添加”按钮添加一个立方体组件。

(3)选择发射物移动组件,在“细节”面板中设置“初始速度”与"最大速度”为 1000.0,“发射物重力范围”为 0.1





由于移动组件属于 Actor 组件,Actor 组件不能进行三维变换,也不能被附加到其他场景组件下,一般用于可复用的地方,如背包系统。因此为方便演示,我这里首先新建一个“Actor”类蓝图命名为“BP_MovementComponent”,并将其添加到关卡中。后续的移动组件都添加到该 Actor 蓝图里。
一、发射物移动组件
1,组件说明
(1)发射物移动组件专用于模拟「抛射物(Projectile)」类型的运动,例如子弹、火球、飞镖等。
(2)它已内置了运动学仿真逻辑——根据初速度、重力、空气阻力等自动计算轨迹,能够在 Tick 中更新位置并处理碰撞。
(3)使用它后,开发者无需手动编写复杂的物理公式,只需设置初始速度和必要属性即可。
2,使用样例
(1)双击进入 BP_MovementComponent 蓝图,在“组件”面板中单击“添加”按钮添加一个发射物移动组件。


提示:“初始速度”决定了组件最初的飞行速度;“最大速度”是在发射后施加额外的力使组件能达到的最快速度。比如一枚火箭,我们会希望在火箭发射后对其施加加速度,以表示推进器的工作。

(4)编译并保存后回到关卡中,运行后可以发现发射物沿一个方向飞行并受重力影响。

二、插值到移动组件
1,组件说明
(1)插值到移动组件通过一系列预设的目标点(Path Points)及对应速度插值,使 Actor 在 Tick 中自动平滑地沿路径运动。
(2)其核心逻辑相当于「插值」(Interpolation)到下一个目标点,到达后自动切换到下一个。适用于巡逻路径、导游箭头、过场动画等场景。
2,使用样例
(1)回到 BP_MovementComponent 的“蓝图编辑器”窗口后删除发射物移动组件,单击“添加”,新建一个插值到移动组件。

(2)选择新建的插值到移动组件,在“细节”面板中可以设置物体的运动规律:
- 设置“时长”为 3.0,“时长”决定着每个索引引需要的混合时间。
- 单击“控制点”右侧的“添加元素”按钮 5 次,创建 5 个索引项,分别设置“位置控制点”为(X:0.0,Y:0.0,Z:0.0)、(X:0.0,Y:1000.0,Z:0.0)、(X:1000.0,Y:1000.0,Z:0.0)、(X:1000.0,Y:0.0,Z:0.0)、(X:0.0,Y:0.0,Z:0.0)
- 勾选“位置为相对”选项后立方体将会在根组件的位置出现

(3)这样立方体会先被设置在“索引[0]”的位置,然后用 3 秒的时间移动到“素引[1]”的位置,再用 3 秒的时间移动到“素引[2]”的位置,以此类推。运行后,可以看到立方体正在按照设置的方式移动。
提示:如果不勾选“位置为相对”选项,立方体会移动到世界中的指定位置,而不是根据当前位置移动。

三、旋转移动组件
1,组件说明
(1)旋转移动组件用于让带有该组件的 Actor 在世界或自身坐标系中持续旋转。它并不负责平移,只处理旋转增量,并在每帧更新时让 Actor 旋转指定的角速度。
(2)该组件常见于旋转的风车叶片、旋转平台、挂饰等纯粹旋转场景。
2,使用样例
(1)回到 BP_MovementComponent 的“蓝图编辑器”窗口后删除其它移动组件,单击“添加",新建一个旋转移动组件。

(2)选择旋转移动组件后,在“细节”面板中可以设置相关参数:
- “旋转速率”用于设置当前旋转速度,可以设置 X、Y、Z 这 3 个值来实现任意方向的旋转,默认 Z 值为 180.0,物体进行水平旋转。
- “枢轴平移”用于设置物体的旋转中心,比如我这里设置“枢轴平移”的 Y 值为 300

(3)运行后可以看到立方体旋转起来,并且旋转中心变成了我们设置的值。

全部评论(0)