电脑疯子技术论坛|电脑极客社区

微信扫一扫 分享朋友圈

已有 1999 人浏览分享

英伟达GTX 10系列正式支持光线追踪,是怎么做到的?

[复制链接]
1999 0
随着新一轮驱动更新,GeForce GTX 1060 6GB以上的帕斯卡架构显卡正式加入光线追踪技术阵营
这意味着拥有GeForce GTX 1060 6GB以上显卡的小伙伴不用升级到GeForce RTX 20系列显卡,也
可以开启一定的光线追踪效果。

20190411_231154_167.png


但RTX 20系列与GTX 10系列之间在物理结构上存在着巨大差距,其中之一便是采用图灵架构的RTX 20
系列显卡拥有RT Core加速光线追踪。那么GTX 10系列是如何实现光线追踪?能实现到什么程度?本文
将会进行解答。

20190411_231154_237.png


加了实时光线追踪效果的《雷神之锤II》

DXR的野望

早在去年GDC游戏开发者峰会上,微软宣布将DirectX Raytracing融入DirectX 12中,也就是我们常说的DX12 DXR
从那一刻开始,光线追踪从传统的离线渲染转入实时渲染变成了可能。

如今微软DirectX API遵循一套机制,就是将软件、游戏层面与硬件隔离,也就是说游戏本身实际上不知道自己跑在什么
硬件上,它们只需要遵守微软DirectX的规则,就能调用新特效。这也是为什么新推出的3A大作通常只支持Windows 10
系统,很大原因在于DirectX 12完全体仅能在Windows 10上运行。虽然近期微软博客有放出风声会反向移植DX12到Win
dows 7以支持《魔兽世界》更新,但仅是个例,不会影响主流3A游戏在Windows 10上运行的格局。

20190411_231154_371.png


游戏们不需要知道使用了什么硬件,那么任何显卡支持光线追踪在理论上都是有可能的。但当视角换成硬件与DirectX API之间
却没有这么简单。微软DXR虽然没有明确硬件应该如何运作,但指明了硬件应该具备哪些特性,并允许厂商将函数功能以黑盒子
硬件的方式实现,这套做法让GPU厂商有了使用自己方式实现功能的可能性。

在DXR下,光线追踪提供了两种执行方案,分别是Compute-base Path和DXR API Path。顾名思义,Compute-base Path
是在DXR框架下使用通用计算单元来进行光线追踪。GeForce GTX 10系列就是利用这一套方式。

另外一套执行方案DXR API Path,则是使用DXR框架的硬件加速电路在GPU上执行光线追踪在GeForce RTX 2
0系列上,这套硬件加速电路就是RT Core。

20190411_231154_438.jpg


无论哪一套执行方式,都会把光线追踪拆分成三个动作,分别是:射线的生成,找出射线与场景物体交汇点的求交测试
以及对交汇点进行着色计算。其中,第二步求交测试是最耗时的操作,对于简单场景来说,75%的耗时都花费在了光线
和场景物体的求交计算上,在更复杂的场景中,这类操作的耗时会高达95%,求交计算的耗时与场景中涉及的物体数量
直接相关。

这套技术最终回归到了玩家们都很清楚的道理:游戏场景越复杂,光线追踪操作越多,帧数越低。

因此如果要没有RT Core加速的GeForce GTX 10系列实现光线追踪靠着色器硬抗不会有好结果这时候一套光线追
踪的分类方案就此诞生了。

20190411_231154_595.png


光线追踪的5套方案

将光线追踪实现质量分级其实不太确切,事实上在接下来提到的5套光线运行模式中包含了对不同元素的取舍
并且可以相互叠加,最终实现不同效果的光线追踪效果。

反射Reflections

通过实时光线追踪完成对光源的单次反射,光线主要涉及到物体表面。全局BVH都会有所响应
以换取较为逼真的光照效果。根据不同材质,算法上也会进行压缩,以换取性能。

63.png


多说一句,BVH(Bounding Volume Hierarchy包围盒层级)是实时光线追踪技术采用的加速结构
简单的说对物体进行逐一分类,并不断层层递进,最后具体到每一需要处理的三角形。

34.png


其实在离线渲染时代,开发者会建立一套镜面模型,以实现单次反射效果只不过相对实时光线追踪会不太自然。

二次反射Advanced Reflections

真实世界中的自然光线是存在折射、反射和漫反射的。这也是实时光线追踪要追求的真正效果这是所有显卡噩梦的开始
它不但包含全局BVH响应,每一个三角形之间还会考虑到折射、反射的效果。

8.png


从实际的游戏和Demo证明,如果没有RT Core运算,和Tensor Core进行DLSS加速大多数显卡流畅度难以得到保证。

3.png


全局光照Global Illumination

自然世界中,材质不同所产生的反射,漫反射效果也不会只有一个方向全局光照将会体现出一道光源照射到物体后反射
折射、焦散等自然光效。配合二次光效,就是大多数显卡噩梦中的噩梦。

2.png


阴影Shadows

由于光线漫反射,阴影也不可能只有一种亮度,它会考虑到数个光源以及光源类别,执行全局BVH。

1.png


环境光遮蔽Ambient Occlusion

实时光线追踪技术中的环境光遮蔽会考虑到数个光源以及局部BVH主要目的仍然是改善场景中物体漏光
阴影不切实际等效果,并使得画面更有层次感。

0.png


上述的5套方案之间可以单一选择,也可以相互叠加,取决于游戏对光源和特效的选择方案,叠加越多
实现效果也解决自然。相反,屏蔽掉一定效果,让GeForce GTX 10系列显卡吃到实时光线追踪的甜头
也能让实时光线追踪技术有机会普及到更多游戏中。

00.png
001.png


当然对于绝大多数玩家而言,将游戏画质设置交给GeForce Experience调整免费获得相对真实的自然光照效果
无论怎么算都不会吃亏。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

关注

0

粉丝

9021

主题
精彩推荐
热门资讯
网友晒图
图文推荐

Powered by Pcgho! X3.4

© 2008-2022 Pcgho Inc.