材质
某种意义上来说,材质就是决定双向反射分布函数(BRDF)的东西。
漫反射材质
漫反射,代表着光均匀地反射到每一个方向。
假设入射光也是均匀的。
则\(f_r,L_i(\omega_i)\)就是常数。那么渲染方程:
\[L_o(\omega_o)=\int_{H^2}f_rL_i(\omega_i)cos\theta_i d\omega_i \]
\[=f_rL_i\int_{H^2}cos\theta_i d\omega_i \]
\[=\pi f_rL_i \]
所以有
\[f_r=\frac{\rho}{\pi} \]
其中\(\rho\)是反射率。
有光泽的(Glossy)材质
金属材质是一类,金属材质的反射较为集中,但又不是镜子那样的镜面反射。
折射材质
有时会有像玻璃这样的材质,既有反射又有折射。
反射定律
反射角\(\theta_o\)等于入射角\(\theta_i\)。\(\theta=\theta_o=\theta_i\)
并且反射光线和入射光线在同一平面呢。
或者入射光线的立体角\(\omega_i\)与反射光线的立体角\(\omega_o\)与反射面的法单位向量\(\bm n\)之间的关系是
\[\omega_i+\omega_o=2cos\theta\cdot\bm n \]
折射定律
入射角\(\theta_i\)、入射材质的折射率\(\eta_i\)和折射角\(\theta_t\)、折射材质的折射率\(\eta_t\)有如下关系
\[\eta_i sin\theta_i=\eta_t sin\theta_t \]
并且入射光线和折射光线在同一平面内。
如果发生全反射,要从光密介质射到光疏介质里。并且因为:
\[cos\theta_t=\sqrt{1-sin^2\theta_t}=\sqrt{1-\left(\frac{n_i}{n_t}\right)^2sin^2\theta_i} \]
所以全反射时满足
\[1-\left(\frac{n_i}{n_t}\right)^2sin^2\theta_i<0 \]
菲涅尔反射
经常观察到一些现象,比如木桌子上,低角度看过去有反射,高角度看过去没有反射。或者正对玻璃能看到外面,斜对着玻璃可能只能看到反射。
这说明反射率和入射角有关。实际上这和光的偏振有关。
一定功率的入射光被界面反射的比例称为反射比\(R\);折射的比例称为透射比\(T\)。有
\[R+T=1 \]
如果入射光的电矢量垂直于光平面(由入射、反射、折射光线构成的平面)(即\(s\)偏振),则反射比为:
\[R_s=\left[\frac{sin(\theta_t-\theta_i)}{sin(\theta_t+\theta_i)}\right]^2 \]
如果入射光的电矢量在光平面内(即\(p\)偏振),反射比为:
\[R_p=\left[\frac{tan(\theta_t-\theta_i)}{tan(\theta_t+\theta_i)}\right]^2 \]
这两个式子都可以用折射定律和三角恒等式展开。透射比无论如何都满足\(T=1-R\)
如果入射光是无偏振的,即含有等量的\(s,p\)偏振,那么
\[R=\frac{R_s+R_p}{2} \]
显然近垂直入射时
\[R=\left(\frac{n_i-n_t}{n_i+n_t}\right)^2 \]
在图形学中,这个计算过于麻烦,通常会采用Schlick近似
\[R(\theta)=R_0+(1-R_0)(1-cos\theta)^5 \]
\[R_0=\left(\frac{n_i-n_t}{n_i+n_t}\right)^2 \]
微表面材质
假设物体表面是粗糙的。从远处看是平的、粗糙的;从近处看能看到凹凸不平,每一个小平面都是镜面反射。
如果没有凹凸,则是镜面材质。
如果凹凸变化不是很剧烈(法线分布比较均匀),那么会得到一个Glossy的材质。
如果凹凸变化的比较剧烈(法线分布不均匀),那么会得到一个漫反射材质。
微表面材质的BRDF可以如下写
设\(\omega_i\)是入射光线的立体角,\(\omega_o\)是反射光线的立体角,\(h\)是它们的半程向量。\(n\)是宏观表面的法向量,则
\[f_r(\omega_i,\omega_o)=\frac{F(w_i,h)G(\omega_i,\omega_o,h)D(h)}{4(n\cdot\omega_i)(n\cdot\omega_o)} \]
其中\(F\)是菲涅尔项;\(G\)是几何项(阴影遮挡函数),光线可能会被微平面互相遮挡而影响,所以引入此函数;\(D\)是微表面分布函数,决定了有多少微表面的法线朝向\(h\)
各向同性/异性材料
各向异性的材料,由于观察的方位角不同,BRDF不同(即使入射角和反射角相对不变)。
BRDF的性质
非负
\[f_r\geq 0 \]
线性性质
可以把各个方向的BRDF加起来,得到的结果和对这些方向和的BRDF一样。反之也可以拆分BRDF。
可逆性
\[f_r(\omega_r\to\omega_i)=f_r(\omega_i\to\omega_r) \]
能量守恒
能量不会变多,如果物体没有吸收,那么入射多少就会反射多少。
对于各向同性材质
BRDF与方位角无关;方位角指的是光线投影到材质平面上,在材质平面上的角。
BRDF的测量
由于图形学中的公式有估计的成分,BRDF可能与实际值相差很大,有时会用到测量的办法。