DirectX 11是什麼

  2009年9月22日ATI發佈了支援DX11的基於Cypress核心的HD5800系列顯卡,而NVIDIA才剛造出支援DX11的GT300晶片的樣品。回顧DirectX歷史,從1995年Windows 95堛慣X1.0開始,一直保持著很快的陞級速度,只有DX9系列的幾個版本維持了四年之久。用兩年的時間從DX10更新到DX11,其實也不算快。

  雖然硬體已經支援DirectX11,但支援DirectX11的游戲2010年才會大量出現。

  我們知道,DX10.1將是DX10的最後一次陞級,而且是非關鍵性的,接下來微軟就會直接邁入DX11。根據此前的報道,DX11的主要目標仍是降低游戲開發難度和成本,同時更有效地發揮新硬體的能力、提高物理效果和游戲AI、增強畫面細節複雜度、針對多核心處理器進行全面優化。

  2009年1月9日星期五,微軟將面向公眾發佈Windows 7用戶端Beta 1測試版。而此前一天,即1月8日,微軟將率先發佈Windows 7伺服器版本的Beta 1測試版。

  在微軟發佈的Windows 7 Beta版本中,一些已經裝設使用的用戶的發現了DirectX 11已經包含其中了。DirectX 11作為3D圖形接口,不僅支援未來的DX11硬體,還向下相容目前的DirectX 10和10.1硬體。DirectX 11增加了新的計算shader技術,可以允許GPU從事更多的通用計算工作,而不僅僅是3D運算,這可以鼓勵開發人員更好地將GPU作為並行處理器使用。

  特點

  DX11新增了計算著色器(Compute Shader)代碼示例,在今年的NVISION大會上,微軟就透漏了這點,並透過SIGGRAPH以及GameFest 2008大會上放出的幻燈片,我們可以進行一些深入的研究。此外,DX11特性的提前放出,對於目前DX10以及DX10.1硬體用戶而言也大有裨益,因為AMD和NVIDIA可以照此提前開發適當的驅動支援。

  DirectX 11的諸多特性似乎暗示我們,DirectX 11被迅速採用的時機已經成熟,特別是微軟的Windows 7發佈之後,這一趨勢將會勢不可擋。而如今,HLSL(High Level Shading Language,高級渲染語言)已經完全成熟,這勢必會讓DX11在眾游戲開發者們眼媗亃o更加具有吸引力,而且越來越多的人開始認識到DX10其實就是DX11的子集,這對於DirectX 11將來被快速採用也會起到促進作用。另外,DX11可以讓平行程式設計變得更加容易,其獨有的特性也會促進開發者們大膽的、迅速采納這種API。DirectX 11同時可以相容Vista作業系統,所以用戶不用擔心不能陞級,而Windows 7與生俱來的魅力在很大程度上也會促使Windows XP用戶們做出陞級的決定,也就是說,對於開發者們而言,市場上將會有足夠大的可運行DX11的系統群體。

  微軟曾許諾DirectX 10可以帶來革命性的視覺體驗以及渲染技術,但結果卻是仁者見仁,不過可以肯定的是,DirectX 11可能最終將會履行這一承諾。雖然我們現在不可能馬上就看到DirectX 11獨有的特性所帶來的效果,但是這一新版API的普及將會對刺激適時3D繪圖技術不斷提升大有裨益。

  從DirectX 6到DirectX 9,微軟一直在有條不紊的使他們的程式設計API從一種固定的功能傳播介質以及動態的數據結構向一種豐滿的、可程式設計的、可進行繪圖硬體深控的環境演變。從DX9到DX10的演變可以說是一種昇華:DX9的可程式設計性得到了進一步擴展和延伸,並在新一代硬體的作用下變得更具深度和彈性。此外,微軟還透過各種手段提升了DX10的穩定性以及靈活性。但是,DirectX 11的演變過程則有很多不同。

  為了最大限度的提升可程式設計性,DX11寧可丟掉一些原有的結構效度。微軟將DirectX 11構建成DirectX 10/10.1的精確父集,這讓DirectX 11無形中新增了很多奇妙的潛力。特別是,DX10代碼將會變成可以選擇不去執行某些先進特性的DX11代碼,而反過來,DX11又可以在所有同等水平的硬體上運行。當然了,對於DX10而言,並不是所有的DX11特性都是可用的,但是這卻意味著開發者可在採用DX11的情況下同時針對DX10和DX11硬體進行開發,而不用考慮兩者完全分開對待:因為兩者是相同的,只不過,一個是另一個的子集功能而已。但是,如果應用某些DX11獨有特效(比如說tessellator或者compute shader)時,區分代碼路徑是非常必要的,但這完全屬於從DX10向DX11過渡過程中的益處所在。

網友評論