关于曲面细分和贴图置换的概述
虽然Tessellation(曲面细分)以及Displacement Mapping(贴图置换)不是什么新型渲染技术,但是直到目前,电影行业还大都一直在运用这两项技术。随着DirectX 11与NVIDIA GF100的推出,开发人员将能够利用这些强大的技术来打造游戏应用程序。在游戏开发与高品质实时渲染上,我们将介绍一下Tessellation(曲面细分)以及Displacement Mapping(贴图置换)的一些特性与优势。
物体与人物等游戏内容一般需要用Mudbox、ZBrush、3D Studio Max、Maya或SoftImage等建模软件包来创建。这些软件包能够提供基于Displacement Mapping(贴图置换)表面的工具来辅助艺术家创建细腻的人物与环境。现在,艺术家必须手动创建各种细腻程度的多边形模型,以满足游戏中各种渲染场景所需、达到保持可玩性帧速率的目的。这些模型就是带有相关纹理贴图的三角形网格,而这些纹理贴图则是正确着色所需要的。当游戏中运用到这些模型时,每一帧的模型信息都通过主接口(Host Interface)发送给GPU。由于PCI Express总线的带宽限制,游戏开发商倾向于使用相对简单的几何模型以及目前GPU最保守的几何学吞吐量。
即使在最好的游戏中,也会因为现有图形API以及GPU的限制而存在几何学伪像。在下列《FarCry2》游戏截图中即可看到复杂几何图形的折衷表现结果。手枪皮套有太多的刻画面,皮带的分割感太强。瓦楞屋顶本应看起来有波纹感,但是实际上是带有条纹纹理的平面。最后,正如游戏中的大多数人物一样,这个人戴着一顶帽子,细心地避开了渲染头发所涉及的复杂度。
利用基于GPU的Tessellation(曲面细分),游戏开发人员能够发送物体或人物的紧凑型几何表现形式,而Tessellator单元则能够为特定场景生成合适的几何学复杂度。现在我们来看看更加细腻的细节表现,研究一下Tessellation(曲面细分)与Displacement Mapping(贴图置换)结合使用的特点与优势。
让我们来看一看上面的人物。我们能够看到,在左边的图像使用了四边形网格来勾勒人物的大致轮廓。即使与一般的游戏内容相比,这种表现形式占用空间也是非常少的。中间这幅人物图像是对左侧图像进行了精细Tessellation(曲面细分)与描绘的结果。因此它拥有了非常光滑的外观,没有因几何形状的限制而形成多个刻画面。不幸的是,这个人物虽然外表光滑,但是与粗糙的网格相比,细节部分并无改善。右侧的图像是对中间图像附上了一个Displacement Mapping(贴图置换)的效果。这个人物拥有可媲美电影制作中的丰富几何细节。