UE性能优化总结(持续更新ing)

v0.001

  1. AO性能优化。在超大型场景中,一般灯光会是性能瓶颈之一,特别是动态光场景下。此时关闭AO可以大幅提高帧率(AO默认为开启,早期版本默认是关闭的)。开启AO后(Project Settings -> Engine -> Rendering -> Default Settings ->Ambient Occlusion),引擎默认的AO为SSAO(Screen Space Ambient Occlusion), SSAO无法进行预计算,所以GPU性能开销较大,可以修改为DFAO(Distance Field Ambient Occlusion)以提升性能,因为DFAO可以预计算,代价是增加显存开销。
  2. DFAO开启方式:
    Distance Field Ambient Occlusion
    https://docs.unrealengine.com/en-us/Engine/Rendering/LightingAndShadows/DistanceFieldAmbientOcclusion
    DFAO相关的两个优化选项:
    (1) Compress Mesh Distance Fields: 通过压缩Distance Fields volume texture来减少显存占用,代价是当使用Level Streaming时会出现Hitch。
    (2) Eight Bit Mesh Distance Fields: 将Distance Fields volume texture从16位格式压缩为8位格式,代价是AO视觉效果变粗燥。

v0.002

  1. 在建构光照贴图时,若场景中没有给予Lightmass Importance Volume,会对整个场景做间接光照的采样,产生Indirect Lighting Cache,这对大型游戏场景是相当的浪费,像是游戏角色到不了的中、远景不需要产生Indirect Lighting Cache,这时候就可以在场景中置入Lightmass Importance Volume,指定特定区域内才会产生Indirect Lighting Cache,节省不少建构光照的时间。
  2. 关闭Support Global clip plane for Planar Reflections,默认关闭,开启后消耗巨大。
  3. 点光源和聚光灯尽量不要开启Cast Volumetric Shadow;默认只有平行光开启了此选项。开启后的性能消耗为不开启的性能消耗三倍。不开启表示阴影计算方式使用Shadow Mapping,开启表示使用Shadow Volume,前者的阴影计算没有后者精准,但是计算量小。

猜你喜欢

转载自blog.csdn.net/weixin_43910139/article/details/125222405