材质和外观
材质 == BRDF
漫反射
- 任何方向的光进来都会被均匀的反射到周围各个不同的方向上去
假设能量守恒,那么 Li = Lo,这之后BRDF就 = ,就可以定义一个反照率 (Albeo) - ,在(0 - 1)之间
这样就可以引入不同颜色的BRDF,BRDF = ,BRDF在 (0 ,)之间
Glossy
玻璃 水
反射方向的计算
平行四边形法则:wi + wo 值沿着法线方向,n 又相当于 wi 投影到法线方向上的长度
右边那张正方形是左边这张从顶点往下看
折射(BTDF ,Transmit )
Snell`s law 折射定律
(0i,θt这两个角满足和折射率相乘,结果相等的关系)
折射率
求余弦是为了算出一个有意义的实数,如果结果得不到一个有意义的实数,那么说明这个折射不可能发生
什么时候有意义呢?当根号里的值 > 0的时候(从式子可以看出来,当 (i) > (t) 时,即入射光的折射率 > 折射光的折射率的时候,有可能会不发生反射。不发生折射,就是全反射现象的条件
BRDF + BTDF = BSDF (散射,scatter)
菲涅尔项
不同角度观察看到的不同
绝缘体(Dielectric):如果入射光线完全与物品处于平行状态(即 x = 90 )处,则认为其将光线完全反射;而入射光线与物体完全垂直(即 x = 0),则认为其光线只有少部分被反射,大部分被吸收了
导体(Conductor)
菲涅尔的计算:
微表面材质
- 当距离足够远时,我们看向一个物体的时候,看不到它表面上微小的东西,我们能看到的是最终她们对表面形成的作用
bumpy 凹凸不平
总结:为表面模型,从远处看,看的是材质外观,从近处看,看的是几何
每一个微表面都认为是一个微小的镜面,每个微表面都有自己的法线方向
- Glossy 材质的微表面的法线方向和宏观上的法线方向差别不大
- 粗糙的材质,微表面的法线方向与宏观上的差别就很大,就会形成漫反射现象
(用微表面法线方向分布情况来描述表面的粗糙程度,微表面法线方向集中是 Glossy,分散是漫反射)
微表面的BRDF计算:
- F:菲涅尔项,描述反射程度(不同入射方向会有不同程度的反射,参考上面菲涅尔的反射图)
- G:几何项,微表面是在物体表面上,有可能会发生被遮挡情况(如右图),就容易发生微表面自遮挡自投影现象
- 。Grazing Angle (掠射角度) : 入射光方向/观察方向接近Grazing Angle (方向与物体平行)
- 。为了修正菲涅尔计算的被遮挡的微表面的反射情况(被遮挡的微表面不发生反射)
- D:法线的分布值(给定一个方向, 在这方向上法线的分布有多少),h是half vector (入射向与出射方向的中间值) ,只有当微表面的法线方向和half vector的方向完全一致的时候, 这样的微表面才能把入射光反射到出射方向上去。(微表面都认为是镜子)
- 。D决定什么样的微表面才能把入射光反射到出射方向上去
区分材质的一类方法
各向同性(Isotropic):按照法线分布来看,各个方向上的法线分布均匀,没有一定的方向性
各向异性(Anisotropic):法线方向有明确的方向性
判断:如果入射光线和出射光线满足按照方位角进行一定旋转后其相对位置不改变的性质,那么该物体就是各向同性
各向异性例子:
BRDF性质:
1,非负性:BRDF的值永远是非负的,表示了一个能量的分布,能量不可能是负的
2.线性性质:可以各个模块分别拆出去进行各种计算,最终各个模块相加
3.可逆性:交换入射光和出射光方向,严格意义上得到的BRDF值是一样的
4.能量守恒:出射光不会大于入射光
- == 1 的情况是入射光完全反射出去,没被吸收
- 回想之前 path tracing 里面光线弹射之后是收敛而不是光线爆炸就是因为能量守恒
各向同性,各向异性(考虑方位角的变化):
- 各向同性材质:可以将四维的计算降为三维。根据可逆性,可以得出相对方位角的计算不用考虑正负