要紧跟光追时代的脚步,RTX 3060显卡或许最适合主流玩家
如今在无论是显卡还是PC游戏游戏都有一个关键词,那就是光线追踪,不支持光线追踪的游戏,没资格叫做年度大作,不支持光线追踪的显卡,也没资格叫新一代显卡。虽然这么说好像有些夸大其词,但事实却也相差无几,NVIDIA在RTX 20系列开始就引入了实时光线追踪的支持,RTX 30系列显卡则对实时光追的渲染进行了提速,同时越来越多的游戏大作都加了光追行列,光线追踪技术对于游戏玩家来说不再是存在于理论当中的名次,而是切实的存在。
然而尽管“光线追踪”已经成为了PC硬件和PC游戏领域的热门词语,但是真正了解“光线追踪”的玩家并不是很多,更多的是“知其然而不知其所以然”。为此今天我们也来做一次追踪,看看“光线追踪”是如何成为新世代PC领域的热门词的,以及对于主流玩家来说,怎样的显卡适合成为光线追踪的敲门砖。
什么是光栅化?什么是光线追踪?
在我们了解光线追踪之前,我们首先需要了解的是什么叫光栅化。光栅化技术是目前绝大多数图形技术的基础,它最大的积极意义就在于能够通过较低的硬件开销实现丰富的效果。
所谓光栅化,就是将三维世界里的顶点坐标“降维”、“拍扁”的过程,即将这些坐标表现在二维的显示器平面当中,成为能够被显示的像素点,它是光线追踪的基础,也是高效替代方案,但正因为这是长久以来软件向硬件性能妥协的结果,光栅化技术虽然能够以较低的成本绘制丰富的场景,但是因为其本身的原理,在有些时候依然会显得比较脱离现实,比如光影缺少层次感、空间内仅仅出现“亮、很亮、中等、很暗、暗”的过渡,并且在场景复杂的时候会出现阴影渲染太直、太硬的感觉。
正因为如此,在本世代开始出现各种环境光遮蔽(AO)、屏幕空间反射(SSR)、立体像素全局光照(VXGI)技术都是意图扭转这种局面,尽可能增强空间内的光影效果,然而现在因为光线追踪技术的到来,原本高度的Tricky在深层次原理层面得到解决,因为光线追踪技术本身的原理就是更加贴近物理现实的。
光线追踪就像锦上添花,但是就像后知后觉的一切美好,比如说你第一次用固态硬盘、第一次用高性能显卡、第一次用4K HDR G-Sync显示器、第一次用手感完美的机械键盘,一旦你习惯光线追踪创造出来的逼真环境,你再看到过往的光影环境就会觉得很寒酸,真实能一眼就看出它们的光影计算错阴影投射、光线的明暗。
那么说那么多,到底光线追踪技术是何方神圣呢?所谓的光线追踪技术,就是采用更加接近真实物理世界光子传播的方式来计算环境内光线的照射路径以及与物体碰撞后形成的反射效果,以此计算哪里明亮、哪里昏暗、哪里是被第一次光线反射而照亮的、光线照到这里然后反射到哪里跟哪里……并且根据物体表面的不同材质,反射的光线同样有明亮而锐利、昏黄而温和的区分,进而创造出现有条件内最佳、最真实的解决方案。
光线追踪并非是全新的技术,其基本思路在上世纪晚些时候已经有充分的雏形与发展,但此前的光线追踪需要大量的资源和时间去实现,而现在则是因为硬件的突破而让这项技术从幕后到幕前的时间被大幅缩短。光线追踪主要思想是从我们的观察位置向成像平面上的像素发射光线,并检测光线与物体的碰撞,如果交点表面为散射面,则计算光源直接照射该点产生的颜色;如果该交点表面为镜面或折射面,则继续向反射或折射方向跟踪另一条光线,如此往复循环,直到光线射出场景或者达到规定计算次数。
我们为何需要光线追踪?
所以说,光线追踪技术就是能够更直接、更深度改变游戏中光影效果生成方式、呈现方式的技术,相比以往在受妥协的框架内的技术,光线追踪技术能够极大程度提高光影的真实感、层次感,感受接近真实世界的光影效果。
不可否认光栅化在过去功劳,一直以较小的资源开销实现更逼真的光影场景效果,但事实上它是有不可解决的局限性,会在渲染出现违反物理现象的画面,但实时光线追踪是基于物理上的一种密集渲染方式来还原,不存在以上缺点。这就是为什么NVIDIA坚持让显卡加入RT Core实现更逼真的游戏场景。正如我们的观点,光栅化与实时光线追踪不是对立的,NVIDIA也认为两者结合是最好的,也就是混合渲染,光栅化用于普通、需要高效处理的场景中,而光线追踪用于最具视觉效果的地方,比方说水面反射、镜子反射、玻璃折射等。
其实不能实现全光线追踪渲染的原因在于,目前显卡性能还达不到要求,因为考虑到场景复杂程度、分辨率、最终效果,不能指望说每个像素都能投射出数百条光线进行渲染计算,算力完全跟不上,只能在次要景物上“偷工减料”,减少投射的光线数目,由于样本数目太少,可能会因为蒙特卡洛积分近似求解中样本数量不足,导致画面会有大量噪点。NVIDIA通过针对极低样本数量的光线追踪结果进行实时降噪的研究,在GameWorks SDK中一个光线追踪降噪模块,也就是Denoising算法。最终可以用比较低样本的光线追踪应用到实时渲染中,最终渲染质量可以媲美大样本下的光线追踪收敛图像。
其实在没有RT Core帮助下,更早之前的Pascal架构显卡也就是GTX 10系列显卡也能实现光线追踪,但效率奇低。主要是因为BVH遍历的过程需要通过着色器操作来执行,并且每个光线投射需要数千个指令来计算BVH中的边界交叉点,直到最终击中三角形。你想想一个像素点有100条光线,一条光线需要数以万计的指令来完成计算,就这处理速度完全达不到实时光线追踪需求。
但RTX 20系列显卡开始就加入的RT Core 可以,其实它有点像是Tensor Core那样术业有专攻,只不过是专门为光线追踪计算服务的,实质上它是一条特异化的专用流水线,用于加速计算包围盒层级(BVH)遍历以及光线和三角求交。由于专项专用的ASIC都拥有非常高效的特性,不像CUDA这种通用单元,效率当然有平方级的提升。
RT核心包括两个专用单元:第一个进行包围盒分类计算,第二个进行射线三角求交计算
实现实时光线追踪最大问题就出在求交计算上,场景越复杂、物体数量越多,计算就越耗时间,要达到实时光线追踪,那就必须要得解决求交计算速度问题。高效的实时光线追踪实现主要是从BVH Traversal入手解决,BVH利用数据结构树形式对物体进行分门别类,不断细分。在计算时,光线会寻找被击中的第一个包围盒,再计算里面剩余包围盒,如此往复,直到最终的唯一三角形,。算法就可以大大减少计算每一条光线最近的交点所需要遍历的三角形的数量,在一次渲染中这个预处理只需要进行一次,就可以供所有光线使用。
因此一个SM单元中只需要配备一个RT Core即可,因为SM单元只是个引子,用于启动,剩下的工作全都交由RT Core处理,会自动计算执行BVH遍历以及光线和三角求交,并且向SM单元返回结果,从而节省SM单元执行的数以千计的指令。
同时SM单元可以自由地执行其他任务,比如是顶点生成、计算这色等。因此一个GPC单元中SM单元数目发生重大变化,有可能是与RT Core性能匹配相关,毕竟两者相辅相成,谁跑得太快或者太慢都是不行的。
最后RT Core还要配合GameWorks SDK的光线追踪降噪模块、RTX API等软件层面的协同工作,才能让显卡就实现实时光线追踪。
NVIDIA Ampere架构简介
RTX 30系显卡上的SM单元相比RTX 20系的,最大变化是加倍了针对传统计算的FP32单元、引入第二代RT Core以及第三代Tensor Core。
大家都知道在Turing架构中,NVIDIA整数型(INT32)和单精度浮点型(FP32)两种不同的数据类型交给两种不同的ALU进行计算。不过现代游戏应用中最为常见的还是FP32,因此为了提高计算效率NVIDIA在NVIDIA Ampere架构上引入了可同时支持INT32或FP32两种数据类型的新ALU。也就是说,现在有两条不同的数据路径,一条能够同时处理整数或者单精度浮点,另一条则单纯处理处理单精度浮点计算。
负责进行实时光线追踪运算的专用硬件单元RT Core在NVIDIA Ampere 架构上也更新到了第二代,最主要是增加了动态模糊的加速运算支持。NVIDIA在其中新加入的插值算法可以在保证动态模糊精确性的同时提高了实时光线追踪效率,官方表示最高可达8倍于上代的速度。另外在基础的BVH计算上,第二代RT Core也可以比第一代快2倍。
Tensor Core这个负责运行AI计算的硬件单元在NVIDIA Ampere 架构上也升级到了第三代。其实之前发布的A100计算卡上已经用上了新的第三代Tensor Core,它能够提供比第二代Tensor Core高出4倍的效能,不过游戏卡上面的Tensor Core进行了一定的精简,其FP16 FMA计算的吞吐量只有GA100核心中的Tensor Core的一半。
而第三代Tensor Core带来的更强劲AI运算有些什么用呢? 答案就是DLSS。随着RTX 30系显卡一同发布的,还有DLSS的更新版 - DLSS 8K。顾名思义,DLSS 8K就是通过深度学习技术将画面分辨率拉伸至8K的新版DLSS,具体来说就是把1440P的画面拉伸至4320P,像素数量跨越了整整9倍。
将不同类型的计算交给不同的单元去处理是从NVIDIA Volta架构就开始采纳的一种理念,当时引入的Tensor Core分流了很多AI相关的运算,而在其后引入的RT Core又将实时光线追踪相关的计算给分流了。但在Turing架构GPU上做不到全部运算都能够并行执行,到了Ampere架构上,NVIDIA提升了GPU内部各种单元之间的并行性,现在传统计算单元、RT Core和Tensor Core这三大单元可以同时工作,在原本基础上继续缩短帧渲染时间。
RTX 30系列的效能优势
如果大家觉得上面的介绍不太好懂的话,那么我们就直接给大家总结两点:
- 光线追踪可以提供比光栅化更真实的画质,但是对硬件性能的要求更高。
- RTX 30系列的光追以及DLSS效能相比RTX 20系列更强。
而对于这两点带来的实际区别,我们可以用下面的测试来进行直接的说明。测试平台基于英特尔酷睿i7-10700K处理器与Z490主板打造,搭配有DDR4-3600 8GB*2通道内存以及2TB容量的M.2 NVMe固态硬盘,所用电源的额定功率为850W,所用的显卡驱动则为GeForce Game Ready 466.11 DCH驱动。
测试所用的显卡为GeForce RTX 2060 SUPER FE公版和索泰RTX 3060天启,后者是目前典型的RTX 3060代表产品,在外观设计上采用了和索泰“天启姬”一样的黑银配色,在导风罩上采用了装甲式的艺术设计,配置有三个大尺寸风扇和5条复合式热管,8+2相供电设计,基础频率为1320MHz,Boost频率为1807MHz,显存数据速率为15Gbps。
RTX 20系列与RTX 30系列在光追游戏中的效能差别
首先我们在1080P分辨率下,看看传统光栅化游戏与光追游戏在性能需求上有什么差异。参测的4款游戏均使用内置Benchmark进行测试,测试时选用预设的最高画质,光追模式下则启用“高”级别的光追特效(《古墓丽影:暗影》为最高级别)以及DLSS抗锯齿(统一使用性能模式),具体测试结果如下所示:
光线追踪对硬件的性能需求远高于光栅化,因此我们可以看到在多数游戏中,开启光线追踪后帧数表现会比光栅化模式下要更低一些,但得益于DLSS功能,光追游戏的帧数的下降幅度其实并不大,仍然可以维持在流畅的水平,但RTX 3060在DLSS效能上的表现是要要优于RTX 2060 SUPER的,下降的幅度会更小,部分光追游戏开启DLSS后甚至在帧率上可以反超光栅化模式。
值得一提的是RTX 2060 SUPER并不是RTX 20系列的入门款式,比其更低一级还有RTX 2060,后者的性能还要再低5%左右,也就是说RTX 2060与RTX 3060之间的性能差距会更大。
而在2K分辨率下,我们可以看到RTX 2060 SUPER与RTX 3060之间差距在拉大,很显然RTX 3060在2K分辨率下仍然有余力,但RTX 2060 SUPER则开始出现无力感。从这里我们同样可以看出,RTX 3060显卡可以满足2K分辨率下的光追游戏需求,而RTX 20系列的“入门款”也就是RTX 2060在这个时候就比较勉强了,至少也得使用不低于RTX 2060 SUPER级别的产品。
RTX 3060:光追与帧数不再是“二选一”
PC游戏应该是一种多方位的乐趣,在享受流畅帧率的同时我们也不应该忘记惊艳的游戏画面。然而帧率和画质往往是“鱼与熊掌不可得兼”,想要其中一个方面那有优秀的表现,那么另一方面或多或少都要付出代价,而且在主流平台上这样的代价往往比起高端平台要明显得多。GTX 1060或许是目前PC游戏平台使用率最高的显卡,但是其性能确实无法满足当前各种游戏大作的需求,而且不支持光线追踪在今天也已经是一个硬伤;RTX 2060支持光追,但是开启光追后其提供的帧率也只是刚刚达标,同样会让玩家陷入“二选一”的尴尬。
相比之下RTX 3060在这两方面的平衡上就有很不错的表现,无论是画质还是帧数都可以兼顾,玩家的游戏体验大大增强。而RTX 20系列显卡要达到类似的体验,实际上那是更高级别的产品如RTX 2070/RTX 2070 SUPER才能做到的,在当时那已经是中高端的产品。而在RTX 30时代,主流级的RTX 3060已经可以很好地完成这个任务,因此如果说RTX 20系列是“开创光追时代”,那么RTX 30系列就是“普及光追时代”,RTX 3060则是普及的先锋。
如果大家对这两段话没有明确概念的话,我们不妨做一下画质对比,看看在《赛博朋克2077》中,如果GTX 1060、RTX 2060、RTX 3060都跑在近似的帧数下,他们的游戏画质会有些什么不同,就可以看出RTX 3060显卡相比它的两位前辈有什么优势了。
GTX 1060显卡游戏截图
RTX 2060显卡游戏截图
RTX 3060游戏显卡截图
在上面的三个截图中,GTX 1060平台的平均帧速是27.6FPS,画质设定为1080P分辨率和预设高级别,RTX 2060平台的平均帧数则为31.8FPS,画质设定为2K分辨率和中等光线追踪;RTX 3060平台的平均帧数为36.5FPS,画质设定为2K分辨率和超级光线追踪。很显然RTX 3060显卡不仅可以提供更高的帧数,而且分辨率以及画质设定都要比两位前辈更高。
从上面的三张截图我们可以看出,GTX 1060显卡不支持光追,因此没办法给玩家展现《赛博朋克2077》等光追游戏的全部魅力,显然已经落后于时代;RTX 2060虽然支持光追,但是其性能并不足以同时支撑高帧率和完整光追特效,在实际游戏中玩家仍然免不了“二选一”的尴尬;而RTX 3060不仅可以提供完整的光追效果,而且在分辨率设定和帧率表现上仍然留有余地,如果我们将其下降至1080P分辨率,那么其帧数达到40+甚至50+的水平完全不是问题,已经是一个比较流畅的表现了。
总结:RTX 3060才是真正意义上的光追入门之选
如果玩家是想要以较小的代价来体验光追,目前来说RTX 2060显卡仍然是成本最低的选择,但是RTX 2060显卡终归是PC上的第一代光追加速产品,其能够提供的也只是“体验”级别的效果,在游戏中真正做到“日常使用”的话,性能上还是有所欠缺。相比之下RTX 3060已经是第二代光追加速产品,在第二代RT Core以及第三代Tensor Core的加持下,其光追加速性能相比RTX 2060有了大幅度的提升,不仅可以满足1080P分辨率下光追游戏的“日常使用”,甚至在2K分辨率下也有高于“体验”级别的表现,这样的显卡在我们看来才是真正意义上的“光追大门的钥匙”。
此外RTX 3060不仅让光追显卡常态化成为了触手可及的现实,其在传统光栅游戏方面的表现也丝毫没有放松,完全可以胜任在1080P甚至是2K分辨率下,以较高甚至是最高画质流畅运行游戏的工作。诚然在传统光栅游戏游戏领域其相比RTX 2060/RTX 2060 SUPER显卡的差距并不是很多,但考虑到其定位是GTX 1060显卡用户升级使用,RTX 3060很显然已经达到了其设计目的,完全有资格成为主流级游戏平台的首选显卡。
一语言之,从纯性价比的角度看,RTX 3060未必是最高的,但如果你跟大部分的主流玩家一样,使用的是一个1080P分辨率显示器,希望显卡可以畅玩光追游戏而且不需要太多的预算,那么现在没有比RTX 3060更合适的选择。