微軟在2014年的GDC上正式發布了新一代的API DirectX 12(DX12)。雖然它并不像前兩天外媒聲稱的翻版AMD Mantle API,但是其具體細節并沒有被公布多少。不過,我們還是可以看到DirectX 12里面包含了一些新東西。
微軟將在Windows 10系統上正式帶來DirectX 12(以下簡稱DX12),支持Windows10及以上的版本。看來微軟為了Win10推廣也是夠拼的。不過微軟這次的底氣比只讓Windows Vista支持DX10更足,因為DX12比DX10受歡迎多了。全球首款支持DirectX 12的游戲是奇點灰燼。
新的特性
DX12最重要的變化就是更底層API,這一點很像AMD Mantle,在硬件抽象層上走得比以往更深入,能夠同時減輕CPU、GPU的過載(overload)。
具體包括:應用可追蹤GPU流水線、控制資源狀態轉換(比如從渲染目標到紋理)、控制資源重命名,更少的API和驅動跟蹤,可預判屬性,等等。
另外,DX12大大提高了多線程效率,可以充分發揮多線程硬件的潛力。DX11在這方面受CPU性能的嚴重制約,主要是因為不能有效利用多核心。
微軟宣稱,微軟對多核心CPU的利用幾乎是完美線性增長的,也就是說四核心能接近單核心的四倍。
此外還有渲染流水線、渲染特性、資源管理、命令列表與綁定、描述符跳躍等等方面的改進,因為主要是關于開發的,也比較深晦,這里就先不說太多了。
硬件支持
英偉達確認說,開普勒、費米、麥克斯韋以后架構的全部都支持DX12,也就是GeForce GTX 400系列以來的型號都可以,DX11的都行。
AMD則確認,GCN架構的所有顯卡均支持DX12,也就是Radeon HD 7000、Radeon R200系列。現有顯卡無一完整支持DX12,GCN架構只是全部兼容DX12,但是都不能完整支持DX12。AMD全球技術市場總監Robert Hallock確認了上述說法。
英特爾確認稱,第四代Haswell可以支持DX12,但其實僅限最高端的兩個型號:GT3 Iris 5100、GT3e Iris Pro 5200。
還不知道它們是100% API支持還是僅僅特性集上的支持,但至少有一點,那就是DX12并不需要新的硬件才能實現,現有的就可以,因此它更像是DX11的一個擴展。
3、高通與移動
之所以把高通單獨列出來,是因為這是它首次與微軟DX聯手合作,也是微軟DX首次正式面向移動領域。
按照高通的說法,DX12可以大大提升能效,改進移動設備性能,而且在擴展性、移植性方面都非常好。
4、Xbox One
AMD已經說了DX12會完全導向Xbox One,微軟則表示,他們只花了四個月的精力,就把Xbox One的核心渲染引擎從DX11.1轉向了DX12。
在此之前,已經有一些屬于DX12的特性存在于Xbox One(看來謀劃已久),其他的也已經移植過來。
另外,Epic Games也表示正在與微軟、英偉達緊密合作,讓新發布的虛幻4引擎支持DX12——沒提AMD,看來虛幻4的游戲會很傾向于N卡。
發布時間
微軟只是紙面宣布DX12,真正面世還要等到2015年底假期,也就是還有一年多,2015年底的游戲大作里才能看到DX12。微軟保證說,會在2014年晚些時候提供一個DX12的預覽驅動。2023年4月2日消息,近日,微軟公布了DirectX 12的一項名為“GPU Upload Heaps”的新功能,該功能已經能夠在Agility SDK中使用。
參考資料 >
AMD官方確認:現有顯卡無一完整支持DX12.賽迪網.2015-07-02
微軟正式發布DX12!.驅動之家.2015-07-02
微軟DirectX 12獲更新:允許CPU和GPU同時訪問顯存.百家號.2025-07-23