DirectX 12是現(xiàn)在計(jì)算機(jī)愛(ài)好者的熱門話題。無(wú)論是Win10系統(tǒng)還是一些大作游戲配置要求,都可以看到DirectX 12的標(biāo)記。DirectX 12到底是什么,有什么功能?下面詳細(xì)介紹一下這些電腦小白朋友不熟悉的問(wèn)題。

什么是DirectX 12?

DirectX,稱為直接擴(kuò)展,是微軟公司創(chuàng)建的多媒體編程接口。

DirectX由C編程語(yǔ)言實(shí)現(xiàn),遵循COM。廣泛應(yīng)用于微軟Windows、微軟Xbox、微軟Xbox 360視頻游戲的開發(fā),只能支持這些平臺(tái)。DirectX12是目前DirectX的最新版本。大家熟悉的XP系統(tǒng)版本是DirectX 9.0,Win7/8系統(tǒng)版本是DirectX 11。在Win10正式版中,會(huì)內(nèi)置最新的DirectX 12。

簡(jiǎn)單來(lái)說(shuō),DirectX 12是微軟Windows系統(tǒng)中DirectX的最新版本,帶來(lái)了更好的3d圖形和音效優(yōu)化。無(wú)疑受到游戲玩家的喜愛(ài)。

DirectX 12有什么用?

DirectX的主要功能是增強(qiáng)3D圖形和音效,為設(shè)計(jì)師提供一個(gè)通用的硬件驅(qū)動(dòng)標(biāo)準(zhǔn),讓游戲開發(fā)者不必為每個(gè)品牌的硬件編寫不同的驅(qū)動(dòng),同時(shí)也降低了用戶安裝和設(shè)置硬件的復(fù)雜度。

從字面上來(lái)說(shuō),Direct就是直接的意思,而后面的x則代表了很多意思。從這一點(diǎn)上,我們可以看到DirectX似乎為許多軟件提供了直接的API接口服務(wù)。一般來(lái)說(shuō),DirectX的高版本會(huì)有更好的體驗(yàn)。

簡(jiǎn)單來(lái)說(shuō),DirectX 12其實(shí)是一個(gè)非常重要的API更新,主要是提高驅(qū)動(dòng)效率,給開發(fā)者更多的控制權(quán)。DirectX 12改變了底層API,在硬件抽象層比以前更深入,具體包括可追蹤GPU流水線的應(yīng)用、資源狀態(tài)轉(zhuǎn)換的控制(比如從渲染目標(biāo)到紋理)、資源重命名的控制、更少的API和驅(qū)動(dòng)跟蹤、可預(yù)測(cè)的屬性、多線程優(yōu)化等。可以帶來(lái)更好的游戲體驗(yàn)。

在PC端,游戲開發(fā)者也可以更輕松地展示效果??偟膩?lái)說(shuō),這個(gè)DirectX 12是大家非常喜歡看的新版本。

DirectX版本的發(fā)展歷史

DirectX不是一個(gè)簡(jiǎn)單的圖形API,它是微軟開發(fā)的一個(gè)廣泛使用的API。它包含許多組件,如Direct graphics(Direct 3d Direct Draw)、直接輸入、直接播放、直接聲音、直接顯示、直接設(shè)置、直接媒體對(duì)象等。它提供了一整套多媒體接口解決方案。只是它在3D圖形方面的出色表現(xiàn),讓它的其他方面顯得黯淡無(wú)光。DirectX開發(fā)之初是為了彌補(bǔ)Windows 3.1系統(tǒng)圖形和聲音處理能力的不足,現(xiàn)在已經(jīng)發(fā)展成為對(duì)整個(gè)多媒體系統(tǒng)各個(gè)方面都有決定性影響的接口。

DirectX 5.0

微軟沒(méi)有推出DirectX 4.0,而是直接推出了DirectX 5.0。該版本對(duì)Direct3D進(jìn)行了很大的改動(dòng),加入了霧化效果、Alpha混合等3D特效,增強(qiáng)了3D游戲中的空間感和真實(shí)感,還加入了S3紋理壓縮技術(shù)。同時(shí),DirectX 5.0在其他組件上得到了加強(qiáng),在聲卡和游戲手柄上得到了改進(jìn),支持更多的設(shè)備。所以DirectX發(fā)展到DirectX 5.0才真正成熟。此時(shí)DirectX的性能并不遜色于其他3D API,有后來(lái)居上的潛力。

DirectX 6.0

DirectX 6.0推出時(shí),其最大的競(jìng)爭(zhēng)對(duì)手之一Glide逐漸衰落,而DirectX則得到了大多數(shù)廠商的認(rèn)可。DirectX 6.0增加了雙線性過(guò)濾、三線性過(guò)濾等技術(shù)來(lái)優(yōu)化3D圖像的質(zhì)量,游戲中的3D技術(shù)也逐漸進(jìn)入成熟階段。

DirectX 7.0

DirectX 7.0最大的特點(diǎn)就是支持TL,它的中文名字叫“坐標(biāo)變換和光源”。3D游戲中的任何物體都有一個(gè)坐標(biāo)。當(dāng)這個(gè)物體移動(dòng)時(shí),它的坐標(biāo)發(fā)生變化,也就是坐標(biāo)變換。在3D游戲中,除了場(chǎng)景物體,還需要燈光。沒(méi)有燈光,就沒(méi)有3D物體的表現(xiàn)。無(wú)論是實(shí)時(shí)3D游戲還是3D圖像渲染,帶燈光的3D渲染都是最耗費(fèi)資源的。OpenGL中雖然有相關(guān)技術(shù),但之前從未在民用硬件中出現(xiàn)過(guò)。TL出來(lái)之前,位置轉(zhuǎn)換和燈光都需要CPU計(jì)算。CPU速度越快,游戲性能越流暢。使用TL函數(shù)后,這兩個(gè)效果由顯卡的GPU計(jì)算,讓CPU從繁忙的工作中解脫出來(lái)。換句話說(shuō),有了TL顯卡和DirectX 7.0,即使沒(méi)有高速CPU也能流暢運(yùn)行3D游戲。

DirectX 8.0

DirectX 8.0的推出引發(fā)了一場(chǎng)顯卡革命。它首次引入了“像素渲染”的概念,同時(shí)擁有像素著色器和頂點(diǎn)著色器,在特效中體現(xiàn)了動(dòng)態(tài)的光影效果。VS和PS單元相對(duì)于只通過(guò)硬件TL實(shí)現(xiàn)的固定光影轉(zhuǎn)換更加靈活,使得GPU真正成為可編程處理器。這意味著程序員通過(guò)它們構(gòu)建3D場(chǎng)景的難度要小得多。通過(guò)VS和PS的渲染,很容易在水面上營(yíng)造出真實(shí)的動(dòng)態(tài)波紋光影效果。此時(shí),DirectX的權(quán)威地位終于確立。

DirectX 9.0

2002年底,微軟發(fā)布了DirectX9.0,DirectX9中PS單元的渲染精度已經(jīng)達(dá)到浮點(diǎn)精度,傳統(tǒng)的硬件TL單元也被取消。新的VertexShader (VertexShader引擎)編程會(huì)比以前復(fù)雜很多。新的頂點(diǎn)著色器標(biāo)準(zhǔn)增加了流量控制,更多的常數(shù),每個(gè)程序的著色指令增加到1024條。

PS 2.0擁有完全可編程的架構(gòu),可以即時(shí)計(jì)算紋理效果,動(dòng)態(tài)映射紋理,不占用顯存。理論上可以無(wú)限提高紋理映射的分辨率精度。另外,PS1.4只能支持28條硬件指令,同時(shí)操作6個(gè)素材,而PS2.0可以支持160條硬件指令,同時(shí)操作16個(gè)素材。新的高精度浮點(diǎn)數(shù)據(jù)規(guī)范可以使用多個(gè)紋理圖,可操作指令的數(shù)量可以任意長(zhǎng),因此可以輕松實(shí)現(xiàn)電影級(jí)的顯示效果。

通過(guò)增加頂點(diǎn)程序的靈活性,VS 2.0顯著提升了舊版本(DirectX8)的VS性能。有了新的控制指令,通用程序可以代替以前專用的單獨(dú)著色程序,效率提高了很多倍。增加循環(huán)作業(yè)指令,減少工作時(shí)間,提高加工效率;著色指令的數(shù)量從128個(gè)增加到256個(gè)。

增加浮點(diǎn)數(shù)據(jù)的處理功能。以前只能處理整數(shù),提高了渲染精度,使最終處理的色彩格式達(dá)到電影級(jí)別。它突破了過(guò)去限制PC圖形圖像質(zhì)量的數(shù)學(xué)精度壁壘,每一條渲染流水線都升級(jí)為128位浮點(diǎn)色彩,讓游戲程序員更容易創(chuàng)作出更精美的效果,讓程序員更容易編程。

DirectX 9.0c

與過(guò)去的DirectX 9.0b和Shader Model 2.0相比,DirectX 9.0c最大的改進(jìn)是引入了對(duì)Shader Model 3.0(包括像素著色器3.0和頂點(diǎn)著色器3.0)的全面支持。例如,DirectX 9.0b的著色器模型2.0支持的頂點(diǎn)著色器指令的最大數(shù)量?jī)H為256,像素著色器指令的最大數(shù)量?jī)H為96。在最新的著色器模型3.0中,頂點(diǎn)著色器和像素著色器的最大指令數(shù)增加到了65,535。新的動(dòng)態(tài)程序流程控制、位移貼圖、MRT、亞表面散射亞表面散射、軟陰影、環(huán)境和地面陰影的環(huán)境和地面陰影、全局光照等新技術(shù)特性,GeForce 6、GeForce7系列和鐳龍X1000系列立即為新一代游戲提供強(qiáng)大的動(dòng)力,以及復(fù)雜的數(shù)字世界以無(wú)與倫比的真實(shí)感和幻想性以及逼真的人物在影視質(zhì)量的環(huán)境中運(yùn)動(dòng)。

因此,DirectX 9.0c和Shader Model 3.0標(biāo)準(zhǔn)的推出可以說(shuō)是DirectX發(fā)展的一個(gè)重要轉(zhuǎn)折點(diǎn)。在DirectX 9.0c中,Shader Model 3.0除了取消了指令數(shù)限制,增加了位移貼圖等新特性之外,還有更多專注于解決游戲執(zhí)行效率和質(zhì)量的特性。Shader Model 3.0誕生后,人們對(duì)游戲的態(tài)度從過(guò)去單純追求速度轉(zhuǎn)變?yōu)榧骖櫽螒蛸|(zhì)量和運(yùn)行速度。因此,著色器模型3.0對(duì)游戲行業(yè)產(chǎn)生了深遠(yuǎn)的影響。

另外,隨著Win7和Win8的推出,DirectX版本已經(jīng)升級(jí)到了DirectX 10/11,甚至是最新的DirectX 12。對(duì)于電腦愛(ài)好者來(lái)說(shuō),只要知道DirectX主要是為了提升游戲或者圖形性能體驗(yàn),更高版本的DirectX就能帶來(lái)電腦游戲性能的提升。不過(guò)也要注意,最新的DirectX 12需要系統(tǒng)和硬件支持。比如系統(tǒng)需要Win10,顯卡需要支持DirectX 12,一些老顯卡可能無(wú)法支持最新的DirectX 12。

免責(zé)聲明:本文來(lái)源于互聯(lián)網(wǎng)公開數(shù)據(jù)整理或轉(zhuǎn)載,版權(quán)歸原作者所有,如內(nèi)容侵權(quán)與違規(guī),請(qǐng)聯(lián)系我們進(jìn)行刪除,我們將在三個(gè)工作日內(nèi)處理。聯(lián)系郵箱:303555158#@QQ.COM(把#換成@)