[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的情况下,会略有劣势,其余的情况都是性能更好,而且灵活性大太多了。
[sig14]《正当防卫3》的Clustered Shading光照技术相关推荐
- 全局光照技术解析Global Illumination Explained
解析全局光照Global Illumination Explained 前言:Global Illumination全局光照技术是实时渲染的必然发展方向.我参考了一些研究成果,琢磨了一下,让更多的人可 ...
- 《杀戮地带4》光照技术
MichalDrobot带来,slideshare上面有link,另外没有代理的同学可以用这个微云链接, google <Lighting Killzone : shadow fall>可 ...
- 全局体渲染光照技术总结概括(截止到2014年)
我打算尽可能详细整理一下体渲染的光照算法,从一篇比较详细的综述入手,里面的内容会根据需要进行展开. 目录 目录 1-材料散射 2-算法的分类 3-算法描述 3-1-基于局部区域的技术 3-1-1 基于 ...
- Godot 4.0中的基于有向距离场SDF(Signed Distance Field)的实时全局光照技术
原文地址 Godot官网 <Godot 4.0 gets SDF based real-time global illumination> 作者 Juan Linietsky 6月28日 ...
- [sig16]《使命召唤》中的全局光照技术
Treyarch是<使命召唤:黑色行动>系列的开发商,使命召唤系列的成功不必细说,treyarch也是一个在技术上很有探索的公司,在<使命召唤:黑色行动>1中率先使用基于物理的 ...
- [siggraph17]《使命召唤13:无限战争》光照技术
brief siggraph17, cod13是infinity ward开发的,技术是多方合作出来的,这篇presentation是activition central tech两个哥们带来: 是1 ...
- [gdc12]《孤岛惊魂3》的全局光照技术
http://www.gdcvault.com/play/1015326/Deferred-Radiance-Transfer-Volumes-Global gdc12年的,farcry3使用的全局光 ...
- [sig18]《使命召唤:二战》的材质光照技术
siggraph18, activision.sledgehammer带来. 主要谈的是sledgehammer工作室在cod材质系统方面的探索,这里btw一下,cod系列是infinityward, ...
- Unity 5 中的全局光照技术详解
简介 全局光照,简称GI,是一个用来模拟光的互动和反弹等复杂行为的算法,要精确的仿真全局光照非常有挑战性,付出的代价也高,正因为如此,现代游戏会先一定程度的预先处理这些计算,而非游戏执行时实时运算. ...
最新文章
- Linux和Windows栈帧机器码,栈溢出原理与 shellcode 开发
- ubuntu 编译QT Basic XLib functionality test failed!问题解决
- GBDT和LR结合使用分析
- linux路由表生成,路由表(FIB)内容的生成(一)
- 【测试】测试用例8大法
- BZOJ3196 二逼平衡树 ZKW线段树套vector(滑稽)
- 你在面试时是否无意中暴露了缺点?资深面试官如何从细节中看候选人的软实力...
- Java设计模式学习总结(7)——结构型模式之适配器模式
- 让数据可视化告诉你,中秋吃这样的月饼绝对没错
- kettle-多文件合并
- java类的生命周期
- android json解析及简单例子+Android与服务器端数据交互+Android精彩案例【申明:来源于网络】...
- POS机商户巡检系统 后台+手机APP
- INT 10H显示字符串的小例子
- 2020校招途家名宿开发笔试
- Android开发前景及现状分析
- php实现的简单问卷调查系统
- 我的世界java版如何看坐标_我的世界中怎么查看坐标,坐标系统详解
- Tomcat 7.0 配置
- Polygon Soup