地址:
http://graphics.pixar.com/library/PointBasedColorBleeding/paper.pdf
http://graphics.pixar.com/library/PointBasedColorBleeding/SlidesFromAnnecy09.pdf
这个来自pixar的论文,本来是用来给CG电影做效果好效率好的lighting的:
但是里面提出的surfel转radiance是很赞的,在crytek的light propagation volume里面也有使用。
仍旧是传统GI很慢,ray tracing, radiosity...又慢又费内存,搞不定。
所以改用叫surfel(surface element)来做,就是把场景拆解成n多小片,用小片当光源(怎么和radiosity这么像啊)。
然后这些小片有点费,就用octree来做场景管理,粒度到每个叶子节点包含一些surfel,就是要小一点了。
然后每个leaf node把包含的surfel的光照信息保存为spherical harmonics系数,这个应该叫做radiance。
后面shading的时候就用node里的radiance就可以了,不用去查询surfel了。
这样下来效率就比较赞了。
summary:
surfel+orctree+sh coefficient。
注:
求SH系数的时候就是把光照信息和每个基函数相乘然后全球面积分,得出的值就是系数,因为spherical harmonics是orthonormal的么。