ue4 c++代码怎么获取场景中的一个actor

ue4 c++代码怎么获取场景中的一个actor,第1张

这视你要开发的游戏类型和具体的游戏中使用的技术而定了。你同时用Unity和UE4,这说明你的游戏产品目标是做大型3D游戏的,而3D游戏如果场景内包含的物件太复杂数量太多的话,Shader的计算量会变得很大,物理碰撞计算量也会变得很大,前者耗费GPU,后者耗费CPU,这就导致你的机子在开发时变得很“烫”。所以在必要时要优化3D游戏中的物件和场景,典型的方式是用Gizmo(Unity里有,UE4不熟)替代真实的GameObject、优化模型多边形数、整合贴图、用各种LoD技巧(比如公告牌技术)等。如果实在跑不动场景,那只能增加内存试试了(因为笔记本最容易换的只有内存条)

如果世界中有很多自动开关门,那么一个个单独制作非常累,所以我们制作一个蓝图类,来实现自动开关门。

首先在资源浏览器中 新建一个蓝图类对象:

之后给这个蓝图类添加组件:

现在,我们有1个门框,1个门,1个合体碰撞

我们开始编写这个蓝图类的最重要的元素:事件图表

通过如图所显示的蓝图,我们实现盒体碰撞进入和离开后通过时间轴来打开和关闭 Door组件。也就是设置它的相对Z轴旋转。

下面我们来制作如何检测按键来打开和关闭。

修改的蓝图如下:

获取玩家控制器、输入相关和按键E达到接受E事件;

让盒子重叠事件的进出来开启和关闭接受输入。

通过GATE和FlipFlop来达到开关门的行为。

同学可以在播放的时候查看蓝图上的流动效果来测试(双显示器的好处就来了)。

现在,我们换上按键门了~

额外的通过点击门来开关的修改,先增加门的点击事件并连接到GATE的enter

再设置世界场景设置中的游戏模式,并进入玩家控制器类,点+号来新建蓝图。

现在就可以点击门来打开和关闭门了。

还可以让进入盒体碰撞的时候才鼠标显示,离开的时候鼠标不显示。

为了防止是其他对象引发的碰撞,我们对碰撞对象检测,保证其为角色:

以上就是关于ue4 c++代码怎么获取场景中的一个actor全部的内容,包括:ue4 c++代码怎么获取场景中的一个actor、14 UE4蓝图:制作门的蓝图类、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9612238.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存