写点什么

如何在 UE4 中制作一扇自动开启的大门

  • 2022 年 8 月 03 日
  • 本文字数:958 字

    阅读完需:约 3 分钟

如何在 UE4 中制作一扇自动开启的大门

前言

相信很多玩过游戏的朋友都知道,在玩游戏的过程中,如果我们被一道门给挡住了去路,只要按下某一个按键,门就会自动的开启。于是,今天我就带大家来制作一道会自动开启的大门吧!

场景搭建

首先,在我们的初学者素材包中找到 Walldoor 这个素材,并将其拖入到我们的场景中。



然后选择一个材质,让墙看上去更逼真,效果如图所示:




接下来,再我们的初学者包中,在找到 Wall 这个素材,将其拖入到场景中去,让其模拟成一道石门,改变它的大小和位置,让它看上去更像一道门。





随后也给这道门加上一个材质,让其看上去略带一些科幻元素。



好了,这样一道嵌在墙里的门就已经做好了,下面我们来看下如何让门动起来。

目标点

现在,我们的门还是静止的,为了让它有一个活动的范围,我们需要给这道门设置一个活动的目标点,让其移动到这个目标的时候就停止下来。于是,我们在编辑器的左上角找到 TargetPoint 将其拖入到我们的场景中。



我这里想要门移动的效果是向左侧移到如图所示的位置即可:



所以,我们将刚才添加的目标点的位置就设定在大门最终打开的位置,大门位置如图所示:



目标点的位置:



目标点设置好以后,我们接下来去拖蓝图。

蓝图

打开场景的蓝图。



将上文中添加的 TargetPoint 按住拖动到蓝图中。



然后依次在蓝图中将 TargetPoint 连接到 GetActorLocation - Break Vector,如图:



右键搜索 Make Vector,将 Break Vector 的 X 坐标拖动到 Make Vector 的 X 坐标上。


接下来,将场景中的 Wall 对象也拖动到蓝图中,和上面的 TargetPoint 一样也连接到函数 GetActorLocation - Break Vector 上。因为在场景中,我们的大门只需要移动 X 坐标,Y 轴和 Z 轴是不需要改变的,所以将 Break Vector 的 Y 和 Z 坐标连接到 Make Vector 的 Y 和 Z 坐标上。


右键搜索 MoveComponentTo 函数,添加到蓝图中。



将 Make Vector 的返回值连接到 MoveComponentTo 的 TargetRelativeLocation 节点上,然后设置大门移动的时间为 4 秒。



右键添加键盘按键 E 开启打开大门的事件响应。




将我们之前拖到蓝图中的 Wall 对象再 copy 一个,然后去获取 GetRootComponent,最后连接到 component 上,如图:



回到我们的场景中,选中我们的 Wall 后,在右边的查看面板中,将属性设置为 Movable,否则我们的大门将不会移动,因为默认是 Static 的。



运行效果


最后

好了,本次内容到此就结束了,咱们下次再聊。

发布于: 11 小时前阅读数: 13
用户头像

佛系编码 2019.05.13 加入

红鲤鱼与绿鲤鱼与驴。

评论

发布
暂无评论
如何在 UE4 中制作一扇自动开启的大门_8月月更_HelloWorld杰少_InfoQ写作社区