当前位置:网站首页>如何在 UE4 中制作一扇自动开启的大门
如何在 UE4 中制作一扇自动开启的大门
2022-08-02 11:11:00 【华为云】
前言
相信很多玩过游戏的朋友都知道,在玩游戏的过程中,如果我们被一道门给挡住了去路,只要按下某一个按键,门就会自动的开启。于是,今天我就带大家来制作一道会自动开启的大门吧!
场景搭建
首先,在我们的初学者素材包中找到 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 的。

运行效果
最后
好了,本次内容到此就结束了,咱们下次再聊。
边栏推荐
猜你喜欢
随机推荐
WPF 截图控件之文字(七)「仿微信」
QT笔记——在一个窗口上显示另外一个透明窗口
npm run dev 和 npm run serve区别
太帅了!我用炫酷大屏展示爬虫数据!
Multithreading (Basic) - 40,000 word summary
Oracle查询提示 ORA-00933 SQL command not properly ended 原因排查
LayaBox---TypeScript---Module
字母交换--字符串dp
ES2020-23简单易懂又实用的精选特性讲解 日常开发必备干货!
games202:三,实时环境光照IBL + PRT
What is the future of smartwatches?
21天学习挑战赛--第一天打卡(屏幕密度)
AdguardHome如何配置设置?我的AdguardHome配置内容过滤器拦截列表
LeetCode每日一练 —— 225. 用队列实现栈
X86函数调用模型分析
阿里云数据存储生态计划发布,助力伙伴数据创新
多大数量级会出现哈希碰撞
Nanny Level Tutorial: Write Your Own Mobile Apps and Mini Programs (Part 2)
npm install报错npm ERR Could not resolve dependency npm ERR peer
MySQL百万数据优化总结 一







