Here we will discuss smooth-surface subsurface models. These are appropriate for modeling materials where the surface irregularities are smaller than the subsurface scattering distances. Diffuse shading is not directly affected by surface roughness in such materials. If the diffuse and specular terms are coupled, which is the case for some of the models in this section, then surface roughness may affect diffuse shading indirectly.
这里我们将讨论光滑表面的地下模型。这适用于对表面不规则性小于次表面散射距离的材料进行建模。这种材质的表面粗糙度不会直接影响漫反射明暗度。如果漫射项和镜面反射项是耦合的,这是本节中某些模型的情况,那么表面粗糙度可能会间接影响漫射着色。
As mentioned in Section 9.3, real-time rendering applications often model local subsurface scattering with a Lambertian term. In this case the BRDF diffuse term is ρss over π:
如9.3节所述,实时渲染应用程序通常使用朗伯项来模拟局部地下散射。在这种情况下,BRDF扩散项为ρss除以π:
The Lambertian model does not account for the fact that light reflected at the surface is not available for subsurface scattering. To improve this model, there should be an energy trade-off between the surface (specular) and subsurface (diffuse) reflectance terms. The Fresnel effect implies that this surface-subsurface energy trade-off changes with incident light angle θi. With increasingly glancing incidence angles, the diffuse reflectance decreases as the specular reflectance increases. A basic way to account for this balance is to multiply the diffuse term by one minus the Fresnel part of the specular term [1626]. If the specular term is that of a flat mirror, the resulting diffuse term is
朗伯模型没有考虑在表面反射的光不能用于次表面散射的事实。为了改进这个模型,应该在表面(镜面)和次表面(漫反射)反射项之间进行能量平衡。菲涅耳效应意味着这种表面-次表面能量平衡随着入射光角度θi而变化。随着掠射入射角的增加,漫反射率随着镜面反射率的增加而降低。解释这种平衡的一个基本方法是将漫射项乘以1减去镜面反射项的菲涅耳部分[1626]。如果镜面反射项是平面镜的反射项,则产生的漫射项为
If the specular term is a microfacet BRDF term, then the resulting diffuse term is
如果镜面反射项是微表面BRDF项,则最终的漫射项为
Equations 9.62 and 9.63 result in a uniform distribution of outgoing light, because the BRDF value does not depend on the outgoing direction v. This behavior makes some sense, since light will typically undergo multiple scattering events before it is reemitted, so its outgoing direction will be randomized. However, there are two reasons to suspect that the outgoing light is not distributed perfectly uniformly. First, since the diffuse BRDF term in Equation 9.62 varies by incoming direction, Helmholtz reciprocity implies that it must change by outgoing direction as well. Second, the light must undergo refraction on the way out, which will impose some directional preference on the outgoing light.
等式9.62和9.63导致出射光的均匀分布,因为BRDF值不取决于出射方向v,这种行为有一定的意义,因为光在重新发射前通常会经历多次散射事件,因此其出射方向将被随机化。然而,有两个理由怀疑出射光的分布并不完全均匀。首先,由于方程9.62中的扩散BRDF项随入射方向而变化,亥姆霍兹互易性意味着它也必须随出射方向而变化。第二,光在出射时必须经历折射,这将对出射光施加一些方向偏好。
Shirley et al. proposed a coupled diffuse term for flat surfaces that addresses the Fresnel effect and the surface-subsurface reflectance trade-off, while supporting both energy conservation and Helmholtz reciprocity [1627]. The derivation assumes that the Schlick approximation [1568] (Equation 9.16) is used for Fresnel reflectance:
Shirley等人提出了平坦表面的耦合漫射项,解决了菲涅耳效应和表面-次表面反射率的权衡,同时支持能量守恒和亥姆霍兹互易[1627]。推导过程假设Schlick近似[1568](方程9.16)用于菲涅耳反射率:
Equation 9.64 applies only to surfaces where the specular reflectance is that of a perfect Fresnel mirror. A generalized version that can be used to compute a reciprocal, energy-conserving diffuse term to couple with any specular term was proposed by Ashikhmin and Shirley [77] and further refined by Kelemen and Szirmay-Kalos [878]:
方程9.64只适用于镜面反射率为理想菲涅耳镜的表面。Ashikhmin和Shirley [77]提出了一个广义版本,可用于计算与任何镜面反射项耦合的倒数、能量守恒扩散项,并由科莱蒙和Szirmay-Kalos [878]进一步完善:
Here, Rspec is the directional albedo (Section 9.3) of the specular term, and Rspec is its cosine-weighted average over the hemisphere. The value Rspec can be precomputed using Equation 9.8 or 9.9 and stored in a lookup table. The average Rspec is computed the same way as a similar average we encountered earlier: RsF1 (Equation 9.57).
这里,Rspec是镜面反射项的方向反照率(第9.3节),是半球上的余弦加权平均值。值Rspec可以使用等式9.8或9.9预先计算,并存储在查找表中。平均的计算方法与我们前面遇到的类似平均值(方程9.57)相同。
The form in Equation 9.65 has some clear similarities to Equation 9.56, which is not surprising, since the Imageworks multiple-bounce specular term is derived from the Kelemen-Szirmay-Kalos coupled diffuse term. However, there is one important difference. Here, instead of RsF1 we use Rspec, the directional albedo of the full specular BRDF term including Fresnel, and with the multiple-bounce specular term fms as well, if one is used. This difference increases the dimensionality of the lookup table for Rspec since it depends not only on the roughness α and elevation angle θ,but on the Fresnel reflectance as well.
方程9.65中的形式与方程9.56有一些明显的相似之处,这并不奇怪,因为Imageworks的多次反射镜面反射项是从科莱蒙-西梅-卡罗斯耦合漫射项中导出的。然而,有一个重要的区别。这里,我们使用Rspec代替RsF1,Rspec是包括Fresnel在内的全镜面BRDF项的方向反照率,如果使用多次反射镜面反射项fms的话,也是如此。这种差异增加了Rspec的查找表的维数,因为它不仅取决于粗糙度α和仰角θ,还取决于菲涅耳反射率。
In Imageworks’ implementation of the Kelemen-Szirmay-Kalos coupled diffuse term, they use a three-dimensional lookup table, with the index of refraction as the third axis [947]. They found that the inclusion of the multiple-bounce term in the integral made Rspec smoother than RsF1, so a 16×16×16 table was sufficient. Figure 9.41 shows the result.
在Imageworks的科莱蒙-西梅-卡罗斯耦合漫射项的实现中,他们使用三维查找表,将折射率作为第三轴[947]。他们发现积分中包含多次反弹项使得Rspec比RsF1更平滑,因此16×16×16的表格就足够了。图9.41显示了结果。
Figure 9.41. The first and third rows show a specular term added to a Lambertian term. The second and fourth rows show the same specular term used with a Kelemen-Szirmay-Kalos coupled diffuse term. The top two rows have lower roughness values than the bottom two. Within each row,roughness increases from left to right. (Figure courtesy of Christopher Kulla [947].)
图9.41。第一和第三行显示了添加到朗伯项的镜面反射项。第二和第四行显示了与科莱蒙-斯尔梅-卡罗斯耦合漫射项一起使用的相同的镜面反射项。顶部两行的粗糙度值低于底部两行。在每一行中,粗糙度从左到右增加。(图由克里斯托弗·库拉[947]提供。)
If the BRDF uses the Schlick Fresnel approximation and does not include a multiple-bounce specular term, then the value of F0 can be factored out of the integral. Doing so allows us to use a two-dimensional table for Rspec, storing two quantities in each entry, instead of a three-dimensional table, as discussed by Karis [861]. Alternatively, Lazarov [999] presents an analytic function that is fitted to Rspec, similarly factoring F0 out of the integral to simplify the fitted function.
如果BRDF使用Schlick Fresnel近似,并且不包括多次反射镜面反射项,则F0的值可以从积分中分解出来。这样,我们就可以使用二维表格进行Rspec,在每个条目中存储两个量,而不是像Karis [861]所讨论的那样使用三维表格。或者,拉扎洛夫[999]提出了一个适合Rspec的解析函数,类似地将F0从积分中分解出来以简化拟合函数。
Both Karis and Lazarov use the specular directional albedo Rspec for a different purpose, related to image-based lighting. More details on that technique can be found in Section 10.5.2. If both techniques are implemented in the same application, then the same table lookups can be used for both, increasing efficiency.
卡里斯和拉扎洛夫都将镜面方向反照率用于不同的目的,与基于图像的照明相关。有关该技术的更多详细信息,请参见第10.5.2节。如果这两种技术在同一个应用程序中实现,那么可以对两者使用相同的表查找,从而提高效率。
These models were developed by considering the implications of energy conservation between the surface (specular) and subsurface (diffuse) terms. Other models have been developed from physical principles. Many of these models rely on the work of Subrahmanyan Chandrasekhar (1910–1995), who developed a BRDF model for a semiinfinite, isotropically scattering volume. As demonstrated by Kulla and Conty [947], if the mean free path is sufficiently short, this BRDF model is a perfect match for a scattering volume of arbitrary shape. The Chandrasekhar BRDF can be found in his book [253], though a more accessible form using familiar rendering notation can be found in Equations 30 and 31 of a paper by Dupuy et al. [397].
这些模型是通过考虑表面(镜面)和次表面(漫射)项之间能量守恒的含义而开发的。其他模型是从物理原理发展而来的。其中许多模型依赖于苏布拉马尼扬·钱德拉塞卡(1910–1995)的工作,他开发了一个用于半无限各向同性散射体的BRDF模型。正如Kulla和Conty [947]所证明的,如果平均自由程足够短,该BRDF模型与任意形状的散射体完全匹配。Chandrasekhar BRDF可以在他的书[253]中找到,尽管在Dupuy等人[397]的一篇论文的方程30和31中可以找到使用熟悉的渲染符号的更容易获得的形式。
Since it does not include refraction, the Chandrasekhar BRDF can be used to model only index-matched surfaces. These are surfaces where the index of refraction is the same on both sides, as in Figure 9.11 on page 304. To model non-indexmatched surfaces, the BRDF must be modified to account for refraction where the light enters and exits the surface. This modification is the focus of work by Hanrahan and Krueger [662] and Wolff [1898].
由于不包括折射,Chandrasekhar BRDF只能用于模拟折射率匹配的表面。这些表面的折射率在两侧是相同的,如图9.11所示。为了模拟非指数匹配的表面,必须修改BRDF以考虑光进入和离开表面的折射。这种修改是汉拉汉和克鲁格[662]和沃尔夫[1898]的工作重点。