球谐波光照(Spherical Harmonic Lighting)

SH(Spherical Harmonic Lighting 球面谐波照明):

1.基于物理的光照计算:


这个光照模型,是一个典型的基于物理的光照模型。是对当前点法线方向的半球内的光照强度的积分。

:为点x处在w方向上的光密度;
:物体自身在点x处发出的光线;
:表面上x处的BRDF,它将从wi方向上进入到该点的光反射并变换到wo方向上;这里BRDF(Bidirectional Reflectance Distribution Function 双向反射分布函数)是另外一个比较复杂的反射模型。
:从其它物体上的点x'处沿wi方向到达的光线,这个就可以理解为间接光照。
:两x,x'间(分别属于不同的物体)的几何关系,这个算啥?材质的影响?
:两点x,x'间的可见性关系,取值为0或1,这个是遮蔽关系。
 总结:这个公式的物理意义是什么呢?Le自身发出的光在wi方向的强度+法线半球内所有点发出的间接光照强度对X在wi方向的影响 = X点在wi方向的光的强度。

 

2.蒙特卡洛方法:又称统计模拟方法,是一种以有限采样点代替无限积分估算的一种方法。针对不同的场景,估算方式是有所不同的,这里是要对一个半球面进行均匀分布采样,则:

球谐波光照(Spherical Harmonic Lighting)_第1张图片
 这里的Ex和Ey是x和y轴的两个独立的随机数,Θ为极角,Φ为方位角,它们之间的关系与上式。


 最终由极坐标转为单位x,y,z坐标。

 

 

3.球面亮度信号编码和重建:

在数学领域有一种分析方法叫级数分析法,意思是用一系列的简单规则的函数来描述一个复杂的函数。最有名的就是FFT傅里叶级数,用简单的正弦函数数列来描述复杂的函数。这里我们使用的是伴随勒让德多项式的正交函数,正交函数有正交函数的特性,这里不说用图描述:

球谐波光照(Spherical Harmonic Lighting)_第2张图片
前面的这个f为目标函数,后面的这个为正交基函数b,这里的fXb = C,C是正交系数。

球谐波光照(Spherical Harmonic Lighting)_第3张图片
 最终f由C1B1 + C2B2 + ... + CiBi 这样一个级数列来表示。


 之所以B的级数列能够模仿F,就是由正交基函数的性质决定的。如果函数F和B的结果相同,他们的乘积为一个恒定的C值,如果不同为0,我们肯定是要找相同的啊。

伴随勒让德多项式很复杂,这里只提到其三项性质:

1.
 2.
 3.
 基本性质很直观,无需解释。

总结:从某种意义上来说,SH只是一种光照方式,它与光源的关系是松耦合的,这样SH可以被看作为一种材质。有人说SH的局限性表现在,空间位置的相对固定,我暂时没有看出来,在VPL中是可以用到SH的。

 

你可能感兴趣的:(高级渲染)