微軟公司今日正式在GDC全球游戲開發(fā)者大會上推出了最新一代的DirectX 12圖形應(yīng)用程序編程接口,可以讓游戲開發(fā)者控制圖形處理單元的游戲和其它與圖形相關(guān)的應(yīng)用程序。雖然之前DirectX系列API一直都是非常出色的產(chǎn)品,但是最新的DirectX 12依然解決了上一代DirectX 11長期以來一直存在的提問。
游戲開發(fā)人員可以根據(jù)自己對游戲的不同水平要求,通過DirectX 12更好的利用CPU和GPU在系統(tǒng)中的作用。從開發(fā)人員的角度來看,這將為PC游戲帶來了“專業(yè)游戲機”級別的控制方式和效率,同時依然使用了一個標(biāo)準(zhǔn)的API接口。
運行DX12的硬件條件
將為PC游戲帶來了“專業(yè)游戲機”級別的控制方式和效率。
對于大多數(shù)用戶來說,這也許是最實際也最重要的問題。其實如果之前用戶的計算機能夠運行DirectX 11,那么同樣可以運行DirectX 12。因為新版本的DirectX 12主要是針對API本身進(jìn)行提高,而并非添加了新的硬件特性。
開發(fā)人員需要針對自己的游戲進(jìn)行一些內(nèi)容上的改動來更新游戲驅(qū)動適應(yīng)新的DirectX 12。如果你現(xiàn)在已經(jīng)支持DirectX 11,那么可以正常兼容DirectX 12。NVIDIA公司已經(jīng)對此進(jìn)行了驗證:“所有的NVIDIA DX11 HW都將帶來對DirectX 12的支持!
NVIDIA公司高級代表Tony Tamasi在一份聯(lián)合聲明中表示。GeForce 20系列以來的型號都可以,包括開普勒、費米、麥克斯韋架構(gòu)全部都支持DirectX 12,也就是只要支持DirectX 11的都行。
AMD則表示,GCN架構(gòu)的所有顯卡均支持DirectX 12,也就是Radeon HD 7000、Radeon R200系列。英特爾方面,第四代Haswell可以支持DirectX 12,實際上僅限最高端的兩個型號:GT3 Iris 5100、GT3e Iris Pro 5200。
很明顯DirectX 12不需要性能的硬件才能實現(xiàn),現(xiàn)有的就可以,而且性能估計也差不到哪里去,基于DirectX 11的可能性非常大。
DirectX 12都將帶來哪些新特性
既然硬件條件已經(jīng)滿足,那么我們再來看看哪些新特性。從根本上來說,DirectX 12就是提高了驅(qū)動效率,給開發(fā)者更多的控制權(quán)。DirectX 12改變了底層的API,在硬件抽象層上走得比以往更深入,具體包括了應(yīng)用可追蹤GPU流水線、控制資源狀態(tài)轉(zhuǎn)換(比如從渲染目標(biāo)到紋理)、控制資源重命名,更少的API和驅(qū)動跟蹤,可預(yù)判屬性等等。
此外,多線程效率也得到了較大的提升, 能更充分的發(fā)揮硬件的性能。據(jù)微軟宣稱,對多核心的CPU的利用幾乎是完美的線性增長的,也就是說幾個核心能接近單核心的幾倍。此外還有渲染流水線、渲染特性、資源管理、命令列表與綁定、描述符跳躍等等方面的改進(jìn)。
Direct3D 12的關(guān)鍵點
更低的CPU消耗:在游戲開發(fā)者的要求下,微軟改變了App-API的結(jié)構(gòu),刪除了大量的CPU資源消耗。作為開發(fā)人員來說可以獲得更多的資源控制和執(zhí)行圖形命令、驅(qū)動和D3D運行時不再需要跟蹤和檢查應(yīng)用程序正在做什么,從而帶來更高的效率。在微軟DX12的演示視頻上,我們看到了CPU的使用率最少消耗了50%以上。
更好的CPU內(nèi)核負(fù)載分布:在Forza 5演示視頻上,微軟同樣證明了CPU內(nèi)核的任務(wù)分布變得更加均勻。而與DX11相比,每個核心增加了更多的加載。由于增加核心數(shù)是提高CPU性能的唯一途徑,因此這事對于圖形類應(yīng)用程序效率的提高是重大的提升。
應(yīng)用程序資源控制優(yōu)化:DX12允許游戲開發(fā)者擁有更好的控制力,并且管理自己的GPU內(nèi)存,從而防止幀速率下降或短暫被掛起。
GPU廠商的積極態(tài)度
微軟在發(fā)布會上邀請了NVIDIA、AMD和高通公司,每個公司都對DX12的發(fā)布感到非常高興。的確如此,DX12會為每一方帶來好處,NVIDIA將會不用花費資源就可以擁有自己的API,而之前AMD雖然在該領(lǐng)域算不上成功,但是從最近開始已經(jīng)在慢慢的提高,并且這對于它們下一代的八核處理器來說非常重要。而英特爾公司幾乎具有相同的CPU效率觀,也抱有核心越多越好的觀點。而首次與微軟DirectX 12聯(lián)手合作的高通作為本次發(fā)布會的噱頭,吸引了不少人的眼球。作為微軟DX首次涉獵移動領(lǐng)域,十分令人期待。高通表示DirectX 12可以大大提升移動設(shè)備的能效比,進(jìn)一步提升移動設(shè)備性能,同時還擁有良好的擴(kuò)展性、移植性。
另外,微軟公司本身還表示旗下的新一代Xbox One主機平臺由于都是采用了GCN架構(gòu),所以支持DX 12無疑。微軟表示,他們4名員工只花了一個月的時間,就把Xbox One的核心渲染引擎從DirectX 11.1變?yōu)榱薉irectX 12。
微軟還表示Xbox One中已經(jīng)存在一些DirectX 12的特性,其他的特性也將隨之移植過來。另外,Epic Games也表示正在與微軟、NVIDIA緊密合作,讓新發(fā)布的虛幻引擎4完美支持DirectX 12?磥硪院笥锰摶4引擎的游戲?qū)⑻砑訉卡的特別優(yōu)化。
總結(jié)
DirectX 12和Direct3D 12其實是一個非常重要的API更新,F(xiàn)在對于開發(fā)人員來說最重要的是如何將已有游戲和新游戲更好的將它們同步。因此,我們將在現(xiàn)有的硬件上得到更好的運行體驗,而游戲開發(fā)者們也會花更少的時間在API上,而用更多的時間來優(yōu)化和創(chuàng)建游戲本身。同時從主機或PC移植作品去移動設(shè)備也會變得比過去更簡單。而在PC這邊,游戲開發(fā)者也能更容易地做好顯示效果?傮w上來說,本次DirectX 12是一個大家都非常喜歡看到的新版本。