探讨显卡的专用术语(一)

互联网 | 编辑: 2001-03-31 00:00:00

随着NVIDIA的GeForce 3图像处理芯片发布,显卡的技术又有了新的发展方面。在PC GAME狂热的今天,显示卡已是电脑最重要的部分之一。那么你是否了解每一款显卡的技术规格代表的含义,在图形处理方面有何作用了吗?尽管某个游戏可以在你的计算机上玩(也就是说,符合最低硬件要求),但是你都会多少进入游戏的图形(graphics)选项调整看看。因此,一些技术上的名词,比如凹凸贴图(bump mapping)、容积迷雾(volumetric fog)和三线性过滤(trilinear filtering),如果你不知道他们的意思─或者他们如何影响游戏的图形表现─-你最后可能会发现自己花了上千元大洋购置显卡的性能得不到充分的分挥!

1、反锯齿 (Antialiasing)

---请注意画面上那些阶梯状的线条。

反锯齿(Antialiasing)通常被简称为FSAA(full-scene antialiasing, 全景反锯齿),显示卡及某些软件使用它来减少中低分辨率画面时物体边缘的锯齿现象。如果你观察「雷神之棰II」等等游戏中的斜线,你会发现实际上那不是一条线,而是一推细微的锯齿。「反锯齿」就是用来柔合这些线的边缘,如此斜线看起来会模糊一点,但是会更直。大部分新推出的显示卡,包括原3dfx公司的Voodoo5系列,ATI公司的Radeon卡,和Nvidia公司的GeForce2系列,都有FSAA功能。不过请注意,要使用这个功能,你必须通过显示卡的驱动程序来启动,而非游戏的选项。

---全景反锯齿功能将那些线条给修饰得平滑了些。

使用FSAA可以让你在较低分辨率(比如640x480或800x600)执行游戏时,有类似高分辨率时的清晰画面,不过使用FSAA会增加一点性能负担。

2、API

--在游戏中可让你选择Direct3D、Glide或OpenGL等三种API。

应用程序接口(Application Programming Interface, API)是一堆子程序的集合,主程序可以使用他们来完成某些动作。在API发明之前,程序设计者必须自己开发一些子程序,才能让主程序在各式各样不同的硬件组合下顺利执行。有了API以后,程序设计师就能专注开发单一个版本的游戏,而不需烦恼细微琐事。

一般玩游戏常见的API有三种,分别是DirectX、Glide及OpenGL。DirectX由微软发展,Glide由3dfx开发,而OpenGL则原来自Silicon Graphics公司。对程序设计师来说,每种API都有其优缺点。举例来说,OpenGL是一种跨平台的API,可以在安装有不同操作系统的PC、苹果计算机,甚至Silicon Graphics自己的计算机上执行。Glide是独家为了3dfx公司的Voodoo卡而发展的。而来自微软的Direct3D则是无所不在的DirectX中的一部份,主要用来广泛支持使用Windows操作系统的PC产品。

虽然大部分的游戏都会让你选择用哪一种API,不过最明智的方法是看你显示卡的性能。也就是说看看你的显示卡最适合哪种API,如果游戏支持这种API,那么就选它。

3、凹凸贴图 (Bump Mapping)

---MatroxG400的凹凸贴图的效果

凹凸贴图是一种让材质看起来有皱折或平滑感觉的障眼法。举例来说,想象一个线框架构的立体矩形方块。游戏研发人员在这个方块上面覆盖一层砖墙材质。现在你有了一个外覆砖块的立体矩形。但它却没有真正砖块表面上的那种粗糙凹凸的感觉。 要让这个砖墙表面看起来更真实,研发人员就要作出一张凹凸贴图用的「地图」。这张地图本质上是一面平面图形,和材质类似,只是上面有砖块的外形。然后研发人员再将「地图」覆盖在砖墙材质上。墙的颜色不会改变,但是这面墙马上就变得全新且有立体的感觉。

凹凸贴图的方式有三种:

第一种:「环境凹凸贴图」 (Environment-mapped bump mapping, EMBM) 是使用在反射表面的技术,例如金属或水面。虽然其它的凹凸贴图也可以用在这种表面上,但是只有「环境凹凸贴图」才能仿真出最真实的动作,例如水波的流动。

第二种叫做Dot Product 3 (DP3)。DP3凹凸贴图本身内嵌某种表达式,这样计算机可以根据四周的光源计算阴影。虽然这种贴图方法看起来也很好,但是它缺乏EMBM的适用性。

第三种也是最后一种方式叫做embossing。它的作用和上面提到的砖墙的例子很像:覆盖另一层材质以增加其真实度。embossing是凹凸贴图中最简单也最快速的方式。

4、彩色光影和色深

(1)彩色光影 (Colored Lighting)

---彩色光影顾名思义就是:光影不是白色的

彩色光影就像字面上的意思:彩色的光。多年以前,当时计算机的运行速度比现在慢很多,所谓的3D加速记只是很简陋的功能时,那时的游戏只能产生出一般的白色光源。这些纯白色光源 (譬如爆炸的闪光) 只能让周围的对象笼罩在白色亮光下,否则就什么作用也没有。 现在有了彩色光影,一颗红色的灯泡就可以将房间内的所有东西染成红色的。例如,有个人走进这个房间,他的脸及衣服就会呈现出略带红色的光泽。一件蓝色的衣服在红色灯光的渲染下,看起来便是紫色的。

(2)色深 (Color Depth)

色深也叫做位深度 (bit depth),是计算某个场景成像时所使用的颜色数量的一个名词。基本上你会看到有8-bit、16-bit、24-bit及32-bit四种色深。色深越高,你能拥有的颜色就越多。当你从低色深调到高色深 (例如从16-bit转到32-bit),就必须耗用更多系统资源,因为显示卡必须更卖力地运作才能画出更多的颜色来描绘场景。

---注意看16-bit模式的《雷神之棰III》,其烟尾的抖色效果

这是因为计算机是以二进制来思考的,也就是只有0和1两种数字,或者说"开"或"关"。单一个位数字叫做一个bit。计算机将多组位放进内存并用来作计算。每一个像素 (pixel) (也就是构成画面的一个个小点) 的资料,在计算机里是以位的形式被储存起来,而每一个像素所能拥有的颜色数,是由用来"描述"这个像素的位数所决定的。

以8-bit的像素为例,这种像素能显示256种颜色。为了能得到256个颜色,计算机必须计算一个位(也就是0和1) 的八次方来得出最大的数字,因为有八个位,二的八次方是256。计算机会清出一块内存来储存256种组合,每一种组合就代表某个特定颜色。

---32-bit模式之下爆炸看起来就更真实了些

每一个色素最后都需要耗掉总共三个字节 (bytes) 来显示一个像素。由于八个位等于一个字节,那其它两个字节是哪里来的?这是因为红、绿、蓝这三种颜色是用来混合产生其它颜色的三原色,而红、绿、蓝三色的数据便储存在多出来的这两个字节里。

因此,如果你的屏幕分辨率是640x480 (包含307,200个像素),那么8-bit颜色就需要921,600 KB,将近1 MB的内存。色深越高,所需的内存就越多。计算机所需的运算也相对地提高。 所以,游戏设定在32-bit比设定在16-bit需要更多的运算能力和内存。这两种是现在大多游戏都会提供的设定,未来你将越来越少见到使用8-bit色深的游戏,也很少会在游戏中见到24-bit。

5、动态光影 (Dynamic Lighting)

---没有动态光影,场景中的光影状态看起来都一样。

动态功影是游戏用来依照光源决定而四周环境所见模样的一种能力。例如,有间漆黑的房子里面有个战士。这名战士举起枪瞄准附近目标开枪。武器所发出的亮光将短暂地照亮这名战士和邻近的任何东西,例如墙或物体。 这看起来虽然像是一个小小效果,但是动态光影便是游戏研发人员用来让玩家更融入游戏的工具之一。譬如说向一个黑暗的地方发射火箭,当火箭前进时它会照亮走廊的四周。而当火箭过去之后,这些被照亮的区域又会恢复到他们原本的亮度。

---有了动态光影,亮光会真实地照映在周围的物体上。

运用动态光影的方式有好几种。首先第一个叫做亮源地图 (light map),亮源地图的作用和材质(或者凹凸贴图用的地图) 差不多,只是当有光源出现时它才会被用到。以上述的火箭为例,如果火箭平行通过砖墙,它的火焰产生的亮光会照亮墙壁。因此游戏就会在墙壁上贴上一层亮源地图以呈现这种效果。亮源地图不会改变砖墙的颜色和物理外型,只是让它看起来突然变亮。当火箭通过后,亮源地图就会拿掉。

第二种方式是顶点亮光 (vertex lighting)。顶点亮光是以火箭光源照到邻近墙壁上的位置、强度、及光源大小来计算。两种方法之中,亮源地图比较精确,而且品质可以比较好。顶点亮光较不需要处理能量,效果也不是很好。

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑