RedZero9 发表于 2023-4-12 10:36

Unreal Engine 4 优化教程第三部分

此为教程第三部分,旨在帮助开发人员利用 Unreal Engine* 4 (UE4) 提升游戏性能。本教程对引擎内部和外部使用的一系列工具以及面向编辑器的最佳实践加以概述,还提供了有助于提高帧速率和项目稳定性的脚本。
脚本优化
禁用完全透明对象
材质参数集合
材质
蓝图脚本部分
Tick、剔除和时间
大量移动、ForLoop 和多线程
数据结构
典型用途
队列
堆栈
脚本优化
禁用完全透明对象
即使完全透明的游戏对象也会用到渲染绘制调用。为避免这些调用浪费,可设置引擎停止对它们的渲染。
如要使用蓝图完成该操作,UE4 需有多个系统共同协作。
材质参数集合
首先,创建一个材质参数集合 (MPC)。这些资源储存了可被游戏中任何材质引用的标量参数和向量参数,可用于在游戏中修改这些材质以产生动态效果。
可通过在 Create Advanced Asset > Materials & Textures 菜单中选中它来创建 MPC。


图 32: 创建一个材质参数集合。
在 MPC 中,可创建、命名和设置默认的标量参数和向量参数值。对于该优化,我们使用 Opacity(透明度)标量参数并用其控制材质的透明度。


图 33: 设置 Opacity 标量参数
材质
接下去,我们需要可利用 MPC 的材质。在该材质中,创建一个名为 Collection Parameter 的 节点。通过该节点选择 MPC 以及其将使用的参数。


图 34: 在材质中获取 Collection Parameter 节点。
创建节点后,拖曳其 Return Pin(回位梢)以使用该参数的值。


图 35: 在材质中设置 Collection Parameter。
蓝图脚本部分
在创建 MPC 和材质后,我们可通过蓝图设置和获取 MPC 的值。可通过 Get/Set Scalar Parameter Value 和 Get/Set Vector Parameter Value 调用和更改这些值。在这些节点中,选择要使用的集合 (MPC) 以及该集合内的参数名称。
在本示例中,我们将 Opacity 标量值设置为游戏时间的正弦值,介于 1 到 -1 之间。


图 36: 设置和使用标量参数并在函数中使用它的值。
如要设置是否渲染对象,我们可创建名为 Set Visible Opacity 的新函数,以 MPC 的 Opacity 参数值和一个静态网格组件为输入,输出则为对象是否可见的 Boolean 值。
然后我们进行是否大于近似零值的检测,在本示例中为 0.05。检测 0 值也可以,但接近零时玩家无法再看到对象,因此我们可在值接近零时将其关闭。不将标量参数准确设置为零有助于在出现浮点错误时提供缓冲,确保其被关闭(例如,将其设置为 0.0001)。
之后,运行分支…查看全文
了解更多相关内容,请关注CSDN英特尔开发专区!
Intel技术双周刊已全面开启:订阅请点击这里。
页: [1]
查看完整版本: Unreal Engine 4 优化教程第三部分