光线追踪核弹RTX 2080Ti/2080显卡首测:4K平均60帧

2018-09-19 21:26:27 来源:游民星空[原创] 作者:Kalama 编辑:白菜控 浏览:loading

图灵如何实现光线追踪

  NVIDIA在Turing架构的每个SM中新增RT Core是迈向实时光线追踪的关键,硬件加速是实现这一目标的唯一途径。

游民星空
层层筛选,判断光线命中了哪个三角形

  为了更好地理解RT核的功能,以及它们究竟加速了什么,笔者首先解释如何在没有专用硬件光线追踪引擎的情况下用GPU或CPU执行光线追踪。基本上,BVH遍历的过程需要通过着色器操作来执行,并且每光线投射数以千计的指令槽来针对BVH中的边界框交点进行测试,直到最终命中三角形,并且交点处的颜色将被用于最终像素填充。或者如果没有三角形被击中,背景颜色可以用来填充这个像素,这样就做到了模拟现实世界中人眼的视觉原理——你只能看到反射光的物体。

游民星空

  没有硬件加速的光线跟踪要求每条射线有数千个软件指令槽来测试BVH结构中的连续较小的边框,直到可能碰到一个三角形。这是一个海量计算的过程,使得在没有基于硬件的光线跟踪加速度的情况下,无法在GPU上进行实时处理,速度奇慢无比。

游民星空

  Turing的RT内核可以处理所有的BVH遍历和射线-三角形相交测试,节省了SM在每条射线上花费数千个指令槽,这对于整个场景来说可能是无法承受的巨量指令。RT核心内有两个专用单元,第一个单元进行边框回归测试,第二个单元进行射线三角形相交测试。SM只需要启动一个光线探测器,RT核进行BVH遍历和射线三角形测试,并向SM返回命中或不命中,SM本身即可被充分释放来做其它图形计算工作。

游民星空

  因此RT核的Turing光线跟踪性能比上一代Pascal依靠软程序实现的快得多。Turing可以在不同的工作负载下提供比Pascal更多的千兆射线/秒,比如Pascal大约花费1.1千兆射线/秒,或者10TFLOPS/千兆射线在软件中进行光线跟踪,而Turing可以使用RT Cores进行10+千兆射线/秒,并且运行速度要快10倍。

游民星空

  尽管光线跟踪比光栅化可以产生更逼真的图像,但它也是负荷很高的运算,目前单靠RT Core依然无法用完全的实时光线追踪来流畅运行游戏,最好的方法是混合渲染,用光线跟踪和光栅化组合。使用这种方法,将光栅化用在需要效率的地方,而光线跟踪用在比光栅化更多能增加逼真度的视觉增益区域,如反射、折射和阴影。

上一页 1 2 3 4 5 6 7 8 9 10 11 下一页
友情提示:支持键盘左右键“← →”翻页
文章内容导航
人喜欢
游民星空APP
随时掌握游戏情报
code
休闲娱乐
综合热点资讯
单机游戏下载
好物推荐
游民星空联运游戏