符号约定:n 为宏观表面法线,v 为视线方向,l 为入射光方向,h=∥v+l∥v+l 为半程向量(微平面法线),α=roughness2 为重映射后的粗糙度参数。该光照模型在延迟管线中的 Pass 组织方式参见 [[FrameGraph 资源生命周期与渲染管线对比]]。
反射方程与 Cook-Torrance BRDF
不发光表面的出射辐射度由半球积分反射方程给出:
Lo(p,v)=∫Ωfr(p,l,v)Li(p,l)(n⋅l)dωi
在金属度-粗糙度(Metallic-Roughness)工作流中,双向反射分布函数 fr 拆分为漫反射项与镜面反射项:
fr(l,v)=kdπcalbedo+4(n⋅v)(n⋅l)D(h,α)G(n,v,l,α)F(v,h,F0)
微表面三项公式对照
| 物理项 | 常用模型 | 表达式 | 物理含义 |
|---|
| 法线分布 D | Trowbridge-Reitz GGX | DGGX(h)=π((n⋅h)2(α2−1)+1)2α2 | 朝向半程向量 h 的微平面面积统计密度 |
| 几何遮蔽 G | Height-Correlated Smith | G(v,l)=(n⋅v)α2+(1−α2)(n⋅l)2+(n⋅l)α2+(1−α2)(n⋅v)22(n⋅l)(n⋅v) | 微平面间自阴影与掩蔽的联合概率 |
| 菲涅尔项 F | Schlick 近似 | F(v,h)=F0+(1−F0)(1−(v⋅h))5 | 不同掠射角下的反射能量比例 |