如何减少UE4项目中的DrawCount?有优化专家吗?

How to reduce DrawCount in UE4 project? any optimizing professional?

我有一个大项目要优化很多建筑物、树木和资产。我有一个非常高的 BasePass、PrePass、ShadowDepth 和 Translucency。查看图片 ScreenShot 有什么建议吗?

锐龙 7 4800H + RTX 2060 + 16GB 内存

如果我们要减少绘制调用,我们正在谈论让引擎以更少的 materials 一次渲染更少的对象。

你的方法是:

-设置 HLOD 以组合远距离网格 https://docs.unrealengine.com/4.26/en-US/BuildingWorlds/HLOD/Overview/

-设置 HISM's/ISM's(只要您使用的是 DirectX 12 而不是 11。对于 11,它将自行完成)。请记住只对彼此相邻的对象执行此操作,否则问题会变得更糟。 https://www.unrealengine.com/marketplace/en-US/product/instance-tool

-减少网格上不需要那么多的 material 插槽的数量,或者将小网格与类似的 material 组合起来。 Actor 合并对此非常有用,只是要小心不要过度,因为它会使光照烘焙和光照贴图内存使用变得很痛苦。 https://docs.unrealengine.com/4.26/en-US/Basics/Actors/Merging/

-减少一些靠近地面的较小网格的最大绘制距离。您可以在网格的渲染设置中找到它。

任何这些都会减少绘图调用,请小心使用。通过任何一种方法进行过多的优化总是会在其他地方造成瓶颈,从而使问题变得更糟。当我们减少绘制调用时,我们也冒着减慢遮挡计算时间或可能造成内存带宽瓶颈的风险。

一旦你获得了绘制线程时间,我接下来要做的就是减少可移动灯光、投射动态阴影的对象和投射动态阴影的半透明对象的数量。这些是其他优化问题的一些常见罪魁祸首。