[sig14]《正当防卫3》的Clustered Shading光照技术

这里写图片描述
siggraph2014 asia, 这个是siggraph首次在中国举行,城市是深圳,这个course是在这次会议上分享的。
由avalanche studios的emil persson(humus)带来:< Practical Clustered Shading >

sum
clusterred shading是把空间进行3维的划分,然后把光照信息存到这些cell里,然后依据此来shading。
这是一个颇具革命性的进步,由于它是对光进行了一个组织,使得海量光源的渲染效率,自定义的材质光照类型,透明物体的光照都变得更加高效和可能。
光照信息开始在3d空间去做(volume化)是最近挺明显的一个趋势。

历史
milo写了一个较为全面的历史,以及相关的研究者和文献,需要更多的细节可以看这个:
http://miloyip.com/2014/many-lights/
实际高品质游戏的应用,就是avalance studio的just cause 3(正当防卫3),这个游戏刚刚在E3上面有视频,上天入地整个一个蜘蛛侠,非常火爆,可以说是一个非常有说服力的案例了。

空间划分
这里写图片描述
avalanche使用的是把空间分成64x64x16份,深度方向是16份,采用exponential的分布。
然后由于很远的地方不用点光源来lighting,所以这个深度的范围是一个有限的,不用按照just cause3几公里的视距来。

光照数据
这里写图片描述
just cause 3使用的是类light link list的做法,就是使用3d texture来存放一个lighting信息的[offset, size],使用这个去sample另外一个存放光照细节的texture来获取lighting信息。
just cause 3是使用dx10级别的hardware,所以没有使用直接的dx11的light link list,但是基本的意思相仿。

光照
可以看到,想deferred/forward是和clustered shading正交的,都可以很好的支持。
尤其是自定义的材质,这个实在太棒了。

性能
这里写图片描述
可以看到,在sun light only的情况下,会略有劣势,其余的情况都是性能更好,而且灵活性大太多了。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值