主要是Advanced Global Illuminations第四章的内容。

渲染方程

简要地复习一下渲染方程,首先是原版:

这是个第二类Fredholm积分方程,其中表示从位置发射的辐射亮度;是自发光项;处法线;是以为中心的半球立体角;是BRDF,其形式化定义为:

通常,BRDF函数的两个方向参数是对称的,所以也可以写做甚至

表示从处向方向发射射线所获得的最近交点,,则有:

上述积分是在的半球立体角上进行的,也可以把它改写成在场景中所有表面上的形式:

其中为场景中任两个表面点间的几何因子。

这些公式都是出射的,也可以写出入射形式:

重要性函数

由于无法无限精确地表示场景中所有点朝所有方向的辐射亮度,几乎所有的照明算法都是在计算一些点集朝一些方向的辐射亮度均值。设表示希望纳入计算的、局部的表面点集和方向,则:

若定义:

上的平均辐射亮度可以被表示为:

这个Importance函数的意义是什么呢?给定场景中某个感兴趣的集合,若将某单个的放置在场景的某个表面点上,它会对产生的贡献可以用来衡量中的“重要程度”。形式化地,可以将定义如下:

其中。重要性函数值仅与场景的几何和材质特征有关,传递方式与辐射亮度的传播相似。

由于重要性函数的定义形式和入射版本的渲染方程一模一样,于是可以对照着定义一个出射版(可以理解为某种“重要性发射器”)。令,容易证明:

有了重要性函数,在实际计算辐射通量的时候,间接传播所作的贡献都被重要性函数纳入怀中了,因此有下面两个等价的公式:

这样一来,我们就有了两种计算全局照明的思路:从出发按照渲染方程“寻找”光源,或是从光源出发,计算光源对的重要性函数。

伴随方程

首先引入两个线形算子:

表示出射辐射亮度,表示入射辐射亮度,类似,则有:

现定义上的出射函数和入射函数间的内积为:

则:

容易验证,即的伴随算子,于是乎:

全局反射分布

一切都来自于,这一关系由辐射亮度的传输方程给出。但是传输方程给出的式子是递归的,接下来给出一个非递归版本,称为全局反射分布函数(GRDF),记作。GRDF描述了场景中任意两处之间的光照传输属性,它满足:

上式两边微分可得:

事实上,BRDF可以被看作GRDF的一种特例。

有了GRDF过后,辐射通量可以这样计算:

GRDF的好处在于,它提供的光照传输描述仅仅依赖于场景几何与材质。尽管重要性函数也具有这一特征,但它依赖于特定的。话虽如此,由于参数空间维度太高,很难直接计算GRDF,而多采用蒙特卡罗之类的方法来估计。著名的双向路径追踪算法就可以被认为是基于GRDF的。