BSDF、BSSRDF、BSSTDF、BRDF、BTDF关系
BSDF(双向散射表面分布函数)
BSDF是一个可以插入渲染方程的函数,是渲染方程的核心内容。所有 BxDF 函数输出的结果是:入射光和出射光能量之间的比率的值。
BSSRDF(双向散射表面反射分布函数)
BSSTDF(双向散射表面透射率分布函数)
BRDF(双向反射率分布函数)
BTDF(双向透射率分布函数)
可以认为 BSDF = BSSRDF + BSSTDF
而
BSSRDF = BRDF + SSS(次表面散射Subsurface scattering)
BSSTDF = BTDF + SSS(次表面散射Subsurface scattering)
BRDF
这里先着重介绍下最常见的两种BRDF。
基于微平面理论的Cook-Torrance BRDF
D项:法线分布函数 (Normal Distribution Function,NDF)
G项:几何函数G(l,v,h)和分母中的校正因子4 (n·l)(n·v)会合并为可见性项(The Visibility Term),Vis项,简称V项
F项:菲涅尔方程(Fresnel Equation)
基于迪士尼原则的Disney Principled BRDF
基本原则:
1.艺术导向,并不一定物理正确
2.直观参数,而不是物理类参数
3.参数尽可能少,范围应保持在0到1
4.所有参数组合尽可能健壮且合理
漫反射项(Diffuse):Disney Diffuse
镜面反射项(Specular):
Specular D(法线分布函数):Generalized-Trowbridge-Reitz(GTR)
Specular F(菲尼尔项):Schlick
Specular G(几何遮挡):Smith-GGX
常见的Diffuse BRDF
1.Lambert
2.Oren-Nayar
3.Burley/DisneyDiffuse
4.DiffuseGGX
常见的Specular BRDF
D项:
1.Beckmann
2.Blinn-Phong
3.GGX
4.GGXaniso
G(Vis)项:
1.Kelemen
2.SmithJoint
3.SmithGGX
4.SmithJointAniso
F项:
1.Schlick
2.Gotanta