图形渲染——实时光线追踪RTRT(Games202)

本文介绍了基于硬件的光线追踪技术,特别是RTX显卡在实时光线追踪中的应用。核心在于降噪技术,包括时间维度的Denoising(如利用前一帧信息进行降噪)和空间维度的滤波方法,如高斯滤波和双边滤波。此外,还探讨了超大滤波器的快速处理策略以及DLSS等先进技术在提高效率和画质方面的贡献。
摘要由CSDN通过智能技术生成

不得不提一句,在开始这个模块之前,我还很兴奋,因为我刚买了一块RTX2060,我想着是不是可以得到纯Ray Trace的操作。但是这个模块上下来,基本逻辑如下:
1.基于硬件的光线追踪1SPP级;

2.Denoising降噪技术。

RTX:
基于图灵架构的RTX显卡号称是开启一个时代,本市张世硬件的提升,增加了支持光线追踪的核心,实际上没有任何的算法部分。通常来说光线追踪就是光线与场景物体的求交(学习这个部分我推荐大家实际操作一下RayTraceinOneWeek),为了加速求交往往使用BVH或者KD-Tree这个加速结构,我们如果要使用光线追踪实现全局光照,必须让光线至少在场景中bounce一次,如图:

从我们的眼睛出发,发出一条光线hit位置1,从1要产生一条shadow ray判断当前点是否处于阴影中,以及进行一次随机的bounce(diffuse的材质),然后打中2位置;从2位置连接光源的shadow ray判断是否处于阴影,这样就构成了至少场景一次bounce,实际上是可以有多个bounce的。

其中第一条从眼睛到场景位置1这条光线可以取消,用光栅化来代替(不带阴影),这样很快速,然后后边的shadow ray与bounce才使用光线追踪。这样做的结果:很多的噪声。

这也很好理解,因为采样数量少,那么要实现RTRT,当前硬件条件下,核心技术就是降噪Denoising。

Denoising:
降噪的目标:no overblur, no artifacts, keep details, speed<2ms

根据课程的整个框架,大致把降噪分为时间(Temporal)和空间(Spation)。

时间维度:reuse

简单的来说就是利用前一帧结果对当前帧进行贡献,基本思路如下:
1.确定当前帧渲染的像素对应的3D场景shading point;

我们在渲染的时候可以快速得到G-Buffer这种存储数据,这些数据与像素位置一一对应,可以是normal,wPos,depth等等。那么我们快速得到当前帧某像素对应的wPos;

2.使用相邻两帧之间转换矩阵求解一个用于回溯上一帧相同shading point的motion vector;

毫无疑问,我们希望找到上一帧有相同wPos的对应像素,对此:S_{befor}*T=S_{current};所以:S_{befor}=S_{current}*T^{-1}这就找到了上一帧对应的坐标;

3.取上一帧对应着色信息对当前帧进行贡献;

然后基于上一帧的MVP矩阵将其转

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值