前面我们分析了几种光照技术的优劣,下面我们就来看看球体照明——ATI最新HD 3800系列显卡所能实现的高效率高画质光照技术。球体照明是一个和渲染结合的非常好的技术,光照阴影映射和间接照明支持几乎无限数量的动态光源,结合现实的反射情况,还能实现软阴影。利用DX10.1提供的阵列立方贴图和几何处理单元,可以实现全局照明系统,达成数以千计的物体在一个复杂场景中的互动。
这项技术的要点就是将场景划分为多个3D阵列的立方体,立方体的每个表面都会赋予一个相对简单的渲染,渲染的出发点是立方体的中央向外看的视角(所谓的“光照探针”),立方体表面渲染的精度和细节不一定要求与最终的完美画面相媲美,但是很容易被控制,从而可以在画质和性能之间做一个取舍,当立方体的6个表面都渲染完成后,就生成一个立方贴图纹理。
下一步的工作就是将立方体映射转换为一个球形的映射,让它符合球体的物理、光照特性,有了这个步骤,尽快的确定光照的数量以及最终的色彩渲染变得更为简单,因为立方体的计算相对简单,至于光照的数值,可以通过“光照探针”从相邻的立方贴图中取得插值运算的精确。
这种照明技术是在一个封闭环境中应用的范例,因为它能够通过整体环境的表现作为计算的参考,这种计算方法具有高度的扩展性,并且渲染质量可以随意的控制,对于立方体数量和表面精度的控制就可以达成。DX10.1的立方纹理阵列,允许极大数量的立方纹理被渲染和采样,而且可以并行处理,这对于GPU或者多GPU系统是一个非常好的消息。