1990momo 2010-6-13 11:21
3D繪圖技術介紹
[size=16px][b][size=3]基本繪圖詞彙[/size][/b] [color=#000000][/color]
[color=#000000][/color]
[color=darkolivegreen]更新速度[/color]
[color=#000000][/color]
電腦和電影或電視一樣,都是透過放映一系列不同影像,在顯示器上模擬動作;顯示器更新速度是繪圖卡每秒更新影像的次數,75 Hz的更新速率,即表示顯示器每秒更新影像75次。
操作電玩遊戲時,如果電腦處理訊框的速度大於顯示器的更新速度,則更新速度會產生問題。舉例來說,如果電腦每秒能處理100個訊框,顯示器的更新速度是75 Hz,就會常常發生同一訊框在被運算時,顯示器來不及完全更新顯示影像,因而產生「影像分裂」或「偽像」等干擾現象。
[color=#000000][/color]
作為一個解決方案,垂直同步信號(V-sync)能發揮作用,它能將電腦運算訊框的速度,調整到與顯示器更新速度一致,以避免偽像產生。例如,垂直同步信號可以使電玩遊戲中的訊框運算不超過更新速度,75 Hz的更新速度會限制電腦每秒的運算速度不超過75個訊框。
[color=#000000][/color]
[color=darkolivegreen]像素[/color]
像素代表「圖像元素」,僅代表顯示器繪圖資訊的一個小點—即代表一種單色(大多是紅、綠、藍色的數值)。如果螢幕解析度是1024x768,那麼在一個網格裡,螢幕會顯示寬度1024個像素乘以高度768個像素的畫面,當所有像素同時顯示時,就會在螢幕上看到影像。根據不同顯示器類型及繪圖卡產生的資料量與輸出量,影像呈現的更新速度約在每秒60至120次不等;CRT顯示器以線為單位呈現影像,而平面顯示器則是每個像素個別更新。
[color=darkolivegreen]頂點[/color] [color=#000000][/color]
[color=#000000][/color]
所有3D場景的物件都是由頂點形成。一個頂點是X、Y、Z座標形成的3D空間中的一點,多個頂點聚在一起(至少四個)可形成一個多邊形,如三角形、立方體或更複雜的形狀,將材質貼在其上可使該元件(或幾個排好的元件)看起來更真實。上圖的3D立方體就是由八個頂點所形成,使用大量頂點,可形成弧線形物件等較複雜的圖像。 [color=#000000][/color]
[color=darkolivegreen]結構[/color]
[color=#000000][/color]
材質只是2D影像,大小不同,可貼在3D物件上以模擬表面。例如,上圖的3D立方體由八個頂點組合而成,看起來只是一個很平凡的箱子,但貼上材質後可改變外觀,一旦將材質貼到3D物件上,該物件看起來就像是繪過該材質一樣。 [color=#000000][/color]
[color=#000000][/color]
[color=darkolivegreen]著色器[/color] [color=#000000][/color]
[color=#000000][/color]
像素著色器程式可讓繪圖卡處理影像特效,如《上古卷軸4:遺忘之都》中的閃閃湖光。
目前有兩種著色器:頂點著色器與像素著色器。頂點著色器能將3D元件做變形或轉換處理;像素處理器可根據複雜的輸入資料改變像素顏色,如3D場景中的光源;當點亮物件時,某些顏色顯得更亮,但其他物件因像素顏色的訊息改變,會產生陰影。
[color=#000000][/color]
流行電玩的特效經常使用像素著色器,例如,著色器可以讓一把3D影像的劍周圍的像素光彩奪目,不同的著色器會影響一個複雜3D物件的所有頂點,讓物件看起來栩栩如生。遊戲開發者越來越倚重複雜的著色器程式以及邏輯單元,以便創造更真實的影像,影像最豐富的遊戲往往使用大量的著色器。 [color=#000000][/color]
微軟下一代應用程式介面(API)DirectX 10是第三代著色器,稱為幾何著色器;這款新產品根據想呈現的效果,可分割、修飾、甚至摧毀物件。這三類著色器類型和智慧規劃非常類似,但目的大不相同。 [color=#000000][/color]
[color=darkolivegreen]達成率[/color] [color=#000000][/color]
在繪圖卡的包裝上會有一項產品規格,名為達成率(Fill Rate),達成率通常是指繪圖處理器繪出像素的速度。舊款的繪圖卡有三組達成率;不過,通常達成率可分為兩種:像素達成率與材質達成率。如上所述,像素達成率是繪圖卡輸出的像素總數,乘上時脈速率後,就是光柵作業(ROP)的數字。
ATI與Nvidia計算材質達成率的方式並不相同。Nvidia將像素管線的數字乘上時脈速度,得到達成率;而ATI則是將材質單元的數字乘上時脈速度。兩者計算方式都對,因為Nvidia每個像素著色器有一個材質單元,或是每一個像素管線有一個材質單元。 [color=#000000][/color]
瞭解這些定義之後,接下來將介紹最常提到的繪圖處理器元件與其重要性。 [color=#000000][/color]
[b][size=3]繪圖處理器架構:功能[/size][/b] [color=#000000][/color]
[color=#000000][/color]
3D實境的效果極度倚賴繪圖卡的效能。3D處理器包含越多著色器,時脈速度越快,3D景象的視覺臨場效果就越逼真。
[color=#000000][/color]
繪圖處理器包含不同的功能單元。在某些特殊任務中,繪圖處理器可否發揮極大效能,和其中的許多元件有關。在進一步解釋之前,先釐清幾個觀念:
[color=#000000][/color]
[color=darkolivegreen]頂點處理器(亦稱頂點著色單元)[/color]
如像素處理器一樣,頂點處理器是繪圖處理器上的元件,它的作用是處理僅影響頂點的著色器。既然越多頂點代表越複雜的3D物件,而3D場景包含了較多或是更複雜的3D物件,因此頂點著色器的角色非常重要。不過,和像素著色器比起來,頂點著色器顯然和整體呈現效果的關聯性較低。
[color=darkolivegreen]像素處理器(亦稱像素著色單元[/color]) [color=#000000][/color]
[color=#000000][/color]
像素處理器是繪圖晶片上的一個元件,專門處理像素著色器程式,這些處理單元僅執行像素運算,由於像素代表色值,因此像素著色器是用來處理繪圖影像的各種視覺特效;舉例來說,電玩遊戲中最出色的水波特效乃是由像素著色器所完成。繪圖處理器中的像素著色器數目,通常用來比較不同繪圖卡片的像素處理效能;如果拿8像素著色器單元和16著色器單元作比較,可以合理推論16著色器單元的繪圖卡在處理複雜的像素著色器特效時,速度比較快,時脈速度亦會影響,不過把繪圖晶片的晶片時脈速度調高兩倍,還不如將著色器的數目增加至兩倍,效能會更好。 [color=#000000][/color]
[color=#000000][/color]
[color=darkolivegreen]通用著色器[/color] [color=#000000][/color]
[color=#000000][/color]
通用著色器在個人電腦市場上還不普及,不過最新上市的DirectX 10規格已開始用通用著色器的架構。這代表頂點幾何與像素著色器代碼結構的功能相似,但都有專屬的捲軸。Xbox 360的新規格是由ATI為微軟(Microsoft)開發,新一代DirectX10展現的潛在需求將創造新的話題。 [color=#000000][/color]
[color=#000000][/color]
[color=darkolivegreen]材質貼圖單元(TMU)[/color] [color=#000000][/color]
[color=#000000][/color]
材質需要被定址或是過濾,這項工作由TMU協同像素及頂點著色器單元完成,TMU會將材質貼到像素上。在比較兩個不同卡片的材質處理效能時,需要看繪圖處理器的材質單元數目;可以合理推論,有較多TMU的繪圖卡,材質資訊的處理速度較快。 [color=#000000][/color]
[color=#000000][/color]
[color=darkolivegreen]光柵作業單元(ROP)[/color]
光柵作業處理器負責將像素資料寫入記憶體,該工作速度即達成率。ROP和達成率在3D繪圖卡早期是重要的公制單位,ROP的工作非常重要,它已經不像以前無法突破效能瓶頸,現在也不是拿來作為測量效果佳否的相關效能指標。
[color=#000000][/color]
[color=darkolivegreen]管線[/color]
管線是描述繪圖卡結構的名詞,為繪圖處理器的運算能力提供精確的概念。
[color=#000000][/color]
管線並不是一般熟悉的工程專有名詞,在繪圖處理器上有不同的管線,可在任何時間各自提供不同功能。傳統上,它通常用來指專用TMU上的附加像素處理器;繪圖卡如Radeon9700過去有8個像素處理器,每個均附在單一的TMU上,因此被當成有8管線的繪圖卡。
管線這個名詞不再專指某些新一代的繪圖處理架構,與過去的設計相較,處理器現在是段落式架構。ATI的X1000系列繪圖卡,是首先脫離舊規範,透過底部結構最佳化來達成效能的繪圖卡,某些單元比其他單元更常用,為了增加處理器的整體效能,該公司嘗試在不增加晶片的情況下,找到最佳效能所需的單元數。在此架構下,像素管線失去意義,因為像素處理器不再依附單個TMU,舉例來說,ATI Radeon X1600繪圖卡片有12個像素著色器單元,但只有4個TMU,因此不能說它是12管線的架構,亦不能說它是4管線架構,雖然大家常使用這兩種說法。
[color=#000000][/color]
因此,繪圖處理器上的管線數目常用來比較兩個不同的卡片(除了ATI’s X1x00系列之外);例如,在比較24管線和16管線的繪圖卡時,可以合理推論24管線的繪圖卡通常會比較快。 [color=#000000][/color]
[color=#000000][/color]
[b][size=3]繪圖處理架構:技術[/size][/b]
[color=darkolivegreen]製程[/color] [color=#000000][/color]
這個名詞指的是,在製作積體電路的製造過程中的結構大小和精密度,結構越小,製程越先進。例如0.18微米製程比0.13微米製程所做出來的處理器體積較大、效率較低,因為較小的電晶體,正常作業所需的電量通常較低,較低電量代表較低電阻,產生的散熱量亦較低。較小製程也代表作業單位的距離比較短,資料傳輸的時間也較短;較小製程有距離短、耗電低及其他優點,因此時脈頻率速度較高。 [color=#000000][/color]
說得複雜一點,「微米」和「奈米」這兩個名詞都是用來形容製程大小。1奈米等於0.001微米,「0.09微米製程」也就是「90奈米製程」;如上所述,較小製程通常與較高時脈速度有關。例如,當我們拿0.18微米製程處理器的卡片與0.09微米(90奈米)製程的卡片相比時,可合理推論0.09製程的卡片其時脈速度較高。 [color=#000000][/color]
[color=darkolivegreen]繪圖處理時脈速度[/color]
繪圖處理器時脈速度以兆赫(MHz)為單位,該單位代表「每秒百萬轉」。
時脈速度對繪圖處理氣的表現有直接影響,速度越快,每秒工作量越多。來看第一個例子,Nvidia GeForce 6600與6600 GT的比較:6600 GT的繪圖處理器速度是500 MHz,但是一般6600系列的時脈速度是400 MHz,因為處理器是一樣的,所以6600 GT提高20%的時脈速度,可將效能提高。
[color=#000000][/color]
但時脈速度並非萬能,使用者需記住架構對效能亦有相當大的影響。再看第二個例子,GeForce 6600 GT與GeForce 6800 GT,6600 GT的繪圖處理器時脈速度為500 MHz,而6800 GT的傳輸速度只有350 MHz,這個數字並不能決定一切,因為6800 GT是16管線的架構,但是6600 GT是8管線的架構,就某個意義來說,16管線、速度為350 MHz的6800 GT的效能,大約和8管線、兩倍速度(即700 MHz)一樣。這是一種簡化的比較法,但可作為合理的效能指標。
[color=darkolivegreen]區域繪圖記憶[/color] [color=#000000][/color]
[color=#000000][/color]
繪圖卡上的記憶體對效能有極大影響,不過,記憶體的不同方面對效能的影響並不相同。
[color=darkolivegreen]繪圖記憶容量[/color]
視訊RAM的容量大概是繪圖卡上最被高估的一個部分。不知情的消費者通常會把卡片上RAM的大小拿來作為區分卡片的依據,但實際上與其他因素相比,如時脈速度及記憶體介面,RMA的大小對效能表現的影響並不大。
[color=#000000][/color]
一般來說,在大部分的情況下,128 MB的RAM記憶卡和256 MB的RAM記憶卡效能幾乎一樣。也有其他情況是,RAM越大,其效能越佳,但要記住,增加RAM並不會自動提升效能。 [color=#000000][/color]
若要提高材質的解析度,增加RAM倒是個有效的辦法。遊戲開發廠商經常使用多重材質集來開發遊戲,如果電腦繪圖卡的RAM越大,那麼材質的解析度就越高,高解析度的材質提供電玩遊戲更清晰的材質。說到這裡,一般認為儘可能在使用範圍內選用最大的RAM,但只有在其他考慮條件都相同時才成立,同時,記憶體匯流排和記憶體時脈速度,比繪圖卡記憶容量對效能的影響更大。 [color=#000000][/color]
[color=darkolivegreen]記憶體匯流排[/color]
記憶體匯流排是影響記憶體效能最重要的因素。現在的繪圖卡記憶體匯流排大約在64∼256位元之間,大多數可至512位元,當匯流排寬度增加,每轉傳輸的資料就越多,對效能產生重要的影響力。例如,在相同的時脈速度下使用兩個匯流排,理論上每一時脈週期,128位元的匯流排傳輸的資料是64位元匯流排的兩倍,而256位元匯流排則傳輸四倍的資料。
[color=#000000][/color]
記憶體的頻寬越高(即每秒通道容量)代表記憶體效能越高,這也是為什麼記憶體匯流排比RAM的大小還重要的原因。假設相同時脈速度,64位元匯流排的記憶體實際的傳輸速度是256位元匯流排的25%而已! [color=#000000][/color]
如果考慮RAM的大小,則要注意256位元記憶體的128 MB繪圖卡,與64位元記憶體512 MB的繪圖卡相比,其記憶體效能更高。值得注意的是,ATI的X1x00系列繪圖卡的宣傳會強調「內部」記憶體匯流排規格,但是「額外」匯流排的數字也很重要,例如,X1600擁有256位元的內部環狀匯流排,但是額外匯流排是128位元,實際上該記憶體只能展現128位元的效能。
[color=darkolivegreen]記憶體類型[/color]
記憶體分為兩種:SDR(單資料速率)和DDR(雙資料速率),後者每時脈週期會轉換資料兩次。早在繪圖卡剛面市時,SDR就被淘汰了,由於DDR的工作效率是SDR的兩倍,因此要注意的是,所有的DDR記憶體,經常在廣告上將實際時脈速度提高為兩倍。例如,DDR常被當作「1000 MHz DDR」記憶體(意即有1000 MHz的表現),可是實際的時脈速度卻是500 MHz。
因此,許多人看到1200 MHz DDR繪圖卡被報導指出只有600 MHz的傳輸速度時,都大感驚訝,但這還不是該小心的地方,因為這只是DDR被報導的時脈速度。DDR2和GDDR3記憶體的運作原則上相同,都是雙倍的時脈速度,DDR、DDR2和GDDR3的區別只有在製造技術上,一般來說,DDR2比DDR的速度還快,而DDR3比DDR2的時脈速度更快。 [color=#000000][/color]
[color=darkolivegreen]記憶體時脈速度[/color]
[color=#000000][/color]
跟繪圖處理器一樣,繪圖卡記憶體在一定時脈速度下,以兆赫來測量,同樣地,提高時脈速度對記憶體的表現有直接影響;在此情況下,記憶體時脈速度的數字,是幾個用來比較記憶體效能的數字之一。例如,假設其他因素(如記憶體匯流排寬度)都相同,比較500 MHz記憶體和700 MHz記憶體的繪圖卡時,可合理推論,通常700 MHz記憶體的繪圖卡其記憶體作業會比較快。 [color=#000000][/color]
[color=#000000][/color]
再強調一遍,時脈速度並非唯一指標。64位元匯流排、700 MHz記憶體的繪圖卡,比128位元匯流排、400 MHz的繪圖卡還要慢。128位元匯流排400 MHz 的時脈速度,大約與64位元匯流排800 MHz的速度相同。必須注意的是,繪圖處理器速度和記憶體速度完全不相干,而且經常在不同的設定下作業。 [color=#000000][/color]
[color=darkolivegreen]繪圖卡介面[/color] [color=#000000][/color]
[color=#000000][/color]
繪圖卡和電腦其他元件之間的所有資料傳輸,均通過繪圖卡槽或介面,目前使用的繪圖介面有三種:PCI、AGP以及PCI Express。不同的繪圖介面容許不同的頻寬數,頻寬越大,效能越佳。值得注意的是,目前的繪圖卡只能使用到一定頻寬,某些時候,若介面的頻寬夠用,就不會產生瓶頸。
[color=#000000][/color]
最慢的繪圖卡匯流排,即PCI匯流排(Peripheral Components Interconnect),不利於繪圖卡的表現效能;繪圖加速連接埠(AGP,Accelerated Graphics Port)的表現較佳,但即便是AGP 1.0和AGP 2x規格都會限制工作效能,不過,一旦使用AGP 4x,即可達到當前繪圖卡要求的實際最高頻寬;AGP 8x規格的頻寬是AGP 4x規格的兩倍(2.16 GB/s),但這兩種標準之間的表現有些微差別。 [color=#000000][/color]
[color=#000000][/color]
最新、最高頻寬的互連介面是PCI Express bus,新的繪圖卡通常使用PCI Express x16的規格,來結合16個分離的PCI Express連結(或路徑),以達到4 GB/s的頻寬,它是AGP 8x的兩倍頻寬。PCI Express提供此頻寬來上傳資料至電腦,或下載資料至繪圖卡片上,不過,AGP 8x規格的性能優越,至今還未看見有哪個PCI Express繪圖卡能表現得比AGP 8x模型還要好(假設其他硬體與參數相同),例如,GeForce 6800 Ultra的AGP版本就和PCI Express 6800 Ultra的效能是一樣的。 [color=#000000][/color]
目前PCI Express在繪圖卡片槽市場上較受歡迎,此情形會再持續好幾年,過氣的AGP 8x匯流排不再提供最佳的性能表現,和AGP相較,PCI Express解決方案更便宜、更容易使用。 [color=#000000][/color]
[color=darkolivegreen]多卡合一[/color]
使用多卡合一的繪圖卡來達到更高效能,不再是個新觀念。3D繪圖卡剛出來時,原先的文件資料裡,並未見到最先進的3dfx多重繪圖卡技術,但它可能和大型圖形有關,雖然ATI從Radeon 9700開始,就一直為工業模擬裝置生產多卡合一的系統,但隨著3dfx的退潮,消費者使用的多卡合一技術還未出現。隨著Nvidia的SLI解決方案的發表,消費者已經獲悉這種技術,而且也知道ATI最新發表的Crossfire解決方案。使用多合一的繪圖卡可提供足夠的繪圖性能表現,能支援最高的視訊品質環境及解析度,但要選購多卡合一的解決方案並不容易。 [color=#000000][/color]
首先,耗電和散熱的問題需要考慮;多卡合一功能較耗電,因此需要更貴的高輸出電源供應器。此外,繪圖卡會產生大量的熱,需要注意電腦機殼以及冷卻設備,以確保系統不會過熱。 [color=#000000][/color]
此外,還需要能支援SLI�Crossfire(通常只支援其中之一)的主機板,這樣一來,價格會比單卡�單槽的方案更高。Nvidia的SLI只能在某些nForce4主機板上運作,但是ATI的Crossfire解決方案卻可在ATI Crossfire晶片組,甚至保證支援多卡合一晶片組的英特爾主機板上工作;其缺點是,一些Crossfire安裝需要一個繪圖卡,以便成為特殊的Crossfire版本繪圖卡。自Crossfire上市以來,ATI已經以某些模型透過PCI Express匯流排,來啟動Crossfire軟體,該公司會繼續增加驅動程式修訂版的組合產品。而為非軟體Crossfire組合產品所設計的「主要」卡,成本高於一般普通的卡。目前,Radeon X1300、X1600和X1800 GTO,都不需要Crossfire版本的卡去支援雙繪圖Crossfire模態的工作。 [color=#000000][/color]
[color=#000000][/color]
其他因素也需考慮。兩張繪圖卡結合時,效能會提高,但遠不至於兩倍效能,因此從預算的角度來看,要記住花兩倍的錢並不得到同樣的經濟效益,使用多卡合一的解決方案,實際可預期的效能大約是提高至120%至160%,在某些個案中,效能卻完全不會提高。因此,如果使用便宜的繪圖卡,那使用多卡合一的解決方案就沒有意義,因為貴一點的卡,其效能幾乎都超過兩張便宜的卡;瞭解這一點後,就曉得SLI�Crossfire解決方案對大部分的消費者而言毫無意義。如果畫面品質要更好,或者電玩解析度要更佳,如2560x1600的解析度,在每個訊框中會產生四百萬的像素,上述方案是唯一的選擇。 [color=#000000][/color]
[b][size=3]視訊功能[/size][/b] [color=#000000][/color]
[color=#000000][/color]
除了硬體規格之外,不同代和不同模式的繪圖處理器可能展現完全不同的功能組。舉例來說,常提到的ATI Radeon X800 XT-based繪圖卡與Shader model 2.0b相容,而Nvidia GeForce 6800 Ultra則是與Shader Model 3.0相容,雖然兩者的硬體規格類似(16管線架構),而有許多人將此資訊作為決定選購的依據,卻不明白此區別實際代表的意義。接下來將討論一些針對一般使用者的視訊功能和應用。
[color=darkolivegreen]微軟DiretX與Shader Model版本[/color] [color=#000000][/color]
這些名詞大概都是些最常聽到卻最不明白的名詞,為了抓到重點,以下會介紹一些API繪圖卡的歷史,並做簡短說明。DrectX和OpenGL都是API繪圖卡,API是Application Programming Interface(應用程式介面)的縮寫,基本上代表一種大家都可使用的程式標準。 [color=#000000][/color]
在3D繪圖技術API出來之前,每個繪圖卡公司都有自己的專屬方法,讓他們的繪圖卡可支援遊戲。開發廠商為了能夠支援特定的遊戲類型,被迫由特定廠商所設定的路徑來寫遊戲程式,這種作法成本高昂,事倍功半。為了解決這個問題,產生了3D繪圖API,開發廠商可以自己寫和API相容的軟體程式,而不是跟著每一款每一型的硬體程式寫,相容的責任於是轉到繪圖卡廠商,他們必須確保驅動程式和API程式相容。
唯一的困難在於當時有兩種完全不同的API,兩者至今仍然沿用。這兩種重要的API就是微軟的DirectX和OpenGL標準,GL是Graphics Library(圖形庫)的縮寫。由於在電玩遊戲方面,DirectX API對繪圖處理器硬體技術的影響較大,接下來會專談DirectX,同時,它對目前的遊戲而言更重要。
[color=#000000][/color]
DirectX是由微軟所開發,實際上,DirectX是API的集合,其中只有一種與3D繪圖有關。舉例來說,DirectX包括音訊、音樂、輸入裝置與媒體的API,應用在3D繪圖上的特定DirectX API稱為Direct3D,但如果專指繪圖卡,一般的理解是DirectX和Direct3D兩個名詞可交互使用。 [color=#000000][/color]
繪圖硬體技術不斷發展,遊戲開發廠商寫遊戲程式的方法持續革新,DirectX也隨著定期更新,當DirectX快速受到歡迎並大量使用時,繪圖處理器廠商則開始將他們的繪圖處理器設計和最新的DirectX功能同步,因此,繪圖卡經常由DirectX模型版本所描述(DirectX版本8、9.0或者最新版9.0c)。 [color=#000000][/color]
說得複雜一點,和整個DirectX集合相比,Direct3D API可以做小部分的更動,例如,DirectX 9.0規格可支援Pixel Shader 2.0。然而,DirectX 9.0c包含了Pixel Shader 3.0規格,這代表,並非所有的DirectX 9等級的繪圖卡,都可支援相同的功能;Radeon 9700支援Shader Model 2.0,而Radeon X1800則支援Shader Model 3.0,因此,我們可準確地說,兩者都是「DirectX 9繪圖卡」。 [color=#000000][/color]
要記住,開發廠商在設計遊戲時,幾乎都會注意到舊硬體的使用者,因為如果忽略舊硬體會使他們的市場大幅受限,因此,開發廠商經常在遊戲中寫不同的「路徑」程式,以支援舊的硬體。一套DirectX 9等級的遊戲可能會有DirectX 8的路徑,甚至DirectX 7的路徑,以保持相容性,一般來說,這些舊的路徑不會有新繪圖卡片所能展現的視訊功能,但至少它可支援舊的繪圖卡執行遊戲。 [color=#000000][/color]
[color=#000000][/color]
即便讓遊戲執行的繪圖卡是較舊的版本,許多新的遊戲還是要求使用者安裝最新的DirectX版本。一套僅使用DirectX 8技術的最新遊戲,可能需要最新的DirectX 9版本以便執行,縱使在DirectX 8等級的硬體上也一樣。
現在,讀者對DirectX的背景已經有個概括的瞭解,那麼DirectX上不同的的Direct3D API版本究竟有何不同?若和Direct3D API相比,早期的DirectX版本—3、5、6、7則比較簡單,開發廠商必須在一份事先寫好程式、固定的特效清單中,混用和匹配視訊特效。繪圖程式跨越至當前風格的最大一步是DirectX 8,DirectX 8引進客製著色器程式編寫,首次幫助開發廠商設計真正的客製視訊特效,DirectX 8支援Pixel Shaders 1.0∼1.3,以及Vertex Shader 1.0;DirectX 8.1是DirectX 8的升級版本,可支援Pixel Shader 1.4和Vertex Shader 1.1。 [color=#000000][/color]
在DirectX 9裡,著色器的複雜性被擴大。DirectX 9支援Pixel Shader 2.0和Vertex Shader 2.0,DirectX 9c是DirectX 9c的升級版,它包括Pixel Shader 3.0的規格。
[color=#000000][/color]
DirectX 10是最新版本,和下一代Windows Vista視窗有密切關係,但與Windows XP不相容。 [color=#000000][/color]
[color=darkolivegreen]高動態範圍光映射與OpenEXR HDR[/color]
[color=#000000][/color]
HDR是「高動態範圍」的縮寫,有HDR光映射的電玩遊戲,比沒有HDR的遊戲更能展現真實的畫面,但並非所有的繪圖卡都能展現HDR的圖形。 [color=#000000][/color]
在與DirectX 9相容的繪圖處理器出現前,談到繪圖卡運算的光映射準確範圍,繪圖卡的限制一直都很大,一直到目前為止,所有光映射都必須以8位元(或256)整數階層來運算。
一旦擁有真正DirectX 9等級的繪圖處理器上市,繪圖卡就有能力在全24位元或是16.7百萬階層下,顯示高範圍的光映射準確度。
[color=#000000][/color]
有了16.7百萬階層的亮度,與DirectX 9�Shader Model 2.0相容的繪圖卡運算能力也增加了之後,PC遊戲的HDR光映射就有可能實現。HDR光映射是個複雜的概念,要看到實際操作才能領會,可以簡單地解釋為HDR光映射的對比增加(陰影更深,亮光更亮),同時在陰影和光亮區中又能增加影像細節的光映射總量;有HDR功能的電玩遊戲,在視覺上亮度和深度比起沒有HDR的遊戲,要來得逼真。
[color=#000000][/color]
和最新Pixel Shader 3.0規格相容的繪圖處理器,擁有更高的光映射準確度(32位元),並且可使用浮點精度的混色,這代表所有SM 3.0的繪圖卡都能支援特殊的HDR技術,稱「OpenEXR」,這是為電影工業所開發的規格。
有一些僅支援HDR技術OpenEXR的遊戲,並不能支援Shader Model 2.0繪圖卡上的HDR,不過,支援非OpenEXR技術的遊戲,會與任何DirectX 9繪圖處理器一同作業。例如,PC遊戲《上古捲軸4:遺忘之都》採用OpenEXR HDR,並且只能在新的繪圖卡上展現這項功能,這些新的繪圖卡支援Shader model 3.0規格—如Nvidia的GeForce 6800或ATI的Radeon X1800。《戰慄時空2》是以3D引擎為基礎的遊戲,像《絕對武力:次世代》和《戰慄時空2:劫後餘生》都允許HDR在僅支援Pixel Shader 2.0的舊式DirectX 9繪圖卡上呈現,GeForce 5系列或ATI的Radeon 9500就是一例。 [color=#000000][/color]
[color=#000000][/color]
最後,應該要注意所有類型的HDR需要極高的運算能力,如果不是最強大的繪圖處理器或運算系統,速度會被拖慢,如果你想要體驗最新的HDR遊戲,一定要配備高效能的繪圖硬體。
[color=#000000][/color]
[color=darkgreen]抗鋸齒功能[/color] [color=#000000][/color]
鋸齒(縮寫為AA)是指數位影像呈現的時候,圖形呈現的鋸齒狀或是塊狀。在繪圖方面,指的是螢幕上呈現階梯般的角邊;抗鋸齒是一種繪圖功能,能降低該現象。不過,由於抗鋸齒的運算使用大量的繪圖處理器資源,因此會導致框速率下降。 [color=#000000][/color]
抗鋸齒技術極度倚賴繪圖記憶體的效能,因此,和低階的繪圖卡相比,有高效能記憶體的高效能繪圖卡在執行抗鋸齒功能時,效能障礙較少。抗鋸齒功能有不同的級別,例如,四倍的抗鋸齒功能所產生影像畫質比兩倍抗鋸齒的畫質更佳,但效益成本也更高;兩倍抗鋸齒功有雙倍的水平和垂直解析度,四倍的抗鋸齒功能則是四倍。 [color=#000000][/color]
[color=darkolivegreen]材質過濾[/color] [color=#000000][/color]
所有電玩遊戲裡的3D物件都經過材質處理,隨著材質呈現的視角增加,遊戲中的材質會越來越模糊且變形,為了解決這個問題,繪圖處理器開始使用材質過濾。 [color=#000000][/color]
[color=#000000][/color]
最早的材質過濾被稱為雙線性的,會呈現非常明顯的過濾條紋,畫面變得很不好看,一直到了三線性的材質過濾在雙線性技術上做了一些改善,才解決了這個問題;這兩種過濾方式從現在繪圖卡的角度來看,比較沒有成本效益。 [color=#000000][/color]
[color=#000000][/color]
現在市面上最好的過濾方式是非等方性過濾(通常縮寫為AF),和抗鋸齒一樣,非等方性過濾有不同的等級。例如,八倍的AF比四倍AF產生更佳的過濾品質。非等方性過濾和抗鋸齒一樣,需要更多的流程能力,且在AF發生作用的等級上增加對效能表現的影響。
[color=#000000][/color]
[color=darkolivegreen]高清晰材質集[/color]
所有3D電玩遊戲都依據目標規格做開發,其中一個規格就是遊戲所需要的材質記憶體容量。遊戲進行時,所有必備材質都必須能存於繪圖卡記憶體,否則效能會受到嚴重影響,額外需要的材質則被儲存在較慢的RAM系統或硬碟裡。因此,如果遊戲開發公司以128 MB記憶體作為遊戲的最低需求,那麼支援它的材質就稱為「材質集」,不論何時,都不會對繪圖卡要求超過128 MB的記憶體容量。
[color=#000000][/color]
更新的遊戲經常支援多個材質集,因此,除了最新的繪圖記憶卡之外,遊戲可以較少的材質記憶體來支援較舊的繪圖卡。舉例來說,一套遊戲可能包括三個材質集:適用於128 MB、256 MB和512 MB的繪圖記憶體。支援512 MB繪圖卡記憶體的遊戲非常少見,但是為了它們,購買那麼大的繪圖卡記憶體絕對值得。記憶體越大,通常對原始效率造成的影響較小,但如果遊戲可以支援它,影像畫質會改善很多。[/size]