T&L
T&L技术是最近在图形加速卡上都可以看得到的规格名称之一,这个名词的原来意义是:Transforming以及Lighting,光影转换。在图形加速卡中,T&L的最大功能是处理图形的整体角度旋转以及光源阴影等三维效果。
基本信息
- 中文名
多边形转换与光源处理
- 英文名
Transform & lighting
- 简称
T&L
应用
现在的图形加速卡大部分都是在处理3D立体图像等画面,为了要求图像的拟真品质能更加精细,在图形卡上的T&L功能,就能透过角度运算后,将3D对象上所有的点,精确清楚地表现在屏幕上。 如果我们把自己当成是图形芯片的话,那么当中央处理器(CPU)要我们画出一张完整的3D图案时,CPU便要让我们对画出什么东西有个基本的概念,特别是那些东西在我们的脑中并没有最根本的印象时,CPU只能给我们一个类似建筑工地用的设计图。
这个3D设计图上有许多的连结点,每一个连结点都可视为一条线的转折点,通过这些连结点,图形芯片可以很清楚地将整个对象的结构辨识出来。然而,这些连结点在这张3D设计图上的位置是固定不动的,换句话说,不管我们从任何一个角度来看这个对象,连结点的位置并没有变动,变动的只有角度的不同。不过,对象图案若只进行到Transforming的阶段,在对象的表面也只有连结点而已,并没有加上颜色色块或任何材质的贴图表现,因此,很像是立体的3D透视图。
就好像画工地设计图的工程师与画平面立体图案的画家一样,画家只画眼前所看到的立体图案,虽然也是立体图案,但是角度却固定不动;而工程师却必须仔细地将所有重要的细节描绘仔细,才能让按设计图工作的施工人员不管从那个方向切入都能清楚施工方向。这个由CPU送来的蓝图便与工程师那张施工蓝图一样,让使用者不管从那一个角度来观察,都能看到对象整体的3D变化,而这就是Transforming的精髓。
功能
若真要细究Transforming到底在图形芯片里做些什么事情的话,可能就是在控制上述的连结点吧。要将这些构成3D立体对象的连结点,换算成我们从屏幕上所看见的角度,图形芯片中的Transforming机制便必须要「假装移动」这些连结点,因此,即使假装移动连结点后,原来的3D对象结构仍旧未有改变。而屏幕上的角度只要有任何改变,Transforming机制便要再「假装移动」一次,在3D动画的运算中,这是相当频繁的动作,也因此Transforming功能对图形芯片而言,在这几年内相当受人重视。
一个具有Transforming机制的图形芯片,除了不需再透过系统的平台(处理器、主存储器以及芯片组等)来进行数据处理,能有效减轻系统的负担;而且也扮演专为处理上述资料的运算机制,能做出比同时需处理多项资料的系统更加强大,因此,图形芯片所能画出的连结点比单靠处理器画出的要多许多,结构所呈现出来的影像也更加精细。
对于人脑而言,要去理解一个透过连结点所表现的图案,有点像是小时候的「连连看」游戏一样模糊,不过,透过连结点与连结点之间联机的动作,3D立体对象的表面,便会形成许多个多角形(polygon),而且大部分的多角形皆属三角形,之后,图形芯片会在每一个多角形上贴一块材质贴图,包含半透明的材质颜色在内,于是一幅清楚而明显的拟真画面,就这样被产生出来了。
另一方面,Lighting的意义则是在光源的投射角度上做出反应。除了固定光源切入的角度外,再配合使用者的观察角度进行阴影以及反光面的光源变化运算,而透过这两项功能,一个相当拟真的3D对象就可以呈现在我们眼前。
一般来说,T&L的效能常用「单位时间内所能处理多少个多边形的连结点变化以及光源运算」为基准。像nVidia的GeForce 2便能在每秒钟处理2500万个多边形,而有的产品甚至能达到3000万个多边形的效能。
Vertex Skinning功能
一般人应该不太有机会看到Vertex Skinning这个词,因为大部分的图形显示卡规格说明书中未将此规格说明给列出来,通常只用T&L里的多边形处理数目来做主要规格介绍。不过,随着3D动画软件与资料与日俱增,Vertex Skinning的重要性也跟着水涨船高。
爱玩电玩的网友不妨回想一下,现在手边的电玩一定不乏怪兽、英雄、运动球员与角色扮演等的3D动作游戏,而这些游戏角色的3D立体图像要在屏幕上完整呈显,便需要透过图形芯片更强大的运算机制。
动画电影制作技术中,有一种是借由贴有人骨图案的衣服来记录真人动作时的运动角度,以及关节变化情形。相同的情形也常发生在图形芯片的运作中,尤其是借由人骨运动的概念来仿真3D对象在动画上的呈现。换句话说,一个完整的3D对象,若找出其运动的主要架构(以人为例即是人骨),那么图形芯片便能借由架构的呈显,运作出包在架构外的轮廓以及图形,并借由运动模式来运算出动作与动作之间的影像变化关系。
然而,若真要以“人骨”模式来反推3D对象的影像,那么在影像上会有许多部分的资料,是由图形芯片自行加上去的,而这个加上去的技术,便称之为Vertex Skinning。Vertex Skinning这个功能最早是由nVidia所提出,但后来也有其它的图形芯片制造商跟进采用相同的概念。我们从字面上来看这个名词,也就是“连结点的加皮动作”。换句话说,连结点与连结点所构成的骨干,与另一个部位的骨干间常会有难以连结的距离,而这距离会使得呈现出来的对象无法做到平顺圆滑的真实图像,此时,图形芯片中的Vertex Skinning机制,便会自动加上连结机制,让画面整体呈现起来能更加平顺。
一般来说,系统或图形芯片要处理类似Vertex Skinning技术需要靠中央处理器来执行应用软件以达成上述效果,不过,也有采用图形芯片中的运算机制(硬件运算)就可以达成的,例如,ATI便曾对外表示其所采用的4-Matrix Skinning便是以硬件运算的方式达成。
Keyframe Interpolation功能
我们先前提到在人骨上生肉成形的显像技术,现在我们来认识一下,没办法透过骨干显像的部分,图形芯片是怎么达成的。而这个技术,我们常称之为Keyframe Interpolation(关键图框的添写技术)。
实际上3D动画技术需要用到Keyframe Interpolation的地方可多可少,运作执行时,只需要找出起始动作以及终止动作后,在一定的改变流程下,由软件或硬件来制作出其余的连结动作。而这就是Keyframe Interpolation的主要精神。