微表面理论(Microfacet Theory)认为我们看到的表面上的一点是由很多朝向各异且光学平的微小表面组成。当光线从方向照射到这点,而我们在方向观察时,由于光学平面只会将光线反射到关于法线对称的方向,而和已经确定,所以只有法线朝向正好是和的半角向量的微表面才会将光线发射到方向,从而被我们看见。

法线分布函数(Normal Distribution Function,简写为NDF)用来描述微表面法线的概率分布,可以这样理解:向NDF输入一个朝向h,NDF会返回法线是的微表面数占微表面总数的比例,需要注意的是是描述微表面数量的概率分布函数
设一个小平面,面积为,此小平面由更小的微表面组成,其中法线为的微表面的概率为,这些微表面的面积总和为,考虑到法线范围,定义微表面的法线为,范围在立体角之内的所有微表面的表面积为
由于微表面之间的互相遮挡(Shadowing),并不是所有微表面能够接收到光线,还有一部分微表面反射的光线会被阻挡(Masking),还有一部分光线会在微表面之间互相反射. Shadowing和Masking效应用几何衰减因子(Geometrical Attenuation Factor)来表示,用表示

光学平面会将一部分光线反射,一部分光线折射,其中反射光线的比例用菲尼尔方程(Fresnel Equations)计算,用表示,因为菲尼尔函数一般只和光线和法线之间的夹角相关,有时候也会用表示
Cook-Torrance模型用来描述反射平面的的BRDF模型中的高光(Specular)部分,公式为
设一个小平面,面积为,法线方向,入射光方向,微分变量为,观察方向,微分变量为

根据上面的推导,这个小平面上所有法线为的微平面的面积为
由于其他微平面接受的入射光通量不会反射到方向上,所以不用考虑,所以在方向上有效入射光通量为
出射光通量为
根据菲尼尔公式,出射光通量和入射光通量的比例可以用如下公式表示
联立以上公式可得
根据BRDF的定义
下面考察和的关系,设小平面上的一个微平面,接受的入射光线方向为, 法线为,出射光线方向为,和单位圆的交点分别是

立体角和立体角之间的约束关系在于,保持不变,让法线在立体角范围之内移动,则需要保证是和的半角法线,它的活动范围比较小,具体可以计算一下
连接相交法线于交点,由于,所以
由于,所以
由于,联立以上公式,可以得到
带入上面的BRDF公式,可以得到
将几何衰减因子G考虑在内,可以得到