UE5 - 开关门功能效果实现教程2(双开门)
作者:hangge | 2025-11-27 08:51
前文我演示了如何实现一个单开门的开关门功能,而实现双开门则需要同时控制两个网格体,其制作方法与单开门大致相同,通过移动门实现开、关门。









二、双开门
1,实现过程
(1)创建一个“Actor”类蓝图并命名为“BP_Doors”,双击打开蓝图,在“组件”面板中单击“添加”按钮添加两个静态网格体组件,将它们设为平级并分别命名为“DoorLeft”与 “DoorRight”

(2)在“细节”面板中设置两个组件的“静态网格体”为“SM_Door”,设置“DoorLeft”组件的“位置”参数的 Y 值为 90.0。设置“DoorRight”组件的“位置”参数的 Y 值为 -90.0,设置“旋转”参数的 Z 值为 -180.0%。最终效果如下图所示。
(3)在“组件”面板中单击“添加”按钮添加一个“Box Collision”组件(名称为“Box”),使其与门同级并完全包裹住门。

(4)为“Box”组件添加“组件开始重叠时”与“组件结束重叠时”两个事件,进入“事件图表”面板。

(5)创建两个“时间轴”节点设置相对位置,可以使用“序列”节点同时设置两个时间轴,用“组件开始重叠时”事件的“序列”节点连接两个“Play”引脚,用“组件结束重叠时”事件的“序列"节点连接两个“Reverse”引脚。

(6)双击打开第 1 个“时间轴”节点,添加一个浮点型轨道并设置“长度”为 1.00,新建两个关键帧并分别设置“时间”为 0.0 和 1.0,“值”为 90.0 和 180.0。在关键帧上单击鼠标右键,执行“自动”菜单命令,开启自动切线功能。

(7)双击打开第 2 个“时间轴”节点,添加一个浮点型轨道并设置“长度”为 1.00,因为默认位置的 Y 值为 -90.0,所以需要使时间轴从 -90.0 处移动到 -180.0 处。创建两个新的关键帧,分别设置“时间”为 0.0 和 1.0,“值”为 -90.0 和 -180.0,在关键帧上单击鼠标右键,执行“自动”菜单命令,开启自动切线功能。

(8)最后,回到“事件图表”面板,添加两个“设置相对位置”节点并连接相应时间轴的“Update”引脚和该节点的白色输入引脚,连接“新建轨道 0” 引脚与“New Location Y”引脚(需要先执行“分割结构体引脚”菜单命令)。

2,运行测试
(1)编译并保存后拖曳“BP_Doors”蓝图到关卡中。

(2)进入 PIE 运行模式,当角色移动到门口时门缓慢打开。

(3)角色离开后门缓慢关闭。

全部评论(0)