Loading... # Lec 17 ~ 18:材质与表现 Material and Appearance ## 1. 材质 Material 材质本质上就是BRDF的定义,用于规定光线反射的规则 ### 1.1 漫反射材质 Diffuse / Lambertian Material ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211110231450.png?x-oss-process=image/resize,p_45) 之前我们再Blinn-Phong光照模型中经验地定义了$\rm{intensity}/R^2$ 。这里我们进行一些更准确的定义。 - 漫反射:无论哪个方向的光进来,都会被均匀地反射到四面八方去 现在我们假设一个场景内,入射光线是来自四面八方**整个半球**,而是**均匀的**,即每一个方向来的入射radiance都是一样的。 这也意味着**每一个入射光和出射光都是一样**的,每个方向都有,且都是均匀的。(BRDF $f_r$ 和入射光线 $L_i$ 都是常数,任意 $L_o = L_i$) 同时假设这个物体不发光,也不吸收光,考虑能量守恒定律,也就是进来的光的能量多少,出去也得多少能量 利用渲染方程写出: ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211110232754.png?x-oss-process=image/resize,p_65) 立体角微元在半圆球面上的$\cos{\theta}$ 的积分是$\pi$,这个可以用立体角微元的定义计算得出 因为$L_o = L_i$,所以可得$f_r=1/\pi$,这是物体表面完全不吸收能量的情况 那么我们可以定义一个反射率(albedo)$ρ$,它在0到1之间,于是有了它就可以引入不同颜色的变化。也就是$f_r=ρ/π$,所以漫反射系数的大小是$[\ 0,\ 1/π\ ]$ ### 1.2 光泽材质 Glossy Material 反射情况介于镜面反射和漫反射之间的材质,我们称为Glossy Material ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211111012547.png?x-oss-process=image/resize,p_45) ### 1.3 理想 反射/折射 材质 Ideal reflective / refractive material 能够反射和折射的材质叫理想反射/折射材质 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211111012708.png?x-oss-process=image/resize,p_45) #### 1.3.1 完美镜面反射 完美镜面反射的**入射角等于出射角**。其BRDF比较复杂 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211111013708.png?x-oss-process=image/resize,p_45) #### 1.3.2 镜面折射 Specular Refraction ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211111015554.png?x-oss-process=image/resize,p_45) **折射定律**(Snell’s Law): ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211111015706.png?x-oss-process=image/resize,p_45) 不会发生折射的**全反射现象**:入射介质折射率大于出射介质的折射率时,有可能发生 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211111020044.png?x-oss-process=image/resize,p_45) BRDF中的R表示的是反射(Reflect) 的意思。所以折射也有一个对应的BTDF(Transmit),两者统称BSDF (Scatter) 双向散射分布函数 #### 1.3.3 菲涅尔项 Fresnel Reflection / Term 我们有这么一个例子,一本书靠在墙边,我们从上到下不同视角看它。 我们发现一个问题,我们类似垂直看下去,几乎看不到什么反射。但是几乎平着看过去,反射特别明显。所以有多少光被反射,是和入射光与法线的角度有关系的。用菲涅尔项我们就可以**判定有多少能量被反射,有多少能量被折射** ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211112005226.png?x-oss-process=image/resize,p_45) 下图为对某个折射率为1.5的绝缘体的菲涅尔项数据。正常情况为实线,角度与反射的情况(虚线为光的极化性质,光只沿着S或者P的方向振动的时候,一般不考虑) 举个例子,在生活中,比如坐在大巴车上,我们看自己旁边的窗户,比较容易看到外面去,但是看着前后几排的窗户,可能只有反射 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211112005307.png?x-oss-process=image/resize,p_35) 对于导体来说又是另一种菲涅尔项。所以古代用铜镜和银镜,其实也是因为它们的反射率一直都挺高的 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211112010356.png?x-oss-process=image/resize,p_35) ### 1.4 微表面材质 Microfacet Material 下图为一张空间站实拍照片。可以看到,地球的陆地部分从遥远的太空看过去并不是实际上的那样有凹凸不平的地形细节,而更像是一块平面,有些高光。但又不完全光滑,带一些粗糙。 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211112011255.png?x-oss-process=image/resize,p_45) 所以我们提出如下假设:离得足够远的时候,微小的东西往往看不见,看见的是最后汇聚起来总体的样子 微表面模型假设物体表面是粗糙的,从远处看是一个粗糙的平面(从远处看到的是外观,下图虚线);从近处看可以看到凹凸不平的表面,并且每一个表面的微元都是完完全全镜面反射的物体,都有各自的朝向和法线(从近处看到的是几何,下图凹凸不平的材质) ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211112021142.png?x-oss-process=image/resize,p_85) 微表面材质的BRDF: 我们可以用**微表面的法线分布**来区分“光滑”和“粗糙”。法线向量相对集中即为光滑镜面反射,否则即为粗糙漫反射 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211112021546.png?x-oss-process=image/resize,p_45) F为菲涅尔项,考虑入射和半程向量的关系 D为法线分布,考虑查询半程向量是否在法线分布上 G为几何项,考虑可能发生互相遮挡,有些微表面会失去它的作用。在几乎和表面平行的光线上容易发生互相遮挡的现象,我们把这种光线角度称为Grazing Angle,G这一项就是为了修正它,让它不要过亮 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/20211112021928.png?x-oss-process=image/resize,p_45) ### 1.5 各向异性 / 各向同性 材质 Isotropic / Anisotropic Materials 下图是电梯间内部的图,我们发现高光是条状的,这和我们之前椭圆状的高光的认识不符 这也是由于材质造成的,这是被磨过的金属造成的高光 于是我们引出了接下来区分材质的方法,各向同性与各向异性材质 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/image-20211112112135792.png?x-oss-process=image/resize,p_50) 各向同性,我们认为它的微表面并不存在一定的方向性 各向异性,我们认为它的微表面存在方向性 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/image-20211112112630230.png?x-oss-process=image/resize,p_30) 反映在BRDF上的效果:如果这个BRDF在方位角上旋转得不到相同的BRDF(同一个位置,同一个入射角度,不同的入射方向,得到不同的BRDF),我们就叫它是各向异性材质 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/image-20211112114659794.png?x-oss-process=image/resize,p_50) 例子:一个锅的锅底是绕着圈刷的,而锅壁则是竖直方向刷的,所以导致下图的不同形状的高光 ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/image-20211112115237898.png?x-oss-process=image/resize,p_50) ## 2. 总结BRDF - **非负性** $$ f_r(\omega_i \rightarrow \omega_r) \ge 0 $$ - **线性** 可以把BRDF拆成很多块,分别进行光线传播,最后的结果加起来也是一样的 $$ L_{r}\left(\mathrm{p}, \omega_{r}\right)=\int_{H^{2}} f_{r}\left(\mathrm{p}, \omega_{i} \rightarrow \omega_{r}\right) L_{i}\left(\mathrm{p}, \omega_{i}\right) \cos \theta_{i} \mathrm{~d} \omega_{i} $$ ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/image-20211112142851902.png?x-oss-process=image/resize,p_50) - **可逆性** 交换入射方向和出射方向的角色,得到的BRDF一定是完全严格一样的 $$ f_r(\omega_i \rightarrow \omega_r) = f_r(\omega_r \rightarrow \omega_i) $$ ![](https://irimskyblog.oss-cn-beijing.aliyuncs.com/content/image-20211112143647992.png?x-oss-process=image/resize,p_50) - **能量守恒** BRDF绝不可能让能量变多 $$ \forall \omega_{r} \int_{H^{2}} f_{r}\left(\omega_{i} \rightarrow \omega_{r}\right) \cos \theta_{i} \mathrm{~d} \omega_{i} \leq 1 $$ 最后修改:2021 年 11 月 12 日 02 : 52 PM © 允许规范转载