3D技術與3D芯片資料
發布時間:2008-07-06 閱讀數: 次 來源:廣西網樂原網絡科技有限公司
3D(三維)顯示技術
目前,低價3D技術正廣泛應用于臺式系統中,已不再是主板供應商為了商業競爭而提供的一種選擇。3D顯示技術也已不再局限于令人眼花繚亂的游戲應用,通用計算應用環境是其潛在的用武之地。正如GUI的出現和鼠標的應用改變了過去的字符操作界面一樣,3D技術在顯示和分析數據方面將會有更多新的用途。通過對目前3D技術產品及相關技術做一分析比較,有利于對3D軟硬件技術全面、正確的認識,從而為今后3D的應用做出正確的選擇。
3D計算環境
未來的3D顯示技術將怎樣改變我們的計算方式呢?第一階段,3D的主要市場產品將集中于傳統的3D應用,諸如建筑設計漫游、虛擬現實(VR)、動畫和高級游戲程序引入到主流臺式系統中。其后,第二階段我們將看到3D應用于標準應用程序中,如圖形編輯器、電子表單甚至字處理程序中。
要想預測3D技術在通用商用領域應用的可能性,不妨考慮一下你手編的高級電子報表和數據庫程序,其中有些程序已經能夠用于三維顯示,如對數據可用三維圓柱體表示,并根據需要,進行水平或垂直方向的任意切割。
在商業領域里,硬件開發商是否能迅速地把3D技術應用于程序中,有時是至關重要的。Intel的MMX技術已經在X86指令集中增加了57條新的指令,用于加速多媒體應用程序,如3D和2D圖形、視頻、音頻、語音綜合和識別以及通信等。根據Intel的推測,其性能可以提高50~100%。
MMX集成于新一代Pentium處理器芯片(P55C)中,已于1997年初推出。MMX支持OpenGL和Microsoft的DirectX編程接口。AMD和Cyrix的新型芯片也都支持MMX技術。
在CPU和圖形芯片中分布處理3D任務有眾多的方法,但目前流行的圖形板大多只是整數運算工作方式,因此,CPU必須承擔3D應用程序中的浮點運算,并將結果轉換成整數。在大多數情況下,圖形芯片只作為渲染引擎,而把幾何造型、透視投影及光照工作等留給CPU完成。最后的表面物體特征渲染工作由低價3D圖形板實現,其中包括混合幀、紋理、Z-buffer(存儲深度信息)和動態分配內存等。
例如,如果某應用不需要Z-buffer(大多數游戲不需要)時,剩余的內存可以用作紋理和幀緩存。很多應用程序在主內存中創建幀緩存,這種方式不需要圖形卡有更多的顯示存儲器,從而節省成本。但這也帶來了性能瓶頸,即當隱藏幀要顯示到屏幕上時,必須通過PCI總線。
高檔3D加速圖形卡則采用了獨立的幀存、紋理存儲器和深度信息存儲器,并且每種緩沖存儲容量至少為2MB。不幸的是,光緩沖存儲器的開銷就足以使其被拒之于主流市場的門外。
3D硬件發展概況
雖然3D加速芯片幾乎用相同的方法分攤CPU的處理任務,但3D芯片的結構千差萬別,有些芯片可以編程,如Rendition公司基于RISC的Vrit和Chromatic公司的Mpact,它們都采用了超長指令集(VLIW)的結構。其它可以編程的3D芯片,正不斷陸續上市。
大多數可編程3D芯片的性能依賴于驅動它的低層軟件的擴展程度。Rendition公司和Chromatic公司目前的芯片都支持固件Firmware模式。還有的廠家編寫自己的低級代碼來加強對算法、數據結構和新特性的開發。
Mpact的中間件微代碼模塊允許系統設計者開啟或關閉特定的應用,如3D圖形、視頻會議和電話通信等。與此不同的是,Vrit被設計為用于3D加速,它包括專門用于實時3D操作的“象素管道”硬件電路,用作紋理映射和混合。另外,RISC內核負責幾何造型和濾波(Filte ring)。這些都極大地減輕了CPU的負擔。
這種硬件電路的解決方案犧牲了靈活性,但通??梢垣@得更高的性能。當API和其它標準被修改或升級時,用戶都得依賴這些廠家來提供新的軟件驅動程序?,F在,有許多圖形卡制造商能夠提供低價3D芯片和圖形卡,這為用戶提供了極大的便利。新的3D芯片與其以前制造的2D芯片在引腳級兼容,這樣,3D芯片可以直接用在以前的圖形卡設計當中。如S3公司就提供Virge芯片,它能與市面流行的S3 Trio64V+芯片引腳級兼容。
專用的3D解決方案并不一定取代今日的PC圖形卡,相反,它能以“象素泵”的并行工作方式,使獨立的PCI卡與圖形卡協同工作,即當3D芯片計算出象素點位置后,通過PCI總線傳送到圖形顯示卡上。3Dfx的Voodoo Graphics加速芯片集和Videologic的PowerVR等專用3D芯片都要求一塊現有的圖形加速卡。為了將來集成的需要,3Dfx已經與Alliance公司合作,把Voodoo組合到Alliance的Promotion圖形控制器中。目前,許多低價3D加速卡的一個不足之處是只能支持一種顯示模式,即640×480,64K色。對現今大多數不需要更多細節的游戲程序而言,這似乎已經足夠了,但這種情況最終將會改變。隨著商業應用3D的日益增多,640×480的分辨率將不能滿足需要,與其頻繁地在不同分辨率模式間切換,還不如增加額外的顯存來支持800×600的3D加速。
3D軟件發展現狀
目前,大約有50多種3D API。這種狀況并不利于3D硬件市場應用軟件的開發。API所提供的標準圖形函數庫,可讓程序員與其應用環境相掛接(如OS、數據庫、硬件驅動程序等)。在3D開發環境中,API函數也為程序員提供了一個相對隔離層,使其不必去理解專用硬件具體特性的細節。
市面上最流行的三種3D API是OpenGL、Quick-Draw 3D(QD3D)和Direct 3D。其中,Direct 3D有Microsoft的強大市場優勢,而OpenGL和QD3D的交叉平臺特性可以使開發者不僅僅局限于Windows中。
(1)OpenGL的前身是SGI公司的GL,用于Iris圖形系統中,它是以上三種3DAPI的元老,現已廣泛用于MAC、PC和Unix開發環境中。它注重于快速繪制2D和3D物體,并且比其它兩種API更低級。例如,它沒有包含復雜的預定義對象、自動陰影和光線跟蹤等功能。它是目前科學和工程視算的無可爭辨的標準,可用于高級CAD、模擬和照片級真實感的游戲視景中。為了把該API從專業應用移植到更廣泛的通用應用環境中,最近,SGI聯合Sun公司共同開發CosmoGL,它是OpenGL的一個變種,可用于加速3DWeb應用程序紋理映射和Windows 95以及NT的游戲開發。
OpenGL的基本版本提供了大約120個函數,用于多邊形繪制、旋轉、縮放、天氣效果(霧和云等)及深度搜索等功能。但OpenGL缺乏像QD3D和Direct 3D那種面向對象的設計方式。當使用OpenGL API時如同使用狀態機器,即參數在被改變之前一直保持原狀態。這種方式節省了程序員的部分工作量,但當程序員在某個程序中忘記保存和恢復狀態時,將造成難以預料的結果。
OpenGL采用客戶/服務器的方式工作,因此,它能夠在分布式環境中協同工作,但因為它沒有包括窗口函數,所以,若與UI獨立工作,則需要有專門的擴展庫來使OS和GUI與之相掛接。
OpenGL的補充版本是Open Inventor。它是一個高級的面向對象的圖形庫,可作為OpenGL的上一層來使用,其增加的新特征有幾何造型、運動和光照,以及材質編輯器。像OpenGL一樣,Open Inventor已提供給其它公司,例如用于InternetVR中的VRML格式就是基于Open I nventor。
(2)QD3D最初作為MAC OS的圖形擴展,現已包括對Windows的支持,因為QD3D是完全面向對象的,新的對象事例能夠繼承復雜的特征(包括光照、幾何形狀和紋理等),從而簡化了3D圖像的構造。
QD3D用稱為3D元文件(3DMF)的格式存儲場景和對象信息。它有壓縮二進制和可讀兩種選擇格式,并可以用剪裁板實現3D對象的剪切和粘貼。同時也可以存儲QD3D對象到圖像庫中,利用拖放技術從圖庫抓放到3D場景中。
QD3D包括標準的3D圖元,但它能比OpenGL處理更復雜的幾何形狀,如非均勻有理B樣條(N URBS)等,它的可擴展結構使你能夠增加新的軟件渲染引擎和存取硬件加速器。另一個優點是它支持并互式渲染,即在設計時就能看到和直接操縱對象。對程序開發者來說,可能寧肯選用更低級的硬件獨立的3D API進行開發。Apple提供了渲染加速虛擬引擎(RAVE),它包含基本的圖元,但不支持高級的函數調用。如對象輸入/輸出等。像QD3D那樣,RAVE支持Mac和Windows。
(3)Microsoft的Direct 3D是其Direct X家族中最新的成員,是三層接口界面中的中間層。其中最低層的HAL面向硬件和設備驅動程序,其上較低層的API被授于硬件獨立的存取特性,最高層也可以接受來自其它的API調用,包括OpenGL等。
用Direct X系列創建的應用能夠確定系統中哪些部分的功能可由硬件實現。對那些硬件不支持的功能,可以用簡單的算法加以取代。同時,Direct 3D也能用軟件仿真任何功能,這得歸功于硬件仿真層(HEL)。
像QD3D那樣,Direct 3D支持清晰的、面對對象的可擴充結構,相對QD3D而言,Direct 3D缺少一些基本的3D對象,如柱、球、圓錐等,但它的動畫特征超過OpenGL,這對游戲開發而言相當有用。目前,Direct 3D的最大局限是只能用于Windows 95。
3D的未來發展趨勢
最終我們會理所當然的采用3D顯示技術,使之運行于千兆位的硬盤和16M以上內存的平臺中。然而,由于3D給應用程序所帶來的復雜性,使得程序員必須花費相當長的時間來掌握該技術。因此,我們將看到在今后較長的時間內,3D還不能占據主流應用。首先在3D應用中投注大量資金開發并獲利的將是那些游戲開發商們。
正如GUI界面曾給用戶帶來似乎是礙手礙腳的感覺一樣,3D也將面臨3D應用和3DUI元素(如GUI中的對話框和滾動條)的接受過程。當3D應用日益廣泛時,商業應用也必將對其性能有更高的要求。
圖形加速芯片與圖形加速卡
當PC電腦進入多能奔騰時代后,電腦在CPU的運算速度、內存容量、顯示分辨率等方面已經超過PS(Play Station)等次世代游戲機,但在3D游戲的圖形方面卻總不如PS游戲機,主要原因就是PS游戲機里有一塊專門處理3D圖形的芯片,而一般的PC電腦中卻沒有。在PC電腦中,CPU的負擔太重,對于有大量數據運算的3D圖形處理,感到力不從心。于是,迫切需要專門的3D圖形加速卡,用來實時處理大量真彩色、高分辨的3D圖形。在市場需要的呼喚下,美國的著名顯示卡生產廠商S3公司最先推出以S3 ViRGE芯片為核心的3D圖形加速卡,從而引發了一場有數十家廠商參加、時間長達兩年的爭奪游戲3D圖形加速卡標準的大混戰。下面我們結合一些典型圖形芯片,介紹這方面的技術。
顯示卡與圖形加速卡的基本知識
1.普通顯示卡和3D圖形加速卡的區別
普通顯示卡的緩存器沒有圖形處理功能,它對圖形的處理工作需要通過CPU運算來完成之后將數據通過總線傳給顯示卡上的緩存器,再完成圖形顯示,因此圖形顯示速度慢,CPU運算負擔重,顯示分辨率及刷新率低。而3D加速卡上有專門處理圖形、圖像的芯片,可以直接畫線、畫圖、填充等,可直接從卡本身的存儲器調用有關圖形資料,減少了CPU計算的工作量和通過總線輸出的過程,加快了圖形顯示速度。
2.動畫制作、工程設計需要高性能的3D圖形加速卡
大多數PC機配備的顯示卡顯示內存容量較小而且速度較慢,沒有三維圖形加速及Z緩沖等圖形處理功能,所以無法實時將三維圖形快速旋轉、消隱、變換等。而且在三維實時建模設計過程中,圖形處理的工作量大,而硬件加速又無法支持,只能靠CPU和軟件模擬來實現,以至于在處理復雜的圖形時,連高能奔騰也無法承受計算量,因而需要在PC機上安裝帶有3D硬件加速的高速圖形卡。某些加速卡上甚至裝有專門的幾何運算引擎,如3D LABS GLINT500TX的配套產品DELTA芯片,可以極大地減輕CPU和PCI總線的負擔,可承擔CPU約70%的浮點運算任務。
3.基于S3 VIRGE系列芯片的各種顯示卡的主要不同點
VIRGE芯片是S3公司推出的第一代3D加速芯片,是第一批將3D硬件加速引入主流圖形加速卡的產品。按芯片推出的順序來看,S3 VIRGE系列主要有VIRGE、VIRGE/VX、VIRGE/DX、VIGE/GX、VIRGE/GX2。目前基于S3 VIRGE系列芯片的顯示卡有多種,主要是根據顯示芯片和支持的顯示內存類型來區別,當然它們的性能也有很大區別。
◇VIRGE芯片:S3公司基于DRAM/EDO DRAM的第一個3D加速芯片,使用135MHz RAMDAC。采用此芯片的顯示卡最多,如麗臺WINFAST 3DS600、皇朝KT-3000、中凌ATC-2325B等。
◇VIRGE/VX芯片:支持VRAM且采用了220MHz RAMDAC。采用此芯片的顯卡有DIAMOND的STEALTH 3D 3000、麗臺WINFAST S510等。
◇VIRGE/DX芯片:支持EDO DRAM且采用了170MHz RAMDAC。聯訊的VIRGE 3000系列、皇朝KT-3100、中凌ATC-2345B、映泰(BIOSTAR)CRUX375、宏基(AOPEN)PT70等顯示卡均采用了此芯片。
◇VIRGE/GX/GX2芯片:支持EDO DRAM/SDRAM/SGRAM且采用了170MHz RAMDAC。如麗臺WIF AST 3DS 680(GX2)和耕宇GENESIS GX/GX2顯示卡使用該芯片。
4.AGP對于顯示卡和3D應用的發展產生的影響
由于三維應用比傳統的2D繪圖需要更大的圖形記憶體來滿足3D要求,且3D圖形大量的資料傳輸也已經超過原來PCI總線設計的負荷,所以PCI總線已成為3D圖形處理的瓶頸。而從AGP的定義上看來,其主要是為了解決PC機處理三維圖形能力不足的問題,像動態儲存紋理映射數據在主內存中、533MBPS的數據傳輸率等,可以解決目前一般3D應用所遇到的問題。
5.使用AGP技術需要哪些條件
◇基于Intel 440LX和440BX芯片組的主板,如聯想、梅捷、精英、微星、浩鑫、大宇、技嘉、中凌、宏基、華碩等公司都向市場推出了大量這類芯片的主板。VIA公司已經開發出可在奔騰主板上支持AGP接口的APOLOV P3芯片組,邁肯甚至已推出了基于該芯片組的主板AI5VG,友通(DFI)推出了P5BV3,磐英(POX)推出了P55-VP3。
◇采用AGP接口的顯示卡。目前主要有麗臺WINFAST 3D L2300(基于3D LABS PERMEDIAⅡ芯片)、TRIDENT 3D IMAGE 9750、DIAMOND FIREGL 1000 PRO(基于3D LABS PERMEDIAⅡ芯片)、DIAMOND VIPER(NVIDIA RIV A128位芯片)系列、微星MS-4415、華碩AGP-V3000、PRO RAPHICS 3D AGP等。采用S3 VIRGE/GX2芯片組的顯示卡也支持AGP。
注:某些顯示卡有PCI/AGP兩種版本,如麗臺WINFAST 3D L2300,用戶購買時應注意。
◇安裝驅動程序。目前的大多數操作系統還未提供支持AGP的驅動程序,需主板和顯示卡驅動程序支持(Windows 98和Windows NT 5.0中提供有AGP的驅動程序)。
6.3D圖形加速卡要求配置的內存容量
顯示內存除了可以提供顏色和分辨率外,還要保留一些顯存供硬件切換、Z緩沖及材質快取等使用,所以顯示內存加大是未來顯示卡的發展趨勢。由于1M顯存僅支持640×480下的真彩色,所以1M顯存根本無法供3D加速卡使用,要2MB顯存才能保證最基本的3D加速。由于4MB顯存可以支持1024×768下的24位真彩色,并還有剩余的顯存來處理3D圖形,所以經常使用1024×768以上分辨率的用戶應在顯示卡上配4MB以上顯存,而使用800×600以下的用戶最好配2MB以上顯存。
7.專業級3D加速卡的主要特點
◇采用專業級的3D圖形加速芯片。如麗臺3D L2200使用了3D LABS的PERMEDIA NT芯片,3D L2300使用了PERMEDIAⅡ芯片,3D L2500使用了GLINT500TX芯片,3D L2520使用了GLINTMX芯片,而3D L3000使用了兩塊3D LABS的GLINT500TX芯片。L2200、L2300、L2500、L3000均使用GLINT DELTA作為幾何流水線加速處理器。DIAMOND公司的FIRE GL3000顯示卡使用GLINTD LTA作為幾何流水線加速處理器,使用GLINT500TX作為渲染加速器。
◇強大的RAMDAC(RAM數模轉換器)支持。由于顯示器只能接收模擬信號,而PC只能處理數字信號,所以顯示卡的RAMDAC芯片負責將PC能夠處理的數字信號轉換成用于顯示的模擬信號,其轉換速度越快,得到的屏幕刷新率就越高。專業級的3D圖形加速卡幾乎全部使用220MHz以上的RAMDAC芯片,如上面提到的3D L2200、L2300、L2500、GIRE GL3000、MILIENIUM專業系列/MILLENIUMⅡ(最高達250MHz)超級系列等。
◇使用高速顯示內存且容量多在4MB以上。如麗臺3D L2200使用4MB SGRAM,可以擴充到8MB,3DL2500帶有8MB VRAM(幀緩沖)+8MB EDO DRAM(32位Z緩沖),3D L2520和3D L3000帶有 8MB VRAM(幀緩沖)+16MB EDO DRAM(32位Z緩沖)。MGA的MILILENIUMⅡ最大支持16MB WRAM, IRE GL3000最大支持32MB Z緩沖(擴展板),而科環公司的GRAPH-EXPRESSMD甚至支持32MB幀緩沖和48MB Z緩沖(定制)。
◇強大的3D圖形處理能力。大多數專業級3D加速卡均固化了OPENGL的幾乎所有函數,以100%支持OPEN GL硬件加速,因此這些顯示卡均具有強大的3D圖形處理能力,如麗臺3D L220和DIAMOND的FIRE GL3000每秒均可以處理50萬個以上的多邊形,麗臺3D L2500每秒可以處理75萬個以上的多邊形,科環公司的GRAPH-EXPRESS MD甚至可以每秒處理100萬個多邊形紋理映射。
8.3D圖形加速卡常見的功能
◇Texture Mapping(紋理映射):在3D物體上貼上位圖或圖像,使物體具有真實感,例如,當游戲中的對象在沙丘上運動時,3D加速卡不斷地將沙地位圖貼上去,以使沙丘場景看起來更真實。
◇Z-BUFFER(Z緩沖):存放場景中各個像素深度的內存緩沖區。
◇Perspective Correction(透視修正):在不同角度和距離情況下都能使紋理貼圖3D對象看起來更真實。
◇MIPMAP(MIP映射):此功能在內存中以不同分辨率、不同尺寸大小來保存一幅紋理圖形,以適合對象的不同尺寸,對顯示正在移動的紋理貼圖對象很有幫助,3D芯片不必壓縮或放大紋理圖形來適應對象尺寸大小變化,而根據對象大小來快速選擇更大或更小的紋理圖形,使得鏡頭靠近對象時紋理可以光滑變化。
◇Billinear Filternig(雙線性過濾)和TRILINEAR FIL TERING(三線性過濾):一種紋理映射技術,可減少紋理縮放時的塊狀圖,使圖像層次更加分明。
◇ALPHA混合:一種顏色混合方法,可以將兩個重疊的紋理圖像進行混合,使其中一個看起來是透明的。
◇Dithering(抖動):變化顏色象素的排列以得到一種新顏色的過程。
◇FLAT:一種基本的繪制技術,用它繪制的每個三角形內部都使用同種顏色。
◇Point Sampled(點抽樣):一種簡單的紋理映射技術,用最近的紋理元素來決定當前點的顏色。
◇濾波:消除3D圖像中的色塊感,使其看起來更平滑。
◇霧化:當3D對象移動時,將3D對象與固定的顏色進行混合,使其看起來像正在消失或者正從霧里或黑暗中出現。
◇Gouraud Shading:用三角形頂點的顏色來進行插值得到三角形內部每個點的顏色。
◇顏色內插值:當放大一個視頻窗口而又沒有使用插值處理時,圖像邊緣會變成鋸齒狀,因此加速卡應在X方向和Y方向進行插值處理,以使圖像看起來更平滑。
9.圖形加速卡常使用顯示內存的類型
◇EDO DRAM:對DRAM的訪問模式進行了一些改進,提高了內存有效訪問的時間,大多數基于S3 TRIO64/64V+/64V2DX/VIRGE/VIRGE DX系列芯片的顯示卡使用EDOR AM作為顯示內存。
◇VRAM:專門為圖形應用優化的雙端口存儲器,常用于中高檔顯示卡,如DIAMOND的STEAL TH 3D等。
◇EDO VRAM:對VRAM的訪問模式進行了一些改進,性能比VRAM有所增強,麗臺WINFAST S4000、S430、S510均使用此種顯存。
◇WRAM:VRAM內存的增強型,可加速常用的視頻功能,如位塊傳輸和模式填充等,WRAM性能比VRAM可提高50%。MGA的MILLENIUMⅡ即使用此種內存。
◇SDRAM:與系統總線同步工作,避免了在系統總線對標準DRAM進行存取時所需的額外等待時間,理論上可以使圖形處理速度加倍。中凌ATC-2465A4使用SDRAM作為顯示內存。
◇SGRAM:是SDRAM的增強型,速度比EDO DRAM快8倍,具有圖形增強方面的特性,支持圖形處理中兩個最有用的操作,寫掩碼和塊寫,寫掩碼減少或消除了對內存的讀-修改-寫操作,塊寫則有利于前景或背景的填充。麗臺的WINFAST 3D S680、中凌的ATC-2415A和MGA的MYST IQUE(米斯泰克)系列等使用此種內存。
◇MDRAM:依靠多個獨立的有效區段使得每個進程在進行顯示刷新或圖形加速時不會有時間損耗?;赥SENG LABS ET6000芯片的顯示卡使用此種顯存,如中凌ATC-2165、聯尚AIR-ET6000、映泰MARS6000等。
◇RDRAM:主要用于高速突發操作,訪問速率可高達500MHz,而傳統內存只能以50MHz或75MHz進行訪問,如創通公司的圖霸卡3D MA334和微星的MS-4415顯示卡。
3Dfx圖形加速卡
美國3Dfx公司后來居上,在這場3D圖形加速卡標準的大混戰中,以精湛的技術和周到的服務,最終贏得了廣大游戲開發公司的青睞。用3Dfx公司生產的VooDoo(巫毒)系列芯片制作的3D加速卡,已成為電腦游戲3D圖形加速卡事實上的標準。它不但已經超越了世嘉的土星、索尼的PS等32位次世代游戲機,而且將繼續超越任天堂的N64和世嘉的土星64游戲機。
1.3Dfx加速卡的性能
目前最能直觀反映3D加速卡性能的是多邊形生成速度和像素填充率兩項指標。3Dfx VooDoo加速卡的數據為:
◇多邊形生成速度:1,000,000個三角形/秒
◇像素填充率:45,000,000個/秒
上面的數據大大超過了S3公司的S3 ViRGE系列等著名3D圖形加速卡。
3Dfx VooDoo圖形加速卡支持各種標準的3D特技處理,除了具有卓越的硬件性能外,3Dfx加速卡還支持眾多的3D應用程序接口,如OpenGL、Direct3D、Criterion Rendware、Realitylab2.0、Intel 3DR、Multigen GameGen、Autodesk 3D Studio等。
2.3Dfx系列加速卡的選擇
3Dfx VooDoo系列芯片包括VooDoo、VooDoo Rush、VooDoo2等芯片。其中VooDoo和VooDoo2是單獨的3D圖形加速芯片,沒有2D圖形處理能力,必須與其它顯示卡配合使用;而VooDoo Rush芯片同時具有2D/3D圖形加速功能,可以單獨使用,不過為了兼顧2D圖形處理的原故,其3D加速性能比VooDoo芯片稍微差一點。
VooDoo芯片支持4MB顯存,最高可支持640×480真彩模式下的3D加速功能。使用時,要用一根隨卡附帶的電纜將3Dfx加速卡的輸入插座與電腦顯示卡的輸出插座聯接,然后將3Dfx加速卡的輸出插座與顯示器的視頻信號輸入插座相連。當工作在2D圖像模式時,是原來的2D圖形顯示卡在工作,3Dfx加速卡只起一根導線的作用;當工作在3D模式時,3Dfx加速卡自動切換進行3D加速。
VooDoo Rush芯片支持4MB~8MB顯存,最高可支持1024×768真彩模式下的3D加速功能,使用時與一般顯示卡一樣,其價格與采用VooDoo芯片的3D加速卡接近。
VooDoo2芯片是3Dfx公司新推出的超級3D加速芯片。一方面向下兼容VooDoo芯片,另一方面在3D圖形處理速度和3D特技功能上有很大的提高。目前它的顯示內存最高可達到12MB,4MB作為Frame Buffer(幀緩存),另外兩個4MB分別分配給兩個材質處理單元。在使用Z-buffer時,最高解析度可達到800×600,而在使用SLI模式串接時,則最高可達到1024×768。由于Voodoo2的處理速度實在是太快了,以致于在整個3D成像的過程中,如果沒有與其速度匹配的足夠快的CPU,所有效果可能出現的瓶頸反應倒成了CPU在“暗中作崇”。因此,如果你有一塊Voodoo2,那自然要有一臺PentiumⅡ 266以上的機器才能算作“好馬配好鞍”。否則,在一般的機器配置上,如Pentium 166/200等,雖然在畫質等方面的效能仍會比Voodoo有所提升,但提升的幅度就遠遠沒有高速主機那么明顯了。Voodoo2的速度遠遠超過其對手RIVA128,比任天堂的N64快10倍,比索尼的PS快8倍。更厲害的是VooDoo2竟然支持多個VooDoo2加速卡插在一起,對3D圖形進行并行處理。
3D加速芯片MGA-G200
Matrox在1998年5月初發布了MGA-G200圖形加速芯片,該芯片針對Intel的Pentium II進行了優化,使用獨一無二的128位雙總線結構,最多支持16MB的高帶寬同步顯示內存,并帶有一個集成的230/250MHz RAMDAC以提供最高檔的性能,這些都使它性能變得非常不錯,下面介紹它的一些特點。
1.2D加速功能
MGA-G200是第一塊使用128位雙總線結構、單端口內存和集成230/250MHz RAMDAC的高性能圖形加速芯片。其中230MHz版本用于家用市場,250MHz版本用于高端市場。ZD WinMark 98的測試結果表明,在Windows95下,MGA-G200在1024×768的分辨率、24位色下的得分值為160,比其他顯卡在16位色下的得分值還要高。128位雙總線結構的性能已超過了普通128位總線,更不用說64位總線了。MGA-G200的128位總線采用了兩條獨立的64位總線,并且在圖形引擎內部并行使用,使許多2D圖形操作的速度幾乎加快了一倍。除此之外,128位雙總線結構使用雙指令管線(Dual Command Pipelining),允許兩個連續命令的讀和寫周期重疊并被同時執行。
2.3D加速功能
MGA-G200集成了一個相當強大的3D引擎,在運行3D應用程序時可以達到很高的性能,MGA-G200能夠加速Direct3D和OpenGL API。除此之外,MGA-G200還支持大多數3D功能,也支持在游戲中用于產生一些特殊效果的Multiple Texture Rendering(多紋理貼圖)。
MGA-G200內置可編程的浮點安裝和填充引擎。安裝引擎能夠完成全功能的Direct3D和OpenGL三角形、條形、扇形和矢量計算任務,能夠升級3D管線。MGA-G200還使用了一種稱之為Vibrant Color Quality Rendering(VCQ)的技術,可在渲染管線中準確使用32位色,并且能從源材質圖中渲染32位色的圖像,即使在設置為16位色的情況下,所有的內部操作仍然以32位方式進行,只是在最后才經過抖動處理轉變為16位色,因此,VCQ結構能夠提供高質量的彩色輸出。
MGA-G200支持高精度的32位Z-Buffering(Z緩沖),這個功能是眾多CAD軟件盼望已久的。Z-Buffering能夠提供很高的深度精度和增強的圖像質量,也將成為下一代3D游戲中必備的東西。
MGA-G200還采用了一個新的Symmetric Rendering Architecture(SRA,對稱渲染結構),以充分利用AGP 2×總線帶來的所有技術上的優勢。通過允許在幀緩沖區和主內存之間高速傳輸位圖,以及在主內存中直接進行所有的繪圖操作,SRA還能夠幫助提高2D加速和視頻操作的性能。繪圖引擎可用的內存的容量也大大增加了,可以給位圖存儲和其他一些操作提供足夠的緩沖空間。Windows也會使用到一些在系統內存中實現的特殊的2D繪圖功能,而這些功能都可以被SRA加速。
3.AGP接口
MGA-G200芯片支持所有的AGP 2×功能。它采用了一種獨特的總線控制技術:Intelligent Scatter Gather Bus Mastering(智能散點聚合總線控制技術),通過使用該技術,G200可以從整個內存中收集散布的數據,不需要CPU或AGP芯片組的干預。與其他的一些AGP芯片不同,MGA-G200支持從主內存讀取數據和向主內存寫入數據。
MGA-G200充分支持Windows 98操作系統,而Windows 95對AGP 2×的支持是相當有限的,而且只能夠通過使用Vgart驅動程序實現這些功能,并且Windows 95保留了12MB內存,這些內存不能被AGP使用。但Windows 98就不同了,它全面支持AGP 2×,而且可用的AGP內存取決于當前的空閑的內存,使AGP能夠充分發揮性能。
在DirectX 6.0、Windows 98和Windows NT 5.0中增加了許多新的功能,而MGA-G200能夠支持這些新功能。MGA-G200被設計成一個超級DirectX 6.0加速器,支持API的擴展功能集。
3D加速芯片S3 Savage 3D
S3公司1998年5月推出的Savage3D加速芯片,采用了128位總線結構及單周期三線性(Trilinear)結構,處理速度達到了前所未有的125百萬個像素/sec,5百萬個三角形/sec。內置250MHz RAMDAC,通過S3新設計的AGP引擎和微軟認證的紋理壓縮(Texture Compression)技術,它可以提供4×AGP的性能。S3公司自己認為,Savage3D將打敗Nvidia、Intel、3Dfx和ATI現有的和下一代的3D芯片。
下面我們就來談談S3公司這塊頂級芯片的特點。
1.單周期三線性多重貼圖(Single-Cycle Trilinear Mip-mapping)
在3D圖像技術中,被普遍應用的是紋理貼圖,它可在3D場景中提供高質量的著色細節,而且對最終用戶也很便宜。但原來那種在3D構件表面只有一個畫面的做法已經過時了,需要給3D物體提供其它的細節。為了減少3D物體表面的粗糙視覺,許多技術被開發出來,目前使用最廣泛的是雙線性過濾技術(Bilinear Filtering),但它還不能解決紋理貼圖的景深鋸齒(Depth Aliasing)問題。
景深鋸齒現象是當一個物體遠離視點時產生的,當一個物體正在遠離視點時,貼在越來越小的物體上的紋理圖像,也會被逐漸壓縮,以致最后會產生視覺像。這些視覺像在動畫中特別令人討厭,它會給一幅穩定的圖像帶來閃爍現象。
為了消除景深鋸齒,使圖像更符合實際情況,即遠處物體的細節比近處物體的細節要少,另一個技術被使用了,它就是多重貼圖(Mip-Mapping)。多重貼圖是一系列的經過預處理的不同大小的圖像,當視線移近物體時,就以較高細節的圖像顯示,反之就以較低細節的圖像顯示。不過,雖然多重貼圖解決了景深鋸齒的問題,但它又帶來了新的視覺問題,這就是當一個物體向遠處移動過程中,在圖像切換的時候會出現稱為Mip-Banding的現象,它在動畫中會表現得非常嚴重,而人的眼睛對這種現象又很敏感。
三線性過濾(Trilinear Filtering)技術就是用來消除Mip-Banding問題的,通過采用這種技術,在圖層切換的時候可以對已打底的物體進行平滑著色,因而能夠解決絕大部分的景深鋸齒和Mip-Mapping帶來的問題。三線性過濾技術比傳統的雙線形過濾(Bilinear Filtering)技術能更明顯地增強圖形質量,通過去掉運動物體像,使圖形更平滑。S3公司認為,Savage3D是第一個使用了三線性過濾技術但性能沒有下降的3D加速芯片,因此,它的填充速率最高能夠達到每秒顯示125百萬個經全功能三線性過濾的像素。而目前軟件開發商正在尋找諸如三線性多重貼圖(Trilinear Mip-mapping)這樣的新3D技術,為消費者提供高水平的更加真實的交互游戲。出于對圖形質量的追求,PC市場上支持三線性過濾的3D加速技術將會在大流量數據輸出方面取代雙線形過濾技術。
2.S3紋理壓縮(S3TC)
紋理貼圖是應用在3D物體上的位圖,在3D場景中被用作增加物體的表面細節,紋理可以是任何東西,如木質紋理、大理石紋理等,可以合成復雜的圖像如人、建筑物、樹等。要模仿現實生活的場景,就需要巨大數量的細節紋理,因而存放這些數據的地方大?。ㄖ鲀却婊蝻@示內存)是很重要的,但為了適應有限制的存儲量和帶寬,程序開發者不得不使用較少數量的紋理細節。
雖然AGP使系統可以從主內存中讀取紋理數據,從而提高了總體存儲量,但是AGP和主內存接口是共享的資源,除了紋理數據,AGP還被用于傳輸幾何數據,同時系統內存還要被操作系統和其他應用程序使用。因此,紋理數據的讀取不可能占用所有的主內存帶寬,但最大限度地使用帶寬對圖形子系統來說非常重要。
S3TC紋理壓縮技術可以幫助解決這兩方面的問題,允許存儲更多的紋理數據,同時減少了對帶寬的要求,且壓縮后圖像質量仍然很好。
Savage3D是第一款包含S3TC技術的3D加速芯片,微軟已把S3TC作為DirectX6.0中的標準壓縮技術,它可以把數據容量壓縮到原先的1/6。本質上可以通過存儲更多的材質數據,使芯片的幀緩存大小加倍,從而使Savage3D達到4×AGP的性能。
3.AGP性能
為了達到前所未有的AGP性能水平,Savage3D被特別設計為真執行模式(True Execute Mode),同時為Intel 440 LX/BX AGP芯片組進行了特別優化。另外,Savage3D專有的AGP Texture Look Ahead方案可以使貼圖引擎預先對所需的紋理數據進行讀取,因此可以減少貼圖引擎在AGP潛伏期(AGP latency)的等待狀態,同時結合S3TC技術,使之達到了目前產品中最高的AGP性能。
通過真彩色著圖,Savage3D可以產生生動而真實的圖像,這塊芯片包含了S3專有的抖動(Dithering Algorithm)技術,可使那些運行16位色的游戲以真彩色方式運行,這在絕大多數3D游戲仍支持16位色模式的今天,這項獨特功能是非常有用的。
4.DVD軟解壓方案
Savage3D為MPEG-2回放和交互DVD程序及視頻會議提供了理想的架構,Savage3D合并了“Sub-Picture Blending,子圖混合”且包含一個Highly-Tuned運動圖像補償塊,與其它3D加速器相比,只占用最低的CPU資源。Savage3D具有多級縮放功能,支持多個第三方的軟件解碼程序,可以得到最大的靈活性和性能。另外,為了達到強有力的視頻播放能力,Savage3D還提供了VIP視頻端口,可以達到最高的60MB/s的數據傳輸率,多視頻窗口和圖像映像為視頻會議提供了理想的解決方案。
這塊芯片集成了視頻輸出功能,可以減少圖像閃爍。NTSC/PAL編碼,編碼器支持復合視頻及S-Video信號輸出??删幊痰?-Tap閃爍過濾器和垂直過掃描補償技術可以達到非常好的TV輸出質量。
5.豐富的3D和2D功能
這些功能包括:Specular and Diffuse Shading(反射和散射)、Alpha Blending(Al pha混合)、Multiple Textures(多重紋理)、Palletized Textures(襯底紋理)、Edge Anti-aliasing(邊緣抗鋸齒)、Vertex and Table Fog(霧化)、16/24位Z-buffering。另外,Savage3D也支持Bump Mapping、Anisotrophic Filtering、Reflection Mapping 、Shadows、Texture Morphing、Procedural Textures等效果。
Savage3D將采用0.25微米工藝制造,支持125MHz SGRAM和所有現有的操作系統。
Intel i740圖形加速芯片
Intel i740是一套高度集成的圖形加速芯片,它提供了3D、2D和影像顯示性能,完全支持多媒體應用,其中包括軟件和硬件DVD、Inercast(VBI)、TV I/O及視頻捕獲。
1.性能特點
i740圖形加速器采用具有突破性的3D架構,可利用盡可能大的內存帶寬,獲得令人震驚的3D性能和高品質的圖形顯示,使用i740可以在運行商業及消費應用程序的主流平臺上獲得實時的3D性能。i740圖形加速芯片特別適合于家庭用戶的娛樂系統、小型商業圖形創作平臺以及各大公司的數據密集型系統。
i740是Intel首次采用自己的HyperPipelined 3D(超級管道3D)架構研制的第一款圖形加速芯片。
除了令人驚嘆的3D性能外,i740還提供了全方位的圖形方案,其中包括出色的2D顯示、流暢的視頻播放、電視信號輸入/輸出以及對PC家庭影院的完全視頻支持。i740圖形加速器的硬件輔助特性改善了用軟件播放DVD的能力,而且它的VMI端口提供了一個無縫接口,直接支持硬件形式的DVD回放。使用i740,電腦系統的設計變得更加靈活,可使用2MB、4MB或8MB的卡上內存,從而得到強大的圖形性能。
2.技術特點
i740的“超級管道3D”架構是一項很有創意的發明,它能獲得易于平衡、易于擴展及非常出色的3D性能。同時,也能讓用戶享受流暢的影像和突出的2D圖形顯示。這個架構主要有以下技術特點:
◇精確像素插補PPI(Precise Pisel Interpolation)
PPI與Intel獨特的紋理引擎協作運轉,在像素值和顏色值的插補過程中,能得到非常精確的計算結果。這種精確的像素處理在每一幀都能實現圖形高質量。
◇并行數據處理PDP(Parallel Data Processing)
PDP是一種并行3D運算方法,允許在圖形管道中同時執行幾個命令。這樣一來,無論在一個幀中需要實現多少數量的特性,都能連續保持高性能。
◇直接內存執行DME(Direct Memory Execution)
DME技術允許圖形加速器在系統主內存中保存與處理紋理,而不是在卡上顯存中進行。由于采用AGP的技術,可以保證獲得528MB/sec的帶寬。這樣便提供了高性能、理倫上無限制的紋理大小以及豐富多彩的渲染效果。
3.規格
支持AGP 2×;峰值情況下每秒鐘110萬個三角形;Z緩沖;雙線性過濾MIP映射;彩色阿爾法透明混合;實時紋理分頁和視頻紋理映射;霧化和大氣效果反射光源;邊緣修補(柔化);支持紋理顏色、色度的調節;集成有硬件調色板;全屏幕、全幀的視頻加速;支持廉價的軟件DVD與硬件DVD;支持視頻端口、TV I/O及視頻捕獲;支持電視會議、Intercastt和VBI。
4.測試情況
華碩推出的采用i740的顯示卡??V2740,初看此卡,那巨大的散熱片引人注目,卡上有8M SGRAM,卡的布線和選材一般。實際使用該卡與Intel的介紹有一定的出入。
測試中發現散熱片上的溫度很高,可以把人的手燙起泡,可見其能耗驚人。傳說i740很挑主板,特別是Socket 7主板,和其配合的一些低檔主板會出問題。如果用一些要求Direct 3D的游戲來測試,i740都能很好地把游戲中的細節表現出來,但總的來說還是不如Voodoo。在3D Bench 98的測試中,i740得了501分,比Voodoo高出了一截,比不上ORCHID RIGHTEO US 3DⅡ(采用Voodoo2芯片),而且,在3D Bench 98的41項加速功能中有3項不支持,多于Voodoo2(2項)??梢娙绻怯螒蛑辽系耐婕?,Voodoo2才是最佳選擇。在高端應用中,i740面臨著一個更強大的對手,那就是3D LABS Permedia2(以下簡稱P2)和Permedia2V(以下簡稱P2V)。P2在Windows NT下的Open GL測試中屢破紀錄,所以Intel特意要求與3D LABS合作開發在下一代芯片MERCED上運行的3D顯示卡。因此,3D LABS和Intel在3D芯片上的性能高低,明眼人很容易看出。在3DS MAX中(WindowsNT操作系統)對同一個文件渲染時發現,P2比i7 40至少快50%,而且隨著P2的增強型產品P2V的上市,差距還會進一步拉大。當然,i740的驅動程序還可以進一步改進,性能也會相應提高,而在高端應用中又比不上3D LABS等大牌專業廠商的專業芯片,可以說是腹背受敵,前景難料。
3D加速芯片RIVA TNT
3D加速芯片RIVA TNT是由著名的3D加速芯片設計廠商NVIDIA推出了新一代超級3D加速芯片。想要知道RIVA TNT有多厲害,只需這樣比較:一塊使用RIVA TNT單芯片的顯示卡,將在3D性能上完全超越兩塊使用SLI連接的3Dfx Voodoo2,而且其128位的2D加速引擎當然會比RIVA 128有所加強??真是超乎想象!
RIVA TNT最吸引人的地方并不是某項性能的提高,而是其整個體系結構有了很大的發展。RIVA TNT具有兩個渲染引擎和兩個效果處理引擎,其獨特的雙引擎、雙流水線架構使之肯定能超越Intel剛剛推出的顯示芯片i740,甚至很有可能超過3Dfx Voodoo2芯片集。RIVA TNT的設計規范咄咄逼人:2.5億點/sec的像素填充率和每秒800萬個三角形的處理能力。那么RIVA TNT如何能夠實現這樣驚人的性能呢?這得從它的3D流水線結構說起。
首先,RIVA TNT的高速內核需要一個恒定的數據流供其進行處理,所以,結構中設有預讀取隊列從AGP或PCI總線讀取數據,系統就能以較高的速度向圖形流水線輸入數據而減少等待時間。預讀取隊列與一個4KB的節點緩存連接,由節點緩存將多邊型數據送給兩個并行工作的渲染引擎,每個渲染引擎都擁有浮點運算處理器和像素處理器各一個,它們負責處理全部的像素預處理任務。隨后,兩個渲染處理引擎將數據輸出至各自的效果處理引擎來完成光線和特殊效果的處理(包括紋理貼圖)。在效果處理的同時,RIVA TNT另外設有8K的貼圖緩存將貼圖數據及時地送給效果處理引擎以加快處理速度。緊接著,數據被送進一組獨立的FIFO(先入先出)隊列,它在雙渲染處理引擎和幀緩存之間起著一級緩存的作用。FIFO通過128位的異步幀緩存接口將RIVA TNT內部時鐘為100MHz的數據送往時鐘可高達200MHz的幀緩存,以進一步提高系統效率。最后,RIVA TNT內建一個250MHz的RAMDAC,可以在較高的分辨率下提供更高的刷新頻率。
RIVA TNT支持4MB/8MB/16MB的顯示內存,而且全面支持AGP 2×接口和PCI接口。在API方面,RIVA TNT全面支持DirectX 6.0,包括新加入的突起映射(Bump Mapping)、單像素多紋理和模板緩存(Stencil Buffer)等特性,并且針對Direct3D作了完全的優化。NVIDIA還提供了一套通過了兼容性測試的OpenGL ICD驅動程序。此外RIVA TNT具有NTSC/PAL電視輸出和CCIR-656視頻捕捉接口,能夠支持MPEG-1/2、DirectShow和Indeo硬件視頻加速。在3D特性方面,RIVA TNT擁有100%硬件三角形發生器,支持逐像素的MIP映射和單像素多材質的貼圖模式,而且擁有各向異性的過濾器,即支持沿某個軸向對材質進行過濾,可以較簡單地實現三線MIP映射等復雜的過濾器功能。同時,RIVA TNT所有的操作都是32位的,全32位的渲染操作將使32位的色彩模式在程序中更加容易實現,而對于32位的Z-buffer(Z緩存),其中Z-buffer本身用去24位,剩下的8位則可作為模板緩存使用。