Ambient occlusion也就是大家熟知的环境遮挡,.简单点说,就是一个取样点上被其他几何体覆盖的程度,它是被通常用来模拟全局光照效果的简单方法。
环境遮挡的原理:
基本的原理跟final gather 类似,其取样点的生成是一样的。
首先从摄像机发出取样光线,取样光线和物体的交点,就是我们说的取样点,然后从取样点发出次光线(probe rays)。
接着ambient occlusion和fg就不一样了。ambient occlusion的次光线是求每一条光线是否被周围的物体所遮挡,如果遮挡了直接返回值,不做任何的shader计算,也就是取样点的周围被物体阻挡着不让看到背景的百分比;fg的次光线不太一样,他的次光线与周围的物体相交以后,它要求焦点处的颜色值,然后返回的是颜色值,而不是ambient occlusion的真假值。
最后也是不一样的,作为ambient occlusion,每一个取样点其实就是渲染时输出的色彩值,而fg只是为下布渲染时的fg point,它代表着要渲染点附近的光照,在渲染时用来产生照明。
下图是他们的原理

下面我就结合mentalray for maya,跟大家大家一起讨论一下ambient occlusion的一些应用。 mentalray for maya中有三个节点是我们在使用环境遮挡是需要用到的,mib_amb_occlusion, mib_fg_ occlusion, mib_bent_normal_env,如下图
