二次NDF首次给出精确多重散射的初等闭式BRDF

An Elementary Expression for Multiple Scattering in Homogeneous Microflake Media

Jonathan Dupuy

cs.GR

2026-09-17

用无参数二次NDF解析求和全部散射阶,得到闭式BRDF (zi+zo)/π(1+ωi·ωo)。法向入射等于Lambert,掠射向镜面收束,两个均匀随机数即可采样。

这篇在解决什么

Smith 微面元理论把粗糙表面当成一堆随机朝向的小镜面。现行标准的 Smith 阴影假设认为,小镜面朝向和它在表面上的位置统计独立。这样一来,表面反射等价于半无限参与介质里的随机游走:光线钻进去,撞到微片再弹开,直到从边界逃出。BRDF 就是逃逸方向的分布。

完整输运几乎写不出闭式。现有模型只能拆成两条路。只算单次散射,求值和采样都有初等公式,但丢掉多次反射的能量。用随机游走把所有散射阶都算上,能量守恒,却没有初等闭式。Heitz 等人 2016 年的随机多重散射、Bitterli 与 d'Eon 的无位置路径积分、Cui 等人基于不变原理的多弹跳,都停在随机表示或递推上。一篇 Smith 微面元 BRDF 能不能既精确包含全部散射阶、又有初等求值和直接采样,此前是开着的。

方法

Dupuy 把表面建成均匀、半无限、镜面微片介质。输运完全由法线分布函数 NDF 决定:碰撞服从 Beer-Lambert 定律,方向按镜面相位函数偏转。介质在水平方向均匀,只需跟踪垂直深度。

关键收窄有两步。

最终 BRDF 是 fr(ωi, ωo)=(zi+zo)/(π(1+ωi·ωo))。zi、zo 是入射、出射方向与表面法线的余弦。法向入射时 zi=1 且点积等于 zo,公式退化成 1/π,就是 Lambert。掠射时能量往镜面方向收。

采样把这个式子读成 Poisson 核的 Jacobian。McCullagh 的弦变换做法是:在正交投影圆盘上先均匀抽半径,再用入射方向构造的枢轴把等半径圆周做一次映射,两个均匀随机数直接抽到目标密度。同一套几何也给出二次相位函数的采样。

推导过程还复现了已知结果。各向同性微片的前两阶就是 Chandrasekhar BRDF 的对应项。单侧均匀 NDF 等于粗糙度 α=1 的 GGX,其一阶是已知公式,二阶这篇给出了新的闭式。均匀 NDF 加不完整个级数,所以才换成二次。

结果

没有 RMSE、PSNR 这类表。验证走两条线:随机游走直方图对闭式,以及渲染对比。

Figure 7 在入射角 0°、45°、80° 上,用二次 NDF 跑随机游走得到直方图,和公式贴在一起。0° 时分布是常数,和 Lambert 一致;80° 时明显不对称,能量堆到圆盘对侧。

Figure 8 用方向光绕球,对照四组:闭式本身、同一 NDF 的随机游走、Lambert、α=1 且微面全反射的 GGX(单次与多次)。闭式和随机游走几乎看不出差,差别主要是随机游走的方差。相对 Lambert,掠射时高光收束更明显。相对 GGX 单次散射,后者更暗,因为丢掉了互反射能量;GGX 多次散射把这部分能量找回来,外观更接近这篇,但那条路没有初等公式。

Figure 9 用 uffizi.hdr 做图像照明。这篇看起来接近漫反射,但仍保留随入射方向变化的响应。单次 GGX 偏暗,多次 GGX 能量回来。

能量守恒是构造保证的:只要下行方向的投影面积 σ>0,随机游走几乎必然逃出,级数又把所有阶加完。

为什么重要

对做渲染的人,这是一张能直接写进着色器的公式:求值是几次加减乘除,采样是两次均匀随机数加一次圆盘变换,没有循环、没有随机游走、没有查找表。它证明「精确多重散射加初等闭式」在 Smith 框架里不是空集。

它替换不了 Disney 或 GGX 工作流里的通用材质。NDF 没有粗糙度参数,外观被钉死在「法向 Lambert、掠射收束」这一条曲线上。以后要找带粗糙度的闭式,至少知道二次这一支能走通,均匀 GGX 那一支加不完。

致谢里写得很直白:二次 NDF 是作者拿 2022 年的笔记去问 ChatGPT 5.6 才找到的。作者原先认定,最简单的均匀单侧 NDF 如果不行,别的也没戏。这个故事改变不了公式本身,但说明「找一个能积出来的分布」这类问题,模型搜索已经能帮忙。

局限与存疑

作者自己点出的硬限制:二次 NDF 没有粗糙度,能代表的外观范围窄。带参数的模型能不能保住这种闭式,文中明确说还不知道。

实验侧几乎全是视觉对比。没有能量积分的数值表,没有与 Heitz 2016、Bitterli 与 d'Eon、Cui 2023 的误差或方差定量对照,也没有着色器周期、路径长度这类性能数字。随机游走对照用的是同一套二次 NDF,验证的是推导有没有算错,不是和其他多重散射模型比谁更准。

BRDF 还假定微片全是理想镜面、介质均匀半无限、Smith 独立假设成立。真实表面的相关高度、各向异性、菲涅尔、透射,这篇都没覆盖。采样算法给了伪代码,没有附实现。

术语

原文与代码

社区讨论

相关论文

全部论文解读