在众多对《战地5》基准性能与光线追踪功能的探讨中,Eurogamer的深入分析独树一帜。他们曾细致剖析《战地V》的光线追踪性能,揭示了众多鲜为人知的细节。众所周知,目前市场上能够支持光线追踪的显卡仅有RTX 2070、RTX 2080和RTX 2080 Ti三款,但性能优化空间显然还有待挖掘。Eurogamer近期的一篇文章中,EA DICE的工程师Yasin Uludağ分享了关于性能优化的诸多见解。
在最新的文章中,Eurogamer指出,游戏在渲染过程中常常会出现过度渲染的情况,导致性能大幅下降。例如,由于包围盒错误、可破坏地形的渲染、特定位置的假上帝光或特定植被类型等因素,游戏会渲染出远超实际所需的光线。这在不同地图上的表现各异,例如沙地、泥土、雪地、岩石覆盖广泛的地图性能较高,而在复杂地图如鹿特丹地图上,性能则面临更大挑战。
此次与Yasin Uludağ的对话直击核心,原文理解起来颇具挑战。对话伊始,便提出了关于四种光线追踪选项(低、中、高、特高)的区别。以下是详细解答:
Low: 0.9 smoothness cut-off and 15.0 per cent of screen resolution as maximum ray count.
Med: 0.9 smoothness cut-off and 23.3 per cent of screen resolution as maximum ray count.
High: 0.5 smoothness cut-off and 31.6 per cent of screen resolution as maximum ray count.
Ultra: 0.5 smoothness cut-off and 40.0 per cent of screen resolution as maximum ray count.
四种选项的最大区别在于smoothness cut-off和ray count。熟悉图形学的读者可能知道,图形渲染与物理、数学息息相关。游戏中的反射画面、光线投射背后,都是复杂的积分公式,它们定义了物体的表面材质和反射情况。例如,虚幻引擎3之所以会显得黄、油腻,就是表面材质定义出了问题。
smoothness cut-off描述的是光滑程度,用系数表示。0.9代表光滑表面,如玻璃、铝合金、银,而0.1则代表粗糙表面,如岩石、水泥、石灰。后半句描述的是分辨率与光线的关系。以1920*1080为例,200万像素即为200万道光线。15%则意味着采集屏幕分辨率15%的光线。简单来说,特高画质对应的是最复杂、最丰富的反射情况,需要绘制最多的光线,而低画质则对应最简单、最少的反射情况,需要绘制的光线最少。
尽管如此,《战地V》仍采用了不少优秀的性能优化技术,例如目前使用的Super...(此处省略部分内容,以便后续补充)
Tiles,这是一种可以帮助实现重新指令光线的技术,这技术描述起来有点复杂,说简单点就是利用相似的位置,能够绘制类似的光线、三角形,对于材质缓存跟指令缓存都很友好,所以应该是一种减轻工作量的技术,尤其是对RT Core这种硬件级的加速核心很友好。另外还有一些优化光照性能(Lighting Performance)的技术,能够将不同的光照、立方贴图做成类似方格坐标的架构,所以非阴影光照、阴影光照、箱式立方贴图(Box Cubemaps,我其实不知道怎么翻译),至于这样有怎样的效果没有具体说,但最后就是会处理信息快一些。此外还有NVIDIA提供的“Variable Rate Ray Tracing”。关于未来的性能优化安排,看起来EA DICE自身是知道问题所在的,但很多技术看起来都相当复杂。