菲涅耳系数的众所周知的Schlick近似给出以下等式:

$ F = F_0 +(1-F_0)(1-cos(\ theta))^ 5 $

$ cos(\ theta)$等于表面法线向量和视图向量的点积。

我仍然不清楚,尽管我们是否应该使用实际的表面法线$ N $或半个向量$ H $。在基于物理的BRDF中应该使用哪个?为什么?

此外,据我了解,菲涅耳系数给出了给定射线被反射或折射的可能性。因此,我很难理解为什么我们仍然可以在BRDF中使用该公式,该公式应该近似于整个半球的积分。

这种观察将使我认为这是$ H $的所在。会出现,但对我而言并不明显,代表性法线的菲涅耳等效于将所有实际法线的菲涅耳积分。

#1 楼

在Schlick 1994年的论文《基于物理的渲染的廉价模型》中,他们推导出了近似值,公式为:
$$ F _ {\ lambda}(u)= f _ {\ lambda} +(1- f _ {\ lambda})(1-u)^ {5} $$
其中

因此,要回答您的第一个问题,$ \ theta $表示视图之间的夹角向量和一半向量。考虑一分钟,表面是一个完美的镜子。因此:
$$ V \ equiv反射(V')$$
在这种情况下:
$$ N \ equiv H $$
对于基于微面的BRDF,$ D(h_ {r})$项是指面向$ H $的微面法线的统计百分比。也就是,入射光中有多少百分比会在出射方向上反弹。
关于为什么在BRDF中使用菲涅耳,这与BRDF本身仅是整个BSDF的一部分有关。 BRDF衰减光的反射部分,而BTDF衰减折射的光。我们使用菲涅耳来计算反射光与折射光的量,因此可以使用BRDF和BTDF适当地衰减它。
$$ BSDF = BRDF + BTDF \\
$$
$$ \ begin {align *}
L _ {\ text {o}}(p,\ omega _ {\ text {o}})&= L_ {e}(p,\ omega _ {\ text {o} })\ + \ \ int _ {\ Omega} BSDF * L _ {\ text {i}}(p,\ omega _ {\ text {i}})\ left | \ cos \ theta _ {\ text {i}} \ right | d \ omega _ {\ text {i}} \\
&= L_ {e}(p,\ omega _ {\ text {o}})\ + \ \ int _ {\ Omega} BRDF * L _ {\ text {i,反映}}(p,\ omega _ {\ text {i}})\ left | \ cos \ theta _ {\ text {i}} \ right | d \ omega _ {\ text {i}} \ + \ \ int _ {\ Omega} BTDF * L _ {\ text {i,refracted}}(p,\ omega _ {\ text {i}})* \ left | \ cos \ theta _ {\ text {i}} \ right | d \ omega _ {\ text {i}}
\ end {align *} $$
因此,总而言之,我们使用$ D $来获取朝出方向反弹的光的百分比,和$ F $,以找出剩余光将反射/折射的百分比。这两个都使用$ H $,因为这是允许在$ V $和$ V'$
之间进行镜面反射的表面方向。

评论


$ \ begingroup $
哦,我完全想念这已经是本文的结果了。这肯定清除了。 :)我将不得不重新阅读它,以更好地了解它如何适合BRDF。
$ \ endgroup $
–朱利安·盖尔特(Julien Guertault)
16年5月26日9:00



#2 楼

菲涅耳系数应使用$ H $而不是$ N $进行评估。

您写道,


我很难理解为什么我们仍然可以使用该公式在应该近似于整个半球的积分的BRDF中。


不是。 BRDF本身并不近似于整个半球的积分。渲染方程式可以做到:您对所有入射光方向进行积分,但是每次对积分中的BRDF进行评估时,它只能选择一种特定的入射和出射射线方向。

对于微面BRDF,通常的简化假设是,各个微面都是理想的镜面反射器。然后,给定要评估的$ L $和$ V $,唯一可以做出贡献的微观方面是沿着$ H = \ text {normalize}(L + V)$对齐的微观方面,因为那是它们唯一的方法将入射光反射到出射光线。

BRDF中的正态分布函数和可见性因子一起近似估算了从$ L $和$ L $可见的沿$ H $定向的微面的密度。 $ V $个路线。菲涅耳因数是针对这些微面进行评估的,因此正确使用的角度是介于$ L $和$ H $之间的角度,或者等效地是$ V $和$ H $。

有几种情况修改此参数的位置。一种是,如果微面模型假设的不是完美镜面反射性。例如,Oren-Nayar BRDF假定使用Lambertian微面。在这种情况下,BRDF必须在所有可能的微面方向上合并某种积分,这些积分可以将光从$ L $散射到$ V $。这样,BRDF将根本没有标准的菲涅耳因数。还有其他一些公式,可以近似计算在正常半球上积分菲涅耳因子的结果。

实时图形中出现的另一种情况是环境图的反射。确实是正确的,我们应该在所有入射光方向上积分乘以BRDF的环境图,但实际上,我们经常使用主反射矢量$ R = \ text {reflect}(V,N)$对预过滤的环境图进行采样然后将其乘以一些近似的菲涅耳公式,该公式取决于$ R $和$ N $之间的夹角(相当于$ V $和$ N $)以及表面粗糙度。这几乎是一个近似值,但对于实时使用通常足够好。