d3d11 indirect lighting

本文概述了近期在实时间接光照领域的先进技术,并详细介绍了其中一种算法如何通过屏幕空间定位和内核概念来计算间接光照,同时指出该技术在减少Ray Tracing成本的同时,达到了5970显卡的高帧率。文中还提到了间接光照阴影的实现方法,通过建立三维网格和链接列表来记录被遮挡的光照信息,最终生成摄像头视角的屏幕空间间接光照缓冲区和间接光照阴影。
部署运行你感兴趣的模型镜像

http://www.gdcvault.com/free/category/280/conference/这里的一个文章

不过看着业界一点点迈向realtime GI,着实激动啊。

开卷列举了近期realtime indirect lighting的比较好的一些技术(paper),然后提到这个paper是包含:

  • indirect lighting
  • 和indirect lighting shadow


个人看法,indirect lighting和shadow同是计算光照相关的东西,很多方面的基本理念真的是非常相像。

比如基于rasterizer pipeline的话,都是有:

  • screenspace----把需要计算的相关信息进行精确定位
  • 有kernel的概念----想pcf等,也是rasterizer pipeline和单点(pixel)光照信息来自附近多点的时候的必然产物。

这个paper的indirect lighting的算法走的是screen space----来精确定位需要算什么。

然后在一定kernel上----进一步限定计算范围

用raytracing来计算间接光照。

所以最后下来,尽管标准意义上的raytracing是很昂贵的技术,但是在各种简化下,也可以在5970达到很高的fps了。

进一步细节:

  • 使用RSM来存储直接光照的信息,texel作为VPL
  • camera view来将每个pixel转到RSM space去,在一定kernel中来raytracing间接光照
  • 最后得到的就是一个camera view的screenspace的间接光照buffer

这整个过程简直就是山寨screenspace shadow map(pcf filter),对比流程:

  • light view构建depth
  • camera view每个pixel转到lightview中去sample lightview-depth(shadow map),计算过程是kernel里面做的。
  • 最后得到一个camera view的full screen的shadow buffer
  • 最后往回一帖就好。


indirect lighting shadow

尽管觉得这个feature有点蛋疼,但是也是此paper的亮点:

基本算法:

  • 建立3d grid
  • 然后间接光照被挡住的才记下来
  • 然后用上面的indirect lighting buffer减去这个被挡的lighting
  • 就有了indirect lighting shadow

关键在3d grid这部分。

是用3d的texture来表示grid。

然后linklist来记录grid里面的triangles----这个只有dx11才有地。

然后再做occlution计算。


效果绝对刚刚地:(注意indirectlighting shadow)

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值