二、光线追踪:两大新引擎加速
光线追踪,无疑是GPU历史上的一大变革,而引导这一变革的,正是NVIDIA,Ada上已经发展到了第三代,有效光追算力达到191TFlops(每秒191万亿次运算),是上一代产品的2.8倍。
Ampere架构的第二代RT核心里,BVH加速的包围盒碰撞引擎(上图中左侧方框),执行光线-三角形碰撞(求交)检测加速的是三角形碰撞引擎(上图中右侧三角形部分)。
Ada架构的第三代光追核心,又增加了两个新的引擎。
一是Opacity Micromap Engine,上图左下角的带树叶三角形部分。
它会评估不透明微遮盖,加速Alpha遍历,大大减轻着色器的工作量,号称光线-三角形碰撞吞吐性能、Alpha遍历性能都提升2倍。
它可以让开发人员为物体、环境加入更多细节,更方便描述不规则形状或半透明物体,比如叶子、火焰、篱笆等。
比如面对一片叶子,以前需要对整个区域的所有三角形区域,进行同样的光线遍历操作,但不同区域是不一样的,有的整个三角形区域内都是叶子,有的完全没有,有的占一部分。
Ada架构可以对这些不同区域进行分别处理,避免重复和浪费工作量。
在游戏中,以专门开发的《Portal RTX》为例,应用该技术后,G-Buffer缓冲填充速度可加快30%,帧率可提升30%。
二是Micro-Mesh Engine,上图右下角的复合三角形部分。
它可以动态生成微网格,以产生额外的几何图形,在处理复杂几何物体、环境光线时,提升几何图形的丰富度,并大大降低BVH的创建时间和存储成本。
你可以把它想象成一个立体版的曲面细分(Tessellation)。
NVIDIA举了三个例子:创建11:1的珠宝盒,需要15.3万个微网格、1100万个微三角形,BVH创建速度可加快8.5倍,存储空间缩小6.5倍。
创建14:1的珊瑚蟹,需要1.7万个微网格、160万个微三角形,BVH创建速度可加快7.6倍,存储空间缩小8.1倍。
创建28:1的陶鼎,需要17.5万个微网格、5700万个微三角形,BVH创建速度可加快超过15倍,存储空间缩小20倍。
不止是游戏,微网格位移在内容创作中也可以大大加速,目前已经得到了Adobe、Simplygon两家企业的支持。
说了半天,来感受下第三代光追的惊人效果,分别来自首批优化到位的《赛博朋克2077》、光追重制版《Portal RTX》、《Racer RTX》。
其中,《赛博朋克2077》可对每个像素执行635次的光追计算来确定光照,比四年前的首批光追游戏,比如39次的《战地5》,增加了多达16倍。