3D世界中的美容师——从游戏特效谈显卡
硬派学堂
一说到显卡,比比想到的第一个词就是“激情”,正是因为不断有功能强大的显卡推出,我们才能在《极品飞车:最高通缉》中体验风一般的感觉,在《DOOM 3》里面拯救世界。比比还记得当年第一次看到3DMark中的精彩的3D画面时那种心潮澎湃的感觉,为了增加显卡在其中的得分而一次次地将显卡超频……可以说,显卡是推动PC发展的一个非常重要因素,而推动显卡发展的,则是那些画面精美的游戏。
当你在酣畅淋漓地玩游戏时,是否会想到给你带来这些快乐的,竟是一块小小的显卡,正因为有了它,我们在游戏中构建的虚拟世界才变会得五彩缤纷,也正是这一块块显卡,承载着我们的快乐。作为电脑的重要部件之一,显卡所能支持的特效一直是我们关注的重点。今天,我们就一起来开始探寻显卡的奥秘。
3D石器时代:
小荷才露尖尖角
1992年由3D Realms公司出品的《德军司令部》和随后id Software公司推出的《Doom》,使得电脑游戏真正从2D时期迈向了3D时代。从此,3D游戏横空出世。
作为早期的代经典,我们不得不提到一款曾经让众多玩家为之疯狂,曾经独领风骚的3D显卡王者:1995年底,3DFX公司出品的Voodoo显卡,由于拥有众多的3D加速技术,能够让当时的游戏在Voodoo显卡的支持下体现出最好的效果,显卡性能的提升也促使3D游戏事业的蓬勃发展,《雷神之锤》系列将显卡的显示性能推到了一个新的巅峰,不仅娱乐性大大增强,而且图像效果也趋于细腻。

3D青铜时期:
DirectX渐成主流
要想在游戏中体验更多的特效,有个很重要的概念就是显卡支持的DirectX版本。显卡支持的DirectX版本越高,说明显卡在游戏中能够表现出来的特效也就越多。
DirectX是由微软公司研发的一个应用程序接口,在DirectX 7.0中最大的特色就是支持硬件T&L(坐标转换和光源),在3D游戏中,任何一个物体都拥有一个坐标,当物体位置发生变化时,它的坐标也随之发生变化,而不管是什么物体,如果没有灯光就不会显现出来,在DirectX 7.0发布之前,所有坐标的转换与光源处理都是交给CPU来处理,这时的显示性能就要根据CPU的速度来决定,CPU速度越快,显示性能也就越高。而DirectX 7.0发布之后,所有关于坐标与光源处理的部分都交由显卡负责,这就直接降低了CPU的负荷,所以在当时拥有一块支持DirectX 7.0特效的显卡是游戏玩家梦寐以求的,这个时期的代表作非NVIDIA公司出品的GeForce 2系列显卡莫属。
GeForce2显卡拥有改良后的第二代T&L引擎,相比第一代T&L引擎有更好的执行效率,并且支持全屏抗锯齿技术,其显示核心采用0.18微米工艺制造,较老一辈显卡发热更低,与当时ATI公司出品的Radeon7500共同占据了大量的显卡市场份额。
2001年微软发布了DirectX 8后,市场上的3D加速卡犹如雨后春笋般涌现出来,NVIDIA公司的GeForce 3 Ti系列,GeForce 4 Ti系列,ATI公司的Radeon 8500、Radeon 9200都是当时3D显卡的代表。说了那么多,DirectX 8与DirectX 7的图像区别到底在哪里呢?我们以游戏《光晕》为例,来给大家比较一下。
Voodoo显卡
GeForce2 MX400
3D世界中的美容师
——从游戏特效谈显卡
(上接D18版)
第一张图片为支持DirectX 8的GeForce 4 Ti4200显卡效果。第二张图片为支持DirectX 7的GeForce4 MX440显示效果,我们可以发现其效果差距十分明显,在GeForce4 MX440显卡渲染的画面中,海洋一片蓝色,毫无生机可言,飞行器的玻璃罩并无反光效果,而换成支持DirectX 8的GeForce 4 Ti4200显卡后效果大大改善,最明显的在于海面拥有了波纹,飞行器也具有质感。
你知道吗:DirectX 8则完全奠定了它在3D游戏中的主导地位,它首次提出了“像素渲染”概念,同时具备了像素渲染(Pixel Shader,以下简称PS)与顶点渲染(Vertex Shader以下简称VS)两种不同的渲染引擎,同DirectX 7的T&L相比,PS和VS单元能够更加灵活地实现3D渲染,更容易营造出水面的反光效果,让显示核心真正成为了可编程处理器。
3D花样年华:
凸现游戏真实特效
游戏的流畅运行固然好,但更完善的特效支持却是体验游戏乐趣的重要因素,试想,在画面粗糙,完全没有渲染效果的情况下就算速度流畅,玩起来又有什么感觉呢?
现在的显卡都同时支持两个应用程序接口,即DirectX与OpenGL。在最新的DirectX 9.0c中更是加入了SM 3.0与HDR特效。例如NVIDIA公司出品的GeForce FX系列就只支持早先版本的DirectX 9.0b,而最新的GeForce 6和GeForce 7系列显卡都支持DirectX 9.0c,在游戏中能够比FX系列显卡带来更加震撼的显示效果,而ATI只有在X1000系列以上的显卡中才真正加入了对DirectX 9.0c的支持,从根本上为显卡表现出优异的游戏特效提供了保证。
你知道吗:SM3.0是Shader Model 3.0的缩写,SM3.0技术是DirectX 9.0c级别显卡全面支持的一项特效。SM3.0在很大程度上丰富了游戏研发时的编程模型,方便游戏开发商更简单地做效果更好的游戏,确有不少优势(SM 3.0的详细介绍请参见本报第7期D15版)。
在DirectX 9.0c中,还有一个重要的更新就是增加了对HDR特效支持,HDR中文译名为:高动态光照渲染,它能够在游戏中模拟出人眼对光线强弱的反射情况。当前,支持DirectX 9.0c的显卡已经占据了很大一部分市场,例如NVIDIA公司的GeForce 6系列与GeForce 7系列显卡,还有ATI公司刚刚推向市场的X1000系列显卡,我们从下表就能很直观地了解两家显示核心巨头推出的支持DirectX 9.0c的产品型号。
那么HDR特效到底对游戏的效果产生了一些什么影响呢?我们就用完美支持DirectX 9.0c的《极品飞车9:最高通缉》这款游戏来让大家体验一下其中的奥妙。
上图为支持HDR特效显卡所表现出来的效果
大家可以简单对比一下,两张游戏中的截图效果差异十分明显,其中第一张截图是完整支持SM3.0与HDR特效的GeForce 6600显卡运行时的效果,由于光线的差异和瞳孔对光线强弱变化的敏感程度所造成的视觉误差,在隧道与外界交界处,会呈现出一片光亮刺眼的景象,且当离开隧道一段时间后瞳孔会随着对光线的适应而逐渐返回正常状态,而第二张截图由于显卡不支持HDR动态光影特效,所以不管在什么情况下,其光线的亮度范围始终不会发生明显变化。
你知道吗:在游戏中,打开SM3.0特效与HDR特效所带来的后果就是显卡在同一时间内需要处理的数据大大增多,所以直接导致其性能急剧下降,在高端显卡中我们推荐大家打开HDR特效,因为即使打开特效后,游戏速度也在可忍受范围之内,例如GeForce 6600GT,GeForce 6800等等,而中低端显卡,例如GeForce6600LE,X1300之类建议大家最好将其关闭,否则大家在享受新技术带来的震撼时同时也在忍受着有如幻灯片般的“非人折磨”。
总结
如今的显卡随着核心技术的突飞猛进,不仅追求流畅的运行速度,而且已经逐渐向完美的画面质量靠拢,但我们要清醒地认识到,在追求显示效果的同时也不能忽视流畅运行的速度,只有速度与画质兼得才能完整体验游戏的乐趣。
显存:相当于显卡的临时仓库,由于显示核心处理速度非常快,所以显示核心处理完的数据暂时会交给速度比内存快得多的显存保管,以供CPU随时调用,显存与内存的作用相同,只是显卡专用内存而已。
显存位宽:显示核心处理数据后要传输到显存有一段路程,显存位宽就相当于这段传输道路的宽度,道路越宽同一时间所通行的车辆也就越多,所以同一时间所传输的数据也就越多。
DirectX:是由微软公司开发的用途广泛的API(应用程序接口)。正因为有了它,在3D图形方面,程序员可以通过API来调用其中的函数,轻易构建3D模型。并通过其中的一些特效函数为我们的游戏提供华丽的视觉效果。