完美DX10!ATI新王者HD2900XT权威评测
泡泡网 2007年05月15日 类型:原创 作者:泡泡网评测室 编辑:孙敏杰
TessellATIon效率的源泉——控制“笼子”
Tessell
ATIon技术能够自动创造出很多顶点出来,这些顶点是实实在在的顶点,效果是等同于建模的时候直接设计出来的。但是如此大量的顶点数据,如果参与了运动,那么所需要进行的运算量则是非常大的。R600是如何做到效果和效率的兼得呢?
上图中,紫色的模型就是经过处理后得到的效果,大家注意橙色线条所组成的这个“笼子”,这个橙色线条就是模型的控制点组成的,如果在计算模型的位置变换的时候只计算这个简单的模型,就能够节省非常多的资源。
R600的Tessell
ATIon技术在真正运作的时候就会先算出“笼子”的位置,再根据笼子上的节点算出模型的每个顶点的位置,这样就能获得很高的效率了。
第四小节 顶点插值技术
讲完了对于原始模型的网格细分操作,我们再来看看这些新创造出来的顶点的具体位置确定的方法。
在传统的位移贴图中,基本上使用的都是高度图来确定新的顶点的位置,这种方法非常容易理解:

传统的位移贴图技术使用高度图做位移贴图
但是高度图有个致命的缺点,就是精度问题,因为高度图并不能用来描述一个曲线具体的形状,如果当一个曲线被多次细分之后,高度图的精度就不够了。
R600的Tessell
ATIon技术支持多种决定插值顶点位置的方法来创造各种曲面:
1 N-Patch曲面,就是和TRUFORM技术一样,根据基础三角形顶点的法线决定曲面。
2 贝塞尔曲面,根据贝塞尔曲线的公式计算顶点的位置。
3 B-Spline, NURBs, NUBs 曲线(这三种曲线均为CAD领域常用曲线,在Maya中均有相应工具可以生成。)
4 通过递归算法接近Catmull-Clark极限曲面。
这里需要和大家说的是最后一种Catmull-Clark极限曲面,这种曲面是一种极限限定曲面,只能够无限的接近,并不能达到。

Catmull-Clark极限曲面需要用递归算法无穷逼近

R600能获得无限逼近Catmull-Clark极限曲面的效果
看到这里,可能就有朋友该问了,既然Tessell
ATIon技术中创建曲面的能力这么强大,那么R600这颗芯片如何知道它该使用哪种算法呢?会不会还像TruForm那样把不该变化的模型进行变化呢?
答案肯定是不会的,这就是Tessell
ATIon技术中很关键的部分,这个技术是一个可编程控制的技术,一切都在程序员的掌握之中。
