[siggraph13]Pixar的基于物理模型光照技术

[siggraph13]Pixar的基于物理模型光照技术_第1张图片

乔布斯大神创立的大神级pixar动画工作室在siggraph13上面谈他们的physically based lighting(用于创作《怪物大学》和《TheBlueUmbrella》)。

之前听一个小故事让我对pixar肃然起敬,话说某年pixar遇到财务危机,需要解雇俩人,两个manager研究了半天发现这帮艺术家太牛了,谁也不能少,结果俩manager把自己解雇了。。。

links:

http://url.cn/UosqJR

http://url.cn/LH3Md8

Intro

简而言之,pixar在physical based lighting的大潮中发现之前的渲染器各种不给力,直接重写。

实现的过程是先做一个正确的(当然效率巨慢,cg渲染时间长了也不行啊),然后做一个优化出一个好用高效的。


分解计算

理论正确的公式是:


F项是brdf(反射光的公式)

L项是光照的公式(包括GI中各种光源)

pixar对积分进行拆分,其实也类似我们real time render中会把光照分为direct diffuse/specular, secondary diffuse/specular一样,只是这个是从数学上的积分分解(看起来更上流)

[siggraph13]Pixar的基于物理模型光照技术_第2张图片

然后pixar一个做法挺有意思,就是进行各个部分的分别积分计算,这样获得了很好的多样性和扩展性,如果修改/增加其中的一部分公式,那么其他部分的计算结果可以保留。

中间进行组合的过程,使用了multiple importance sample的方法来组合(不然里面计算结果是要乘的,这里有一定的估计成分在里面)

details

里面各个部分的计算使用的物理模型没有超出一般讨论的范畴,里面涵盖了brdf积分,lighting积分,

覆盖了光照需要的各种话题,lighting(area light), brdf, shadows,里面还有具体的伪代码

一些有意思的:

  • indirect diffuse 积分包括了pixar擅长的irradiance caching, radiosity caching, photon caching
  • reflection 积分包括caustic cache,radiosity cache
  • image based lighting继续使用
    • capture环境光照,然后卷积成低频光照,然后使用,在游戏里也有用到
    • [siggraph13]Pixar的基于物理模型光照技术_第3张图片
    • 正常的image based lighting
    • [siggraph13]Pixar的基于物理模型光照技术_第4张图片

你可能感兴趣的:(Engine&Render,游戏开发)