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