正态分布函数中潜在活跃微面的浓度

Concentration of potentially active microfacets in a Normal Distribution Function

我正在尝试理解 Cook-Torrance Microfacet 模型,目前我停留在正态分布函数 D(Beckmann、Blinn-Phong 或 GGX)。 一些在线资源声称 D 是与表面法线 N 对齐的微面法线 M 的分数D 是分数,它位于 [0,1] 之间。 1, 2

经过一些研究,我了解到 D 是 M 的浓度,与 N 一致。 3, 4

这个浓度值(经过一些测试可以达到 32 甚至更高)对我来说有点不祥。

从这样一个非规范化的值中到底能读出什么?

是否与 M 对齐到 N 的分数有关?

或者我忽略了一些简单的事情?

为了进一步阐述我上面的评论作为这个问题的潜在答案:

你是对的,NDF 给出了微表面法线 MN 完全对齐的统计概率(其中确切的意思是:相对于 [= 周围的无穷小立体角11=] 和 M).

因此,NDF 是一个分布函数(更广泛地说是 "generalized function"),单位为 one over steradians。这意味着,当您将函数的值乘以立体角时,您会得到一个无单位的分数值。 这就是整合发挥作用的地方。

因为,NDF 的最终用途是在渲染方程中确定在 M 的微分立体角内被微面反射的光的分数,其中 M 是两个其他向量 V_oV_i 之间的半向​​量,其中一个向量定义为接收微分表面的 "outgoing direction",另一个定义为 "incoming light direction" . 我们将使用 w_o = outgoing 和 w_i = incoming 方向,但由于互惠性,它真的无关紧要。

当我们求解渲染方程时,我们必须对我们想要遮蔽的表面点的整个半球进行积分(即我们想要计算其沿出射方向的辐射 w_o)以考虑所有沿出射方向w_o可能会从该表面点反射的光。为此,我们必须知道这个点的"irradiance"。为了得到这个,我们评估所有可能的入射光方向的 BRDF w_i 并对它们的贡献求和和平均。

如果我们确实对给定 w_o 方向的所有无限多个 w_i 方向进行采样,并针对每个此类方向询问 NDF,并对 NDF 的余弦加权结果进行平均,结果将始终是正好 1.0,因为如果我们只将 NDF 视为 BRDF 中的一个潜在因素, 所有 沿 w_o 的出射光必须来自 某处 从表面反射时。

并且由于 Helmholtz 互易性,我们可以换句话说:当固定 w_i 方向时(因此只考虑单一方向的光来自)并对所有可能的 outgoing 方向 w_o 并再次对余弦加权 NDF 进行计算和平均,结果将再次恰好 1.0。 因为,当我们再次只考虑 BRDF 中的 NDF 时,入射光总是会反射到某处 而不会丢失。

所以,在写完所有这些之后,NDF 函数的单个样本现在实际上意味着什么?简而言之:这意味着您不会对所有微分立体角进行积分并对结果进行平均,而只是对一个方向进行单个采样,然后将其声明为积分的结果(您仅使用单个样本计算)。所以你基本上用一个样本计算了黎曼和。

或者换句话说:简单地在单个位置对 NDF 进行采样不包含合理的物理 meaning/result。 我希望这能澄清一些未知数。

这实际上是我第一个认真的 Whosebug 回答,我知道我将来肯定可以在编写这些内容时有所改进! 谢谢! :)