RTR 4 Chapter 9

 

9 PBR

Physically Based Shading

9.1 光物理学

光是一种波,波长和颜色相关,记为 λ 。单一波长的光称为单色光 monochromatic light,相反称为 polychromatic light。

可见光的波长在 400 - 700 纳米之间。

光所携带的平均能量称为辐照度 irradiance, 记为 E ,和振幅平方成正比。

光波之间是线性叠加,总的光波等于各光波之和。 两束线性叠加的相同波,振幅是原来的2倍,辐照度是原来的4倍。也可能发生相反叠加互相抵消。这种叠加称为干涉。干涉不违反能量守恒。

发出光的物体叫光源,光是由于电子被激发转化为光能产生的。

光在介质中传播中会发生散射。各个波长的波自行散射互不影响。介质分子对散射有波长偏好,短波散射更严重。分子之间散射的波会发生干涉。

影响散射的几种因素

9.1.1 粒子 分子越聚集,散射越强。同样密度,集聚的粒子提供的散射加成是平方级别,所以集聚的云雾比空气本身散射更强。散射分为瑞利散射、米散射和丁达尔散射。

9.1.2 介质 在均一介质中,光波沿直线前进,但是速度和振幅可能会不同。不同介质中速度的比值称为折射率 IOR,记为n。能吸收光线的介质,光线振幅会变化,振幅减少和传播距离成指数正比,比值称为衰减率 κ ,n + iκ 称为复折射率。折射率和衰减率都有波长偏好。

9.1.3 表面 物体的表面是折射率的分界线,表面的形状和物理成分都会影响光的行为。光在介质发生变化的点发生散射,相位不变的进入物体发生透射,相位相反的光发生反射。透射和反射的光频率不变,波长和光速会发生变化。斯奈尔法则。

折射率的改变也可以是连续的如热空气。折射率相同的物体会隐藏其边缘。

物体微表面有凹凸,远小于波长的凹凸对光线不起作用,远大于波长的凹凸不影响局部的平滑度。

大的凹凸用建模模拟,小的用微平面模型模拟,抽象为粗糙度。

次表面散射

透射的光线进入物体又散射出来,入射点和出射点小于1像素的称为局部次表面散射,用漫反射 diffuse 模拟。大于1像素的称为全局次表面散射。

9.2 摄像机

传统摄像机/针孔相机,机身、光圈、镜头限制了进光方向,所以能够成像。计算机离散地模拟光线,从离散的信号重建连续,所以需要抗锯齿。

9.3 BRDF

BRDF 双向反射分布函数,记作 f(l,v). BRDF与空间位置和入射角出射角的角度相关。一般空间位置即决定了BRDF本身,所以一般入射角和出射角各两个自由度四个参数,各向同性的入射角有三个参数。

反射公式 L(v) = ∫ f(l,v)L(l)(nl) dl ,需要求球面积分。

一般BRDF可以保证能量守恒,不能保证光路可逆。

双向半球反射率 R(l),半球双向反射率 R(v)。如果二者相等则满足光路可逆。

最简单的常数BRDF就是兰伯特公式 f(l,v) = ρ/π.

9.4 光照

全局光照的入射光需要从场景中计算,局部光照的入射光可以直接使用。

点光源的强度和距离平方成反比。

多光源情况下,分别计算再加和。

注意论文里可能忽略的 1/π 因数。

9.5 菲涅尔反射

反射公式 r = 2(nl)n - l.

外反射:光从空气到物体,通常的形式。 内反射:光从物体到空气。

折射率 n 等于 真空光速c除以介质中光速,一定大于等于1. F0 = ((n-1)/(n+1))^2.

菲涅尔效应和入射角相关,出于方便一般以 n 和 l 为参数。

Schick 拟合公式: F ≈ F0 + (1 - F0)(1-max(0,nl))^5. 更复杂的 Schlick: F ≈ F0 + (F90 - F0)(1- max(0,nl))^(1/p).

根据菲涅尔效应不同,材质分为三种:电介质(非金属,电阻率超过 10欧/厘米),金属,半导体。

电介质的 F0 非常低,对波长不敏感,常用值是 0.04. 金属的 F0 非常高,对波长敏感,一般用 RGB 表示。金属会把透射光吸收掉,所以没有次表面散射(diffuse)也不会有透明,所有的可见效果都来自反射。 半导体的 F0 介于 0.2-0.45 之间。如宝石、硅和钛。

9.6 && 9.7 微表面

微表面理论认为物体表面有微小凹凸,可以用统计理论建模。微表面之间会有遮蔽、掩盖和内反射。 微表面也会影响次表面散射。

描述微平面的基本参数: 法线分布函数 NDF ,记作 D(m) 可见性函数 G1(m,v),数学上符合要求的 G1 只有两种:Smith 和 Torrance-Sparrow。 Smith 函数配合 NDF 使用时,需要一个和特定 NDF 相关的 λ 函数。 计算总的 BRDF 时,有 G2 = G1(m,l)G1(m,v),以模拟入射光和出射光两方面的可见性。

总的微平面BRDF中,引入了 h 半向量代表微平面法线 m,因为考虑到镜面反射,只有法线 m 恰好介于 l 和 v 之间的微平面才能被观察到。 D(h) 代表微法线恰好为 h 的分布概率 G2(l,v,h) 代表了从光线角度和视线角度都不受到自遮蔽的概率 F(h,l) 代表了反射强度

9.8 表面反射的 BRDF

离散化的高光反射 BRDF:f = F(h,l)G2(l,v,h)D(h)/(4 nl   nv )

各项同性 NDF:Beckman, Blinn-Phong && GGX(Trowbridge-Reitz). GTR, SPD, EPD. 各项异性 NDF 可以从已有的各项同性 NDF 导出。

考虑到微表面之间的内反射的 BRDF。

9.9 散射的 BRDF

表面散射(漫反射)仅针对电介质,金属和半导体没有散射(diffuse = 0)。

光滑表面和粗糙表面的光学模型不一样,这里的光滑和粗糙考虑的是次表面散射距离和微表面的尺度之比。 如果微表面尺度较大,就会在微表面尺度上影响SS,需要使用较粗糙(考虑微表面)的散射模型。 如果SS距离较大,微表面就可以视为对SS没有影响,使用较光滑(不考虑微表面)的散射模型。

diffuse 和 specular 之间基于能量守恒,需要分别计算系数再相加。

9.10 布料的 BRDF

9.11 考虑波性质的 BRDF

9.12 多层材质的 BRDF

9.13 材质的融合和滤波