一,光线穿过体数据的建模
体绘制描述了在某一密度条件下,光线穿越物体时,每个体素对光线强度的影响,包括吸收,发射,散射等 。对该过程有不同的建立模型的方法:
1. 吸收模型( Absorption only ):体素对光线只是吸收,本身既不发射光线,也不反射、透射光线;
2. 发射模型( Emission only ):体数据中的体素只是发射光线,不吸收光线;
3. 吸收和发射模型( Absorption plus emission ):这种光学模型使用最为广泛,体数据中的体素本身发射光线,并且可以吸收光线,但不对光线进行反射和散射。
4. 散射和阴影模型( Scattering and Shading/shadowing ):体素可以散射(反射和折射)外部光源的光线,并且由于体素之间的遮挡关系,可以产生阴影;
5. 多散射模型( Multiple Scattering ):光线在被眼睛观察之前,可以被多个体素散射。
通常我们使用吸收和发射模型。为了增强真实感,也可以加上阴影(包括自阴影)计算。
二,光线合成公式
吸收和发射模型的基本公式为:
公式1
其中I是光照强度,k表示体素对光的吸收系数,整个指数部分表示物体的透明度,q为体素发出的光的强度。
透明度定义为:
公式2
公式1可改写为:
公式3
将其离散化,得到: