学习笔记:pbrt中的次表面反射函数采样II

上一篇笔记中介绍了在次表面散射过程中进行采样的相关内容,并在可分离次表面散射模型中实现了采样的大部分内容,不过对于与入射点和出射点距离相关的函数的采样及其概率密度仍然未被实现,因而可分离次表面散射模型仍然是接口。以该接口为基础,实现了一种列表式的次表面散射模型。该模型就给出了入射点和出射点距离相关的函数的采样及其概率密度的一种实现。关于前者的实现,实际上是调用之前已经实现的模型来得到距离的采样结果。此处,书中选择调用了一种傅里叶级数形式的BSDF采样函数,该函数需要输入一个表格形式实现的BSSRDF的关于反射率的采样信息,关于半径的采样信息,分布函数信息,光谱通道信息等。既然是表格形式存储的上述信息,就必然涉及到插值工作,书中选择使用样条插值。表格中的行和列分别选为反射率和半径。在对表格中的数据进行采样时,同时返回表格中的数值和该处的权重,然后由表格该处附近的数据和权重加权求和后得到采样结果。在计算概率密度时,实际上计算的是只考虑半径,不考虑反射率的情况,因而是一种边际概率密度,需要除以关于反射率的相关系数才能得到。总体而言,书中该部分内容写得并不详细,个人对这一部分的理解还是比较模糊的。

完成次表面反射模型的采样工作后,就可以按照蒙特卡罗积分方法进行求解了。求解时,首先把入射辐照度划分为由直接光照产生的入射辐照度和由间接光照产生的入射辐照度两部分。在已知出射方向和出射点的情况下,直接采样产生入射点位置,并相应地得到入射点处的BSDF。然后在入射点处对入射方向进行采样。对于间接光照而言,就有很多现成的方法用于该部分内容的计算了,其中针对表面散射的路径积分方法基本上可以直接拿来进行使用,只不过是进行相交判断后所得到的相交体变量类型发生了变化。对于直接光照而言,可以采用均匀单元光源采样的方式进行相关计算。

你可能感兴趣的:(学习笔记:pbrt中的次表面反射函数采样II)