每隔一陣子就有人提到DirectX 10.1,認為初代的DX10顯示卡只是過渡產品,因為現在還沒有GPU支援10.1。先別說DX10.1,就我個人主觀認為,GPU永遠都在過渡產品,3D效能每年增加100%,我可以保証不管你在什麼時候買什麼等級的顯示卡,一年後一定會落伍。但總會有人扯到DX 10.1,Vista出SP1之後就會支援,並認為到時所有DX10顯示卡就變垃圾,所有遊戲都會「升級」到DX10.1,簡單的說,好像現在買DX10顯示卡是絕對不划算的。

但DX10.1到底是什麼?真的有這麼神嗎?一定非等DX10.1的GPU出來才能買嗎?所以我寫一篇小小的文章來講一下DX10.1的三大「特色」。

1.強制32bit floating point texture filtering:這是針對32位元浮點材質做過濾,遊戲的話主要是用在更高級的HDR特效,其實ATI和NVIDIA這一代DX10顯卡就已經支援了,只是在DX10裡這是「選用特色」,GPU廠可自由決定要不要導入,但兩家競爭太激烈,所以都加入以防對方拿出來嘴砲。附帶一提,我還不知道有哪個遊戲有用到這個特色,因為FP16 texture就已經夠炫夠操了(也就是現在常見的HDR特效),FP32 texture通常是給GPGPU用的,而GPGPU通常不需要filtering,但就算有遊戲真的採用FP32 texture,現在的卡也可以勝任愉快。

2.強制4x MSAA反鋸齒:不用我提大家也知道,N年前的顯示卡就已經支援到4x AA了,DX10.1只是終於把它列為「強制」特色,而非選用。事實上,兩家打的太火熱,都各自支援到8x MSAA,特殊的AA模式已經到16x、24x、32x,都快要跟光碟機倍速打平了。強制具備4x MSAA只是讓微軟可強調DX10.1的畫質。

3.把MSAA sample讀回Shader:這是DX10.1目前最「大」的改變,可把MSAA取到的Sample讀回Shader做進一步的可程式化處理,類似ATI這一代做的CFAA,以MSAA Sample的位置做加權式的處理,讓反鋸齒畫質些微提升(比如愈靠近像素中心,顏色的權值就愈高);或是由Shader來計算MSAA Sample的覆蓋率,再以覆蓋率來決定最後像素的顏色(NVIDIA CSAA就是類似的原理),其實這一代NVIDIA和ATI就已經在朝這個方向努力了,而NVIDIA CSAA或ATI CFAA的效果也不錯(先不提CFAA有潛在的效能問題),兩邊應該會繼續保留到下一代GPU。

所以DX10.1是什麼?

1.DX10的小更新,真的很小。
2.對GPU支援特色更嚴格要求的DX10。
3.畫質更好的DX10(必須由遊戲控制)。
4.效能稍好的DX10(限特定情況)
5.需要Vista SP1的DX10(.....)。

我絕不懷疑兩邊一定會出DX10.1的GPU,因為NVIDIA和ATI整天都在嘴砲,而DX10.1是最好的口水戰題材,誰敢不支援,誰就等著被對方釘到十字架上。但這是否會是買卡的必要條件?我認為不是,因為現在DX10遊戲都還有超大的改進空間,有多大?大概還有三四年這麼大,DX10卡已經是少量,DX10.1一定會是少量中的少量,而上面的改變我覺得不足以驅使遊戲去支援(有也是極少量)。

第三個改變可讓遊戲用Shader自己「寫」反鋸齒機制,但新式反鋸齒是很複雜演算法,遊戲廠商自己投入資源做開發怎麼看都不划算,尤其NVIDIA和ATI都已經在DX10的標準下做到類似的機制,套用GPU廠商所做的又快又好。

最後,一定會有人想到DirectX 9.0c,第一個DX9.0c的GPU是GeForce 6,2004年推出,Windows XP SP2在同年更新加入DX9.0c,但直到一年後才有「一款」DX9.0c的遊戲出現。Vista SP1預計是今年底或明年初。比照相同的速度的話,我覺得真的沒必要去等DX10.1的GPU或遊戲,有需要的話就買,有多少預算就買,反正什麼時候買都不划算,因為就像最前面說的,一年後保証落伍,兩年後前代卡神就不到新一代中階卡的效能。

參考資料:
微軟DirectX 10.1的簡報:http://download.microsoft.com/download/5/b/9/5b97017b-e28a-4bae-ba48-174cf47d23cd/PRI022_WH06.ppt


DirectX 10.1,真的有必要等嗎?

DirectX 10.1,真的有必要等嗎?

DirectX 10.1,真的有必要等嗎?
文章關鍵字
所以我個人都只買中階的顯示卡
從9500 --> X800 --> 2600XT
大概都是4K~5K的時候買的
因為大概用各一年多就開始又會想升級了
這個時候將舊的卡出售大概還有一半的價錢
就當作貼點錢玩玩新的玩具一樣

DirectX本身是個很鬆散的規格, 就是一大堆顯卡廠商的規格試著要卡進去, 最後由MS決定要不要讓它
進DirectX. 問題就出在, 進了DX的規格, 不代表每一個顯示卡廠商都必須百分之百遵守這個規定. 事實上
這個世界沒有一塊百分之百支援所有DX規格功能的顯示晶片. 這次10.1看來有人主導(不知道是誰, 不過
不是MS的可能性很高...)把某些功能規定成強制一定要支援.大概就是這麼回事...總而言之擺脫不了商業
的歷害關係啦~~

MSAA 讀回Shader的問題,這個倒是不用操心遊戲廠商沒辦法支援, 有能力的3D引擎廠商可能會去做
這個事情~ 雖然DX的歷史走過來, 很多規格變成廢技也不是第一次發生的事就是了....
與失敗為伍者,天天靠盃都是別人的錯。 與成功為伍者,天天跟失敗切磋直到不再出錯。
bluesystem wrote:
DirectX本身是...(恕刪)


哈哈,搞不好是NVIDIA和ATI聯手抵制Intel進入娛樂GPU市場,所以才提高門檻也不一定,陰謀論啦,聽聽就好

至於遊戲利用Shader來自寫反鋸齒演算法,我倒認為機會不大,ATI R600用這個方式就付出很大的代價,AA效能衝擊超大,稀釋掉原本該有的Shader效能,再不修正就等著被全世界的reviewer幹爆。對效能錙銖必較的遊戲,採用純硬體AA的機會還是比較大,先不提自行開發所花的時間及成本(ATI和NVIDIA用專門的team去開發CFAA或CSAA,都還不是100%完美,一個有模糊的缺點,一個對stencil shadow無效),犧牲的效能恐怕也不值得。

除非Shader效能多到用不完,但遊戲一定會想辦法把它用完的.......
最近新出的三款顯卡Nvida 8800 GT, AMD Radeon HD 3870和AMD Radeon HD 3850。
玩大部分的遊戲Nvida 8800 GT還是三者中最快的。(但是 C/P值是AMD勝出)。
但是8800 GT 還是不支援dirextX 10.1,AMD HD 3800系列卻支援dirextX 10.1。
微軟說現有的dirextX 10顯卡不能跑dirextX 10.1(Vista sp1)。
這是不是意味著Vista sp1 和dirextX 10.1的game 8800 GT不能跑,而AMD HD 3800系列可以跑呢?

SunInt wrote:
最近新出的三款顯卡Nvida 8800 GT, AMD Radeon HD 3870和AMD Radeon HD 3850。
玩DirectX 9的遊戲Nvida 8800 GT還是三者中最快的。(但是 C/P值是AMD勝出)。
但是8800 GT 還是不支援dirextX 10.1,AMD HD 3800系列卻支援dirextX 10.1。
微軟說現有的dirextX 10顯卡不能跑dirextX 10.1(Vista sp1)。
這是不是意味著Vista sp1 和dirextX 10.1的game 8800 GT不能跑,而AMD HD 3800系列可以跑呢?


如果那個遊戲是DX10.1「專屬」的遊戲,我的意思是遊戲的「所有」特效都「只用」DX10.1的話,那沒錯,8800GT不能跑。
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!