3D加速卡
提供3D特殊效果能力的顯示卡
為了有效地減輕CPU的負擔以及提供完美的3D特殊效果,在顯示卡的繪圖晶元上增加直接負責3D圖形處理和提供3D特殊效果的能力,這便是所謂的硬體加速能力,具有這樣的晶元的顯示卡稱之為3D加速卡。雖然3D 技術的引進最早的初衷是應用於3D遊戲,但現在不再局限於應用在令人眼花繚亂的遊戲上,通用的三維技術正一步步悄悄地走近我們的生活。同時,三維軟體需要統一的開發和使用平台,這方面,3D軟體支持平台的開發和市場爭奪正在如火如荼地進行著
從市場來看,1999年是3D顯卡競爭異常激烈的一年,各3D顯示晶元生產廠商都有新的產品推出,並且在一年之間經歷了兩次更新換代。如果我們把S3 Virge系列3D加速卡稱為第一代3D加速卡的話,那麼3dfx Voodoo、Voodoo2分別可以稱為第二、三代3D加速卡。因此,今年先後的兩次產品換代中,以3dfx Voodoo3和Voodoo4為代表的同一檔次產品就是第四、第五代3D加速卡。
第四代產品主要的戰鬥仍然是在nVIDIA的TNT2系列、3dfx的Voodoo3系列和MGA的G400系列之間展開,而參加者還包括S3的Savage4和姍姍來遲的ATI Rage128、3Dlabs Permedia3等。第四代3D顯卡市場比較特別的一點是幾乎各晶元廠商的產品都形成由低端到高端的系列,戰線更長,也加劇了3D顯卡大戰的激烈程度。
要簡單地通過3D加速卡的性能高低來評價其技術好壞是不恰當的,因為一塊加速卡的某項性能指標往往受到多方面因素的影響,例如1999年上市的第四代3D加速卡都有著較高的像素填充率,而像素填充率受到多項因素的制約,它主要和3D晶元時鐘頻率、獨立管線數量、顯存帶寬和晶元核心特徵等有關,同時也受到遊戲的影響。理論上,TNT2的像素填充率比Voodoo3要低,但在複雜場景中,它的得分往往更好也就是這個原因。
1999年上市的第四代3D加速卡大多板載32MB顯存,而通常我們使用的3D遊戲解析度為1024×768×32 位色深,這種解析度僅需要16MB顯存支持,32MB顯存能提供1280×1024×32 位色深,但這種解析度幾乎沒有人採用,因為按多數用戶的配置,這一解析度下遊戲肯定達不到令人滿意的速度。新的3D加速卡中很多產品顯存和核心頻率不同,這有利於充分發揮加速卡的性能,用戶可以單獨調節顯存和核心的時鐘頻率,以求達到最高的性能組合。
對AGP 4×的支持也是第四代3D加速卡的一大特色,現在的3D加速卡多數支持AGP 2×,AGP 4×提供更高的數據帶寬,雖然直到現在,AGP 4×的主板也沒有佔據主要位置,並且有關測試表明,現在的軟體、遊戲中2×和4×並沒有明顯的性能差異,但AGP 4×肯定是未來的主流。
第四代3D加速卡幾乎都支持32位真彩色渲染,唯一的例外是Voodoo3。32位渲染提供了更好的畫面效果,雖然在高速運動的遊戲過程中,用戶無法分辨32位和16位渲染的差別,但在靜止畫面中,某些特定場景兩者的差別非常明顯,例如即時3D戰略遊戲《家園》,該遊戲的場景可以非常明顯地分辨出32位渲染和16位渲染的差異。
對數字平板顯示器的支持也是第四代顯卡的特色之一,不過因為國內使用數字平板顯示器的用戶較少,所以儘管顯示晶元支持這一功能,但多數顯卡並沒有提供數字平板顯示器介面,只有某些高端型號才支持。
nVIDIA無疑在第四代3D顯卡大戰中佔有優勢。它推出的3D晶元分為高端的TNT2和低端的TNT2 M64,其中TNT2還根據核心頻率的不同,分為125MHz的標準TNT2 和150MHz的 TNT2 Ultra。以技術特性來說,TNT2充分代表了第四代3D顯卡的特色:128位核心、支持AGP 2×/4×、32MB板載顯存、300MHz的RAMDAC……而第三代顯卡相對的特性為:64位核心、支持AGP 2×、16MB板載顯存、250MHz的RAMDAC。
3D加速卡
TNT2 M64是一個市場型的產品,為了降低成本,達到更有利的價格而“出生”,它的核心僅為64位,但在其他方面和TNT2幾乎沒有差異,值得思考的問題是32MB顯存的M64究竟有沒有意義?從性能來看,M64大概比前一代的TNT要好一些,但和同樣配置TNT2有比較明顯的差距。
nVIDIA編寫驅動程序的能力現在顯然排在榜首,TNT2的驅動程序是第四代3D顯卡中最完善的,從著名的“雷管”2.08開始,其驅動程序都適用於這一系列的所有顯卡,它有完整的D3D和OpenGL驅動,充分發揮了顯卡的性能,這一點非常重要。
3dfx在1999年作出了不少讓人詫異的舉動,它原本是一家設計和生產3D晶元的公司,今年收購了著名的顯卡生產商STB,自己製造顯卡。將開放的模式轉為封閉,雖然有助於規劃和管理,增加利潤,但其中的利弊確實還很難說。從技術而言,3dfx更是一家“逆潮流而動”的公司,今年的主力產品Voodoo3居然還是一塊“AGP介面的PCI顯卡”,並且只支持16MB顯存和16位色深。
Voodoo3系列顯卡由低端到高端分為143MHz的Voodoo3 2000、166MHz的Voodoo3 3000和183MHz的Voodoo3 3500。這三種型號的2D、3D核心是相同的,其差異主要是核心頻率提高帶來的性能提高以及一些附加功能不同而已。Voodoo3是一塊2D、3D合一的加速卡,3D核心支持雙32位管線,單通道、單周期多材質貼圖,最低端的Voodoo3 2000每秒也可以繪製6百萬個三角形。Voodoo3對系統配置的要求較低,它還支持AMD 3Dnow!,對於K6-2系列CPU的用戶來說,是比TNT2更好的選擇。
Voodoo3最為人批評的地方在於只有16MB顯存且不支持AGP和32位色渲染。由於它只能處理最大為256×256尺寸的紋理,且不支持AGP,所有的材質紋理都需要存儲在顯存中。當遊戲解析度很高,例如1280×1024甚至1600×1200,或者使用很大的紋理貼圖時,Voodoo3就會顯得力不從心。不過在目前的實際使用中,我們最常用的解析度是800×600或1024×768,在速度上Voodoo3綽綽有餘。至於16位色渲染,其實在Voodoo3核心處理時,支持24位色渲染,然後抖動輸出,在多數遊戲中,並不容易察覺與32位色的差異,但部分遊戲中差距非常明顯。另外,Voodoo3沒有一個完整的OpenGL ICD,不能用於3D圖形設計。
Voodoo3系列顯卡有一個明顯的優點,它的超頻性能很好,Voodoo3 2000可以超到比Voodoo3 3000更高的頻率且能正常工作,並且價格很有優勢,Voodoo3 2000無疑是性價比最高的第四代3D加速卡。另外,3dfx的看家法寶Glide是Voodoo3的一大優勢,儘管D3D和OpenGL是主流的API,但至少在今年,Glide的優勢仍然存在。
由於種種原因,位於加拿大的Matrox公司的前一代產品G200在中國的口碑並不是太好,雖然在第三代3D加速卡中第一個登場,雖然3D性能並不出眾,但不可否認的是它的畫面確實非常漂亮,所以G200+Voodoo2的組合一度成為發燒友的夢幻配置。今年G400在第四代顯卡中最後一個露面,其性能又如何呢?
Matrox G400卡也自成系列,它們使用同樣的核心,根據配置和功能不同分為:Millennium G400單頭16MB和32MB、Millennium G400雙頭16MB和32MB、Millennium G400 MAX。G400可以說是1999年3D顯卡中技術更新最多的一款,和G200相比,它把原來核心雙向64位匯流排提高到雙向128位,而目前其他128位顯卡仍是讀寫不能同時工作的單向流程。不過從G400的系統方塊圖我們可以了解到其晶元和顯存之間的仍然是128位傳輸,所以G400並不是一塊256位的3D加速卡。並且G400把原來的32位渲染技術( VCQ)精確到第二代32位渲染(VCQ2),這使G400的畫質在第四代顯卡中名列前茅。
G400還有兩個最為重要的特性不能不提,正是因為這兩個特點,筆者才認為G400是1999年3D顯卡中技術方面最有創意的一款。第一是Matrox G400支持Bump Mapping真硬體DirectX6環境凹凸貼圖渲染技術,這一技術通過微軟DirectX6在遊戲中得到體現,增加了3D場景的視覺真實感,而其他顯卡只是通過模擬實現。不過從1999年的整體情況看,Bump Mapping和S3的材質壓縮一樣,是一項叫好不叫座的技術,支持該技術的遊戲屈指可數。由於缺少軟體的支持,Bump Mapping並沒有成為用戶選購顯卡的必要條件。第二是G400專有的雙頭視頻顯示能力,雙頭顯示使用戶把同時獨立的輸出連接到兩台不同解析度的顯示器上(15英寸和17英寸同時使用),或者連接到一台顯示器和一台電視上(工作和看DVD同時進行),或者連接到一台顯示器和一個數字平板上,或者連接到兩個數字平板上。這一功能並不意味著用戶可以得到雙倍的性能,但對於圖形設計等用途來況確實帶來了方便。
1999年Matrox還有一項不小的成就,成功地發布了G400的Open GL驅動,現在的Open GL在《Quake3》遊戲運行中,速度和畫質都表現一流。但是值得注意的是在3D圖形設計中這一版OpenGL驅動程序仍然不夠理想。
S3曾經是中國市場最火爆的公司,不過由於公司內部和產品開發方面的原因,S3差一點從圖形晶元市場上消失了。在去年的3D顯卡大戰中,S3重整旗鼓,推出了Savage3D。
1999年,S3又推出了Savage3D的換代產品Savage4,這是今年第一塊支持AGP4×的圖形晶元,它支持AGP 4×技術、真32位渲染、S3TC、單周期三線性過濾、多紋理貼圖、硬體DVD加速、最大32MB顯存和支持高級數字平面顯示器。這其中大多數特性都是第四代顯卡的普遍特徵,而S3TC是Savage4系列的特徵技術。S3TC是一種紋理壓縮技術,我們知道為了得到更精細的圖像,需要更大更複雜的紋理貼圖,這將會消耗大量顯存,而顯存的成本是很高的,所以出現了AGP技術,AGP允許直接在系統內存中對材質紋理進行操作,但是系統內存也不是無限的資源,它還要用於操作系統和應用程序,S3TC大約可以提供6:1的壓縮比率,更有效的使用材質緩存。由於S3TC更有效率地使用了材質緩存,它可以用於存儲MIP-Maps紋理貼圖,Savage4的另一個特點是同時實現單周期多紋理映射和單周期三線性過濾,從而提高圖象質量和增加性能。
Savage4同樣是採用同一核心的一系列顯卡的總稱,目前市面上常見的包括低端產品Savage4 LT、GT和高端的Savage4 Pro、Pro+。其主要的區別在於LT、GT僅僅支持AGP2×,LT的顯存頻率為110MHz,顯存容量為8MB,GT為125MHz,顯存容量為16MB。高端的Savage4 Pro、Pro+支持AGP4×,Savage4 Pro的顯存頻率為125MHz,顯存容量為16MB,Pro+為143MHz,支持16/32MB顯存。Savage4系列的頻率是今年推出的3D加速卡中較低的,如果更夠提高頻率,性能還會獲得提高。Savage4還是第四代顯卡中少有的為3DNow!優化的產品之一。
S3TC早在Savage3D上就有採用,但當時幾乎沒有遊戲支持這一技術,今年支持這一技術的遊戲仍是寥寥無幾,無形中Savage4就喪失了最大的優點,如果有一天,S3TC能夠像Glide那樣為多數遊戲廠商支持,Savage4肯定會得到更好的評價。
ATI和Matrox一樣,是世界上主要的3D顯卡OEM生產廠商之一。今年第一季度推出的Rage128其實並不能算是真正的第四代3D加速卡,原計劃中它應該在1998年上市,競爭對手是TNT和Banshee等,可惜由於種種原因,推遲到了1999年,直接面對了TNT2、Voodoo3等真正的第四代顯卡。
Rage128顯示晶元包括Rage 128 VR、Rage 128 GL等。Rage 128 VR主要用於主板集成和低端產品,Rage 128 GL晶元用於16M 顯存的Xpert 128和32M顯存的Rage 128 Fury。Rage128的特徵技術包括超標量著色技術、單通道多材質技術、雙緩衝體系架構、多命令併發引擎等,這些技術多數第四代3D顯卡都己採用,並非什麼獨家之秘。由於開發的時間較長,Rage128在性能和功能方面並沒有特別出色的地方,Rage128 Fury的核心頻率僅為100MHz,顯存頻率也僅為110MHz,遠低於TNT2等。
Rage128 Fury的特點在於它是今年PC機上功能最完備的3D加速卡,這一塊顯卡集成了視頻輸入/輸出,DVD動態插值補償等功能,因此Rage128是今年視頻播放效果最好的3D加速卡。
Permedia3也是一款遲到的3D卡,如果按正式發布的時間來看,它應該和TNT是同一代產品,可是直到現在年底,Permedia3才總算上市了。不過在這個時候,Permedia3的指標顯得落後了一些,它的核心和顯存頻率分別為80MHz和110MHz,並且可超頻性很差。
Permedia3的技術參數如下:內建300MHz RAMDAC,最大解析度可達2048×1536,單周期多紋理貼圖,7個獨立的DMA引擎,像素填充率為220兆/秒(雙線性凹凸紋理)或110兆/秒(三線性凹凸紋理),多邊形生成速率為200萬個/秒,多邊形繪製速率為1100萬個/秒,針對DirectX6.1和SSE、3DNow!指令集優化。我們可以看到這些性能指標並沒有什麼突出的地方。不過3Dlabs的加速卡並非針對普通用戶,Permedia 3從本質上來說是一塊入門級專業3D加速卡。從前一代Permedia2的表現來看,雖然它在3D遊戲中的效果比較差,但通過驅動程序的優化,在3D設計方面卻遠非TNT等所能比。Permedia3也是如此,它在遊戲中表現平平,性能在今年上市的3D顯卡中只能排在隊末,但這塊顯卡在3D設計中的表現不容忽視,是這一價位上專業圖形用戶最好的選擇。
由於Permedia3推出的時間較晚,性能(主要是3D遊戲)方面和TNT2存在一定差距,所以生產Permedia3的廠商並不多,產量也比較??Dlabs隨後推出了VX1,採用GlintR3晶元,同樣著重於3D圖形設計,奇怪的是VX1和Permedia3的性能指標一模一樣,估計這是出於市場而非技術方面的考慮。
系統整合是1999年PC市場的一大風景,整合晶元組最成功的無疑是Intel i810系列,它整合了i752的顯示核心,雖然性能上仍然無法和TNT相比,但差距並不懸殊,支持的3D特效也比較多,在實際使用中還可以接受。整合晶元組的實力將會越來越強,S3正和VIA合作研發最新的整合型晶元組,即使有一天,整合晶元能夠應付所有3D遊戲,我們也必須明白這樣一個事實:單一的3D加速卡在性能方面總會走在整合晶元組的前面。如果僅僅從性能方面考慮,用戶還是應該購買專用的3D加速卡。
3D加速卡
以上第四代3D顯卡的大致狀況相信大家已經有所了解,它們在技術方面都沒有取得重大突破,所幸在今年快要過去的時候,新一代3D加速卡已經準備上市了,nVIDIA Geforce256、S3 Savage 2000、Voodoo4、Voodoo5都已發布,性能方面較第四代顯卡又有提高。
第五代3D加速卡還提出了不少新技術觀點:
幾何轉換、光照操作是3D圖形處理任務的前一半,有了3D加速晶元集成的幾何轉換、光照引擎,我們就能夠使用硬體實現幾何變換和動態光源照射處理,代替以往讓CPU浮點單元進行的繁瑣的幾何計算過程和利用紋理色彩變化來模擬的光照效果。GeForce 256是最先支持幾何轉換與光照引擎的3D加速晶元,它的幾何、光照引擎實際上是只有256個指令的DSP(數字信號處理器),就像創新的E-mu 10K1晶元一樣,可以通過BIOS和驅動程序的升級,不斷發揮出更強大的功能。
S3的Savage 2000同樣具備自己的T&L引擎S3TL,但S3並不像nVIDIA那樣強調幾何轉換、光照加速的歷史意義和強大能力,對S3TL幾何光照處理功能宣傳得比較低調,一方面是因為幾何、光照運算是搶CPU的浮點引擎的飯碗,另一方面要遊戲開發者和用戶都接受這一新生事物還有一個過程。S3TL使Savage 2000不但在現階段很有競爭力,而且在將來也能佔據一個“制高點“。儘管S3比較低調,但是Savage 2000的S3TL仍是一流水準:8個OpenGL兼容的硬體動態光源遠超過我們早先的估計,是現有CPU處理能力的3倍,可以生成4~10倍複雜程度的場景等等。為了實現幾何轉換、光照加速功能,Savage 2000需使用DirectX 7和OpenGL作為API。
在S3 Savage3D誕生的時候我們就接觸到了這項技術,但是迄今為止為這項技術作了充分優化的3D遊戲仍然只有Unreal一種。但是S3TC在畫面上的優秀表現引起了其他廠商的注意,於是我們看到了3dfx的紋理壓縮技術:FXT1。FXT1與S3TC非常相似,但是它可以提供更高的壓縮比(高達8:1)。3dfx開放了FXT1的源代碼,希望能夠得到廣大軟硬體廠商的支持。
T-buffer技術看起來好像是橫空出世,其實早期發展的計算機圖像技術都是T-buffer的理論基?T?0年代,人們用標準的射線跟蹤來形成高質量的圖像。那時的問題是視覺效果不真實,包括鋸齒、銳化、陰影固定、玻璃無半透明效果等。為了解決這個問題,1984年開發了著名的分散式射線跟蹤(Distributed Ray Tracing)技術。
1.全場景抗鋸齒特效。只要仔細觀察市面上的每個遊戲,會發現在所有多邊形邊緣都有裂紋,這是由於圖像信息量縮減造成的。現在一個非常普遍的解決方案就是:抗鋸齒。當今的3D卡有兩種類型的抗鋸齒技術:邊緣抗鋸齒(Edge Antialiasing)和上行採樣(Over-Sampling)。這兩者都有弊端,邊緣抗鋸齒是由軟體實現的,即軟體為每個進入流水線的三角形邊緣做標記,形成一個有輪廓的邊緣。當場景渲染完畢后,驅動程序再找回信息標記清單並進行清理工作。這個過程要消耗大量的CPU資源,因為它要保存所有邊緣信息的列表清單,然後才能做抗鋸齒處理。至於Over-Sampling,它的缺點是會令填充率劇減,因為它需要大量的填充率來完成。
T-buffer支持全場景空間抗鋸齒,這可以消除多邊形邊緣參差不齊的鋸齒,並避免多邊形可能發生的錯位(通常發生在很小的多邊形上)。T-buffer還支持像素等級的渲染(即小於像素寬度),可以創造更加複雜細微的顏色,使邊緣更加圓滑,邊緣的顏色也更柔和。而真正可貴的是這一切都由硬體完成,T-buffer的價值正在於此。
2.運動模糊特效。運動模糊在電影中場景、人物、視角的快速移動方面應用得非常普遍。簡而言之,運動模糊就是允許畫面以穩定的幀速運行,且圖像看上去非常平滑自然。T-buffer也是對物體進行多次採樣,每次都在稍微不同的位置選取,然後一次性全部渲染。
3.焦點模糊特效。T-buffer另一個值得自豪的效果就是焦點模糊。但不能肯定是在整個遊戲中還是在特殊場景中使用焦點模糊效果。
4.柔和陰影和柔和反射特效。在現在的3D遊戲中,陰影和反射效果隨處可見。不過通常是人物或物體在地面上有一個固定的黑影,很不真實。T-Buffer技術自稱可以改變這種情形。
相對應於早先Voodoo2的SLI技術,使用這種技術可以聯合多塊相同晶元同時并行處理。這款先進的處理器是VSA-100,支持每個系統最多可使用32個晶元并行處理,使用可編程的scan-line interleaving(SLI)技術,在VSA-100的內核中是一個新的先進的3D引擎,它能使“超級”填充率變成現實。對於消費市場來說,基於VSA-100晶元的產品將使用16MB~128MB顯存,1至4塊晶元,可生成每秒 333M像素到1.47G像素的填充速度。在專業市場,Quantum3D將利用8到32塊晶元,128MB至2GB顯存來製造系統,將在Aalchemy系列產品中實現遠超過每秒3G像素的填充率。VSA-100由超過1400萬個晶體管組成,使用了增強的0.25微米工藝,6層金屬半導體工藝。標準的工業樣本模型支持的新3D特性包括32位色渲染,24位深度Z-Buffer和W-Buffer,DXTC和FXT1貼圖壓縮支持,最大支持2048×2048尺寸貼圖。額外提供的支持是同時可用於AGP 4×和PCI,DVD硬體補償, Voodoo4、Voodoo5便是採用了VSA-100的3D加速卡。
使用VSA-100內核的單晶元的 Voodoo4家族產品將定位於主流價位。Voodoo4 4500將有PCI和AGP兩種版本,並將板載一個單VSA-100晶元和32MB顯存。這款產品將在每個時鐘頻率下渲染兩個像素,每秒將產生333M到367M個像素;Voodoo5 5000 PCI將使用雙VSA-100晶元和32MB顯存。Voodoo5 5000 PCI顯卡,每個時鐘頻率周期渲染4個像素,將提供667M到733M每秒的填充率;Voodoo5 5500 AGP將使用4個VSA-100晶元處理器和64MB顯存。64MB顯存將允許更高的解析度和像素深度,當全屏抗鋸齒打開和T-Buffer效果打開時,更多的顯存將可以作為貼圖存儲器。這款卡將每個時鐘周期渲染4個像素,像素填充率與Voodoo5 5000 PCI相同;VSA-100內核構造的旗幟產品是Voodoo5 6000 AGP,它將帶有4個VSA-100處理晶元和128MB顯存,將是第一款突破每秒10億像素填充率的3D加速卡產品。它將在每個時鐘周期內渲染8個像素,提供每秒1.33G到1.47 G的填充率。
以上介紹的新技術看起來令人怦然心動,相比起上半年的第四代3D加速卡有了比較大的飛越,我們期待這些技術能夠儘快獲得足夠的支持,並在應用中取得出色的表現。