DirectX(DX)是微軟公建的多媒體編程應用程序接口??梢宰屢詗indows為平臺的游戲或多媒體程序獲得更高的執行效率,加強3D圖形和聲音效果,讓游戲開發者不必為每一品牌的硬件來寫不同的驅動程序,也降低用戶安裝及設置硬件的復雜度。
DirectX(Direct eXtension,簡稱 DX)是由微軟公司創建的多媒體編程接口,是一種應用程序接口(API)。DirectX 可以讓以 windows 為平臺的游戲或多媒體程序獲得更高的執行效率,加強 3D 圖形和聲音效果,并提供設計人員一個共同的硬件驅動標準,讓游戲開發者不必為每一品牌的硬件來寫不同的驅動程序,也降低用戶安裝及設置硬件的復雜度。DirectX 已被廣泛使用于 Microsoft Windows、Microsoft XBOX、Microsoft XBOX 360 和 Microsoft XBOX ONE 電子游戲開發。
功用
DirectX 加強 3D 圖形和聲音效果,并提供設計人員一個共同的硬件驅動標準,讓游戲開發者不必為每一品牌的硬件來寫不同的驅動程序,也降低了用戶安裝及設置硬件的復雜度。
從字面意義上說,Direct 就是直接的意思,而后邊的 X 則代表了很多的意思,從這一點上可以看出 DirectX 的出現就是為了為眾多軟件提供直接服務的。
舉例來說,以前在 DOS 下骨灰級玩家玩游戲時,并不是安裝上就可以玩了,他們往往首先要設置聲卡的品牌和型號,然后還要設置 IRQ(中斷)、I/O(輸入與輸出)、DMA(存取模式),如果哪項設置的不對,那么游戲聲音就發不出來。這部分的設置不僅讓玩家傷透腦筋,對游戲開發者來說就更為頭痛。為了讓游戲能夠在眾多電腦中正確運行,開發者必須在游戲制作之初,把市面上所有聲卡硬件數據都收集過來,然后根據不同的 API(應用編程接口)來寫不同的驅動程序。這對于游戲制作公司來說,是很難完成的,所以在當時多媒體游戲很少。微軟正是看到了這個問題,為眾廠家推出了一個共同的應用程序接口——DirectX。只要游戲是依照 Directx 來開發的,不管顯卡、聲卡型號如何,統統都能玩,而且還能發揮最佳的效果。當然,前提是使用的顯卡、聲卡的驅動程序必須支持 DirectX 才行。
DirectX 是由很多 API 組成的,按照性質分類,可以分為四大部分,顯示部分、聲音部分、輸入部分和網絡部分。
顯示部分擔任圖形處理的關鍵,分為 DirectDraw(DDraw)和 Direct3D(D3D),前者主要負責 2D 圖像加速。它包括很多方面:我們播放 mpg、DVD 電影、看圖、玩小游戲等等都是用的 DDraw,你可以把它理解成所有劃線的部分都是用的 DDraw。后者則主要負責 3D 效果的顯示,比如 CS 中的場景和人物、FIFA 中的人物等等,都是使用了 DirectX 的 Direct3D。
聲音部分中最主要的 API 是 DirectSound,除了播放聲音和處理混音之外,還加強了 3d 音效,并提供了錄音功能。我們前面所舉的聲卡兼容的例子,就是利用了 DirectSound 來解決的。
輸入部分 DirectInput 可以支持很多的游戲輸入設備,它能夠讓這些設備充分發揮最佳狀態和全部功能。除了鍵盤和鼠標之外還可以連接手柄、搖桿、模擬器等。
DirectX 并不是一個單純的圖形 API,它是由微軟公司開發的用途廣泛的 API,它包含有 Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects 等多個組件,它提供了一整套的多媒體接口方案。只是其在 3D 圖形方面的優秀表現,讓它的其它方面顯得暗淡無光。DirectX 開發之初是為了彌補 Windows 3.1 系統對圖形、聲音處理能力的不足,而今已發展成為對整個多媒體系統的各個方面都有決定性影響的接口。DirectX 是一組低級“應用程序編程接口(API)”,可為 Windows 程序提供高性能的硬件加速多媒體支持。Windows 支持 DirectX 8.0,它能增強計算機的多媒體功能。使用 DirectX 可訪問顯卡與聲卡的功能,從而使程序可提供逼真的三維(3D) 圖形與令人如醉如癡的音樂與聲音效果。DirectX 使程序能夠輕松確定計算機的硬件性能,然后設置與之匹配的程序參數。該程序使得多媒體軟件程序能夠在基于 Windows 的具有 DirectX 兼容硬件與驅動程序的計算機上運行,同時可確保多媒體程序能夠充分利用高性能硬件。DirectX 包含一組 API,通過它能訪問高性能硬件的高級功能,如三維圖形加速芯片和聲卡。這些 API 控制低級功能(其中包括二維(2D)圖形加速)、支持輸入設備(如游戲桿、鍵盤和鼠標)并控制著混音及聲音輸出。構成 DirectX 的下列組件支持低級功能:Microsoft DirectDraw Microsoft DirectDraw API 支持快速訪問計算機視頻適配器的加速硬件功能。它支持在所有視頻適配器上顯示圖形的標準方法,并且使用加速驅動程序時可以更快更直接地訪問。DirectDraw 為程序(如游戲和二維圖形程序包)以及 Windows 系統組件(如數字視頻編***)提供了一種獨立于設備之外的方法來訪問特定顯示設備的功能,而不要求用戶提供設備功能的其它信息。
Microsoft Direct3D Microsoft Direct3D API (Direct3D) :為大多數新視頻適配器內置的 3-D 調色功能提供界面。Direct3D 是一種低級的 3-D API,它為軟件程序提供一種獨立于設備之外的方法以便與加速器硬件進行有效而強大的通信。Direct3D 包含專用 CPU 指令集支持,從而可為新型計算機提供進一步加速支持。
Microsoft DirectSound Microsoft DirectSound API :為程序和音頻適配器的混音、聲音播放和聲音捕獲功能之間提供了鏈接。DirectSound 為多媒體軟件程序提供低延遲混合、硬件加速以及直接訪問聲音設備等功能。維護與現有設備驅動程序的兼容性時提供該功能。
Microsoft DirectMusic Microsoft DirectMusic API :是 DirectX 的交互式音頻組件。與捕獲和播放數字聲音樣本的 DirectSound API 不同,DirectMusic 處理數字音頻以及基于消息的音樂數據,這些數據是通過聲卡或其內置的軟件合成器轉換成數字音頻的。DirectMusic API 支持以“樂器數字界面(MIDI)”格式進行輸入,也支持壓縮與未壓縮的數字音頻格式。DirectMusic 為軟件開發人員提供了創建令人陶醉的動態音軌的能力,以響應軟件環境中的各種更改,而不只是用戶直接輸入更改。
Microsoft DirectInput Microsoft DirectInput API :為游戲提供高級輸入功能并能處理游戲桿以及包括鼠標、鍵盤和強力反饋游戲控制器在內的其它相關設備的輸入。
Microsoft DirectPlay Microsoft DirectPlay API:支持通過調制解調器、Internet 或局域網連接游戲。DirectPlay 簡化了對通信服務的訪問,并提供了一種能夠使游戲彼此通信的方法而不受協議或聯機服務的限制。DirectPlay 提供了多種游戲服務,可簡化多媒體播放器游戲的初始化,同時還支持可靠的通信協議以確保重要游戲數據在網絡上不會丟失。DirectPlay 8.0 的新功能即支持通過網絡進行語音通信,從而可大大提高基于多媒體播放器小組的游戲的娛樂性,同時該組件還通過提供與玩游戲的其他人對話的功能而使團體游戲更具魅力。
Microsoft DirectShow Microsoft DirectShow API:提供了可在您的計算機與 Internet 服務器上進行高品質捕獲與回放多媒體文件的功能。DirectShow 支持各種音頻與視頻格式,包括“高級流式格式(ASF)”、“音頻-視頻交錯 (AVI)”、“數字視頻(DV)”、“動畫專家組 (MPEG)”、“MPEG 音頻層 3 (MP3)”、“Windows 媒體音頻/視頻(WMA/WMV)”以及 WAV 文件。DirectShow 還具有視頻捕獲、DVD 回放、視頻編輯與混合、硬件加速視頻解碼以及調諧廣播模擬與數字電視信號等功能。
如何來學習它呢?
Direct 身為一種運算規則,其自身的運行環境必然是有嚴格規定的,也就是說 Direct 是獨為 Windows 服務的一種規則。那它的表達環境就是在英文中。而非中。所以要想理解 Direct 并且靈活運用,而并非僅僅理解這句話的構成,而是要徹底剖析英文的語言規律,也就是 Windows 的運行原理,Windows 自身輸入輸出的方式。在這個基礎上要理解 Direct 這個規則自然是水到渠成。
那是不是說就不用去研究 Direct 了?
并非如此,但是在了解根本原理的基礎上去觀察 Direct 代碼上的結構會很輕松。這里要說的就是 Direct 自身很強大但學習起來并非很難,難在于原理的研究,不僅要看智商,更主要還要有耐心,幾千頁的原理并不是一年半載能看完的。研究完這些,至于語法上的規則那就不值一提了。
Direct 最好從基礎原理開始研究,然而原理卻如此之復雜,難道 Direct 沒法去學了?
這句話也不對。當有一個新事物來到你面前時,你要從兩個方面開始研究,一個是表面現象,也就是 Direct 的語言的規則與使用習慣、方法等。另一方面就是從已知條件中去推導出這個現象。意思是要從原理和代碼兩方面入手,從代碼入手時記住了代碼的習慣。緊接著了解這一點原理幫助自己去記憶,也能很快理解是怎么回事。也就是說我們雖然不贊同背代碼,但也不能一點不記,我們雖然很贊同從原理入手,但從實際考慮,還是希望各位能量力而行。
整體來講學 Direct 還是要有一定編程基礎的,不建議一上來就學 Direct,Direct 畢竟是一個比較高深的東西。還是建議您對 C++、Dos 等一些語言比較精通的時候再回頭研究 Direct。
當然也不是不可能,例如 3Ds Max 就是基于 Direct 的。做個模型、圖像、動畫還是可以的。當然也要看你從什么角度去學習了。
DirectX 1.0
第一代的 DirectX 很不成功,推出時眾多的硬件均不支持,當時基本都采用專業圖形 API-OpenGL,缺乏硬件的支持成了其流行的最大障礙。
DirectX 1.0 版本是第一個可以直接對硬件信息進行讀取的程序。它提供了更為直接的讀取圖形硬件的性能(比如:顯示卡上的塊移動功能)以及基本的聲音和輸入設備功能(函數),使開發的游戲能實現對二維(2D)圖像進行加速。第一代 DirectX 不包括所有的 3D 功能,還處于一個初級階段。
DirectX 2.0
DirectX 2.0 在二維圖形方面做了些改進,增加了一些動態效果,采用了 Direct 3D 的技術。這樣 DirectX 2.0 與 DirectX 1.0 有了相當大的不同。在 DirectX 2.0 中,采用了“平滑模擬和 RGB 模擬”兩種模擬方式對三維(3D)圖像進行加速計算的。DirectX 2.0 同時也采用了更加友好的用戶設置程序并更正了應用程序接口的許多問題。從 DirectX 2.0 開始,整個 DirectX 的設計架構雛形就已基本完成。
DirectX 3.0
DirectX 3.0 的推出是在 1997 年最后一個版本的 Windows95 發布后不久,此時 3D 游戲開始深入人心,DirectX 也逐漸得到軟硬件廠商的認可。97 年時應用程序接口標準共有三個,分別是專業的 OpenGL 接口,微軟的 DirectX D 接口和 3DFX 公司的 Glide 接口。而那時的 3DFX 公司是最為強大的顯卡制造商,它的 Glide 接口自然也受到最廣泛的應用,但隨著 3DFX 公司的沒落,Voodoo 顯卡的衰敗,Glide 接口才逐漸消失了。
DirectX 3.0 是 DirectX 2.0 的簡單升級版,它對 DirectX 2.0 的改動并不多。包括對 DirectSound(針對 3D 聲音功能)和 DirectPlay(針對游戲/網絡)的一些修改和升級。DirectX 3.0 集成了較簡單的 3D 效果,還不是很成熟。
DirectX 5.0
微軟公司并沒有推出 DirectX 4.0,而是直接推出了 DirectX 5.0。此版本對 Direct3D 做出了很大的改動,加入了霧化效果、Alpha 混合等 3D 特效,使 3D 游戲中的空間感和真實感得以增強,還加入了 S3 的紋理壓縮技術。
同時,DirectX 5.0 在其它各組件方面也有加強,在聲卡、游戲控制器方面均做了改進,支持了更多的設備。因此,DirectX 發展到 DirectX 5.0 才真正走向了成熟。此時的 DirectX 性能完全不遜色于其它 3D API,而且大有后來居上之勢。
DirectX 6.0
DirectX 6.0 推出時,其最大的競爭對手之一 Glide,已逐步走向了沒落,而 DirectX 則得到了大多數廠商的認可。DirectX 6.0 中加入了雙線性過濾、三線性過濾等優化 3D 圖像質量的技術,游戲中的 3D 技術逐漸走入成熟階段。
DirectX 7.0
DirectX 7.0 最大的特色就是支持 T&L,中文名稱是“坐標轉換和光源”。3D 游戲中的任何一個物體都有一個坐標,當此物體運動時,它的坐標發生變化,這指的就是坐標轉換;3D 游戲中除了場景+物體還需要燈光,沒有燈光就沒有 3D 物體的表現,無論是實時 3D 游戲還是 3D 影像渲染,加上燈光的 3D 渲染是最消耗資源的。雖然 OpenGL 中已有相關技術,但此前從未在民用級硬件中出現。
在 T&L 問世之前,位置轉換和燈光都需要 CPU 來計算,CPU 速度越快,游戲表現越流暢。使用了 T&L 功能后,這兩種效果的計算用顯示卡的 GPU 來計算,這樣就可以把 CPU 從繁忙的勞動中解脫出來。換句話說,擁有 T&L 顯示卡,使用 DirectX 7.0,即使沒有高速的 CPU,同樣能流暢的跑 3D 游戲。
DirectX 8.0
DirectX 8.0 的推出引發了一場顯卡革命,它首次引入了“像素渲染”概念,同時具備像素渲染引擎(Pixel Shader)與頂點渲染引擎(Vertex Shader),反映在特效上就是動態光影效果。同硬件 T&L 僅僅實現的固定光影轉換相比,VS 和 PS 單元的靈活性更大,它使 GPU 真正成為了可編程的處理器。這意味著程序員可通過它們實現 3D 場景構建的難度大大降低。通過 VS 和 PS 的渲染,可以很容易的營造出真實的水面動態波紋光影效果。此時 DirectX 的權威地位終于建成。
DirectX 9.0
2002 年底,微軟發布 DirectX9.0。DirectX 9 中 PS 單元的渲染精度已達到浮點精度,傳統的硬件 T&L 單元也被取消。全新的 VertexShader(頂點著色引擎)編程將比以前復雜得多,新的 VertexShader 標準增加了流程控制,更多的常量,每個程序的著色指令增加到了 1024 條。
PS 2.0 具備完全可編程的架構,能對紋理效果即時演算、動態紋理貼圖,還不占用顯存,理論上對材質貼圖的分辨率的精度提高無限多;另外 PS1.4 只能支持 28 個硬件指令,同時操作 6 個材質,而 PS2.0 卻可以支持 160 個硬件指令,同時操作 16 個材質數量,新的高精度浮點數據規格可以使用多重紋理貼圖,可操作的指令數可以任意長,電影級別的顯示效果輕而易舉的實現。
VS 2.0 通過增加 Vertex 程序的靈活性,顯著的提高了老版本(DirectX8)的 VS 性能,新的控制指令,可以用通用的程序代替以前專用的單獨著色程序,效率提高許多倍;增加循環操作指令,減少工作時間,提高處理效率;擴展著色指令個數,從 128 個提升到 256 個。
增加對浮點數據的處理功能,以前只能對整數進行處理,這樣提高渲染精度,使最終處理的色彩格式達到電影級別。突破了以前限制 PC 圖形圖象質量在數學上的精度障礙,它的每條渲染流水線都升級為 128 位浮點顏色,讓游戲程序設計師們更容易更輕松的創造出更漂亮的效果,讓程序員編程更容易。
DirectX 9.0c
與過去的 DirectX 9.0b 和 Shader Model 2.0 相比較,DirectX 9.0c 最大的改進,便是引入了對 Shader Model 3.0(包括 Pixel Shader 3.0 和 Vertex Shader 3.0 兩個著色語言規范)的全面支持。舉例來說,DirectX 9.0b 的 Shader Model 2.0 所支持的 Vertex Shader 最大指令數僅為 256 個,Pixel Shader 最大指令數更是只有 96 個。而在最新的 Shader Model 3.0 中,Vertex Shader 和 Pixel Shader 的最大指令數都大幅上升至 65535 個,全新的動態程序流控制、位移貼圖、多渲染目標(MRT)、次表面散射 Subsurface scattering、柔和陰影 Soft shadows、環境和地面陰影 Environmental and ground shadows、全局照明(Global illumination)等新技術特性,使得 GeForce 6、GeForce 7 系列以及 Radeon X1000 系列立刻為新一代游戲以及具備無比真實感、幻想般的復雜的數字世界和逼真的角色在影視品質的環境中活動提供強大動力。
因此 DirectX 9.0c 和 Shader Model 3.0 標準的推出,可以說是 DirectX 發展歷程中的重要轉折點。在 DirectX 9.0c 中,Shader Model 3.0 除了取消指令數限制和加入位移貼圖等新特性之外,更多的特性都是在解決游戲的執行效率和品質上下功夫,Shader Model 3.0 誕生之后,人們對待游戲的態度也開始從過去單純地追求速度,轉變到游戲畫質和運行速度兩者兼顧。因此 Shader Model 3.0 對游戲產業的影響可謂深遠。
DirectX 10.0
包含在 Windows Vista 操作系統中,無法單獨下載使用。
新的 DirectX 使你獲得更好的圖像顯示質量,使多人游戲具可伸縮性,以及包括更棒的音頻效果。它強化了針對 DirectDraw 和 Direct3D 的接口,簡化了應用擴展,提升性能;改善了圖形創作工具,更易于做出最佳的 3-D 角色和環境;點光源式光影和像素式光影使圖象更逼真;強化了 DirectSound 和 DirectMusic,簡化了其應用擴展;DLS2 音頻合成功能提高了樂器音頻的真實感;DirectInput 的設備影射功能令對設備的支持更簡單;DirectPlay 使多人游戲的性能和可擴展性得到了提高; DirectPlay 提供了 IP 聲音通訊;DirectShow 的應用編程接口提供了音頻/視頻的實時合成和即時編輯;DirectShow 支持 Windows 媒體音頻和視頻(WMA 和 WMV)的讀寫; Microsoft TV 技術可以支持數字電視節目。當然,最重要的是一些新游戲需要它。DirectX Redist 通常每兩個月更新一次,包含了 DirectX Runtimes 的所有更新,可以替代此前發布的舊版本,適合 Windows XP、Server 2003、Vista 等操作系統,不支持 Windows 9x/2000。一般最新的 3D 游戲等應用程序都需要新的 DirectX 接口,因此強烈推薦更新。
Vista DX10 用戶也同樣需要。
顯卡所支持的 DirectX 版本已成為評價顯卡性能的標準,從顯卡支持什么版本的 DirectX,用戶就可以分辨出顯卡的性能高低,從而選擇出適合于自己的顯卡產品。
DirectX 10.1
正如以前的 DX 版本一樣,DX10.1 也是 DX10 的超集,因此它將支持 DirectX 10 的所有功能,同時它將支持更多的功能,提供更高的性能。
DX10.1 的一個主要提高是改善的 shader 資源存取功能,在多樣本 AA 時,在讀取樣本時有更好的控制能力。除此之外,DX10.1 還將可以創建定制的下行采樣濾波器。
DX10.1 還將有更新的浮點混合功能,對于渲染目標更有針對性,對于渲染目標混合將有新的格式,渲染目標可以實現獨立的各自混合。陰影功能一直是游戲的重要特效,Direct3D 10.1 的陰影濾波功能也將有所提高,從而可望進一步提高畫質。
在性能方面,DirectX 10.1 將支持多核系統有更高的性能。而在渲染,反射和散射時,Direct3D 10.1 將減少對 API 的調用次數,從而將獲得不錯的性能提升。
其他方面,DX10.1 的提高也不少,包括 32bit 浮點濾波,可以提高渲染精確度,改善 HDR 渲染的畫質。完全的抗鋸齒應用程序控制也將是 DX10.1 的亮點,應用程序將可以控制多重采樣和超級采樣的使用,并選擇在特定場景出現的采樣模板。DX10.1 將至少需要單像素四采樣。
DX10.1 還將引入更新的驅動模型,WDDM 2.1。與 DX10 的 WDDM2.0 相比,2.1 有一些顯著的提高。
首先是更多的內容轉換功能,WDDM2.0 支持處理一個命令或三角形后進行內容轉換,而 WDDM2.1 則可以讓內容轉換即時進行。由于 GPU 同時要并行處理多個線程,因此內容轉換的即時性不僅可以保證轉換質量,還可以提升 GPU 效率,減少等待時間。另外,由于 WDDM 2.1 支持基于過程的虛擬內存分配,處理 GPU 和驅動頁面錯誤的方式也更為成熟。
微軟預計將在兩周之內(2008 年 7 月中旬)宣布新一代 API:DirectX 11。消息來源指出,微軟將在 7 月 22 日舉辦的 Gamefest 2008 上宣布新一代 API,此前我們得到有關 DirectX 11 的最新消息是 NVIDIA 將在八月末的“NVISION 08”會議上講解 DirectX 11。
由微軟舉辦的 Gamefest 2008 大會將于 7 月 22-23 日在西雅圖召開,Gamefest 2008 大會是微軟每年一度的游戲技術探討盛會,所以有關下一代游戲技術接口 API 的消息自然也是少不了的話題。
DirectX 11 引入最大新技術特征無疑是 Tessellation/Displacement,我們還聽說了多線程渲染、Compute Shaders 也將是 DirectX 11 中重要環節,另外據說 DirectX 11 還將引入 Shader Model 5.0,具體細節信息尚不明確,Ray Tracing(光線跟蹤)與 Rasterization(光柵化)技術的支持也還沒有提及。
DirectX 11
2009 年 1 月 9 日星期五,微軟將面向公眾發布 Windows 7 客戶端 Beta 1 測試版。而此前一天,即 1 月 8 日,微軟將率先發布 Windows 7 服務器版本的 Beta 1 測試版。
在微軟發布的 Windows 7Beta 版本中,一些已經安裝使用的用戶的發現了 DirectX 11 已經包含其中了。DirectX 11 作為 3D 圖形接口,不僅支持未來的 DX11 硬件,還向下兼容當前的 DirectX 10 和 10.1 硬件。DirectX 11 增加了新的計算 shader 技術,可以允許 GPU 從事更多的通用計算工作,而不僅僅是 3D 運算,這可以鼓勵開發人員更好地將 GPU 作為并行處理器使用。
在微軟發布的 Windows 7 Beta 版本中,已包含 DirectX 11
另外,DirectX 11 還支持 tessellation 鑲嵌化技術,這有助于開發人員創建更為細膩流暢的模型,實現高質量實時渲染和預渲染場景。多線程是 DirectX 11 的另外一大亮點,DX11 可以更好地利用多線程資源,從而使游戲更有效地利用多核處理器。
DirectX 11.1
微軟 2011 年 10 月 15 日公布了一份白皮書“Windows 開發者預覽版中的 Windows 驅動模型增強”,洋洋灑灑地深入介紹了 Windows 8 在圖形技術方面的改進。根據白皮書,Windows 8 將會支持新版顯示驅動模型WDDM1.2,高于 Windows 7 WDDM 1.1,但同時會放棄對服務器系統中 XDDM 的支持,全部轉向 WDDM。
DirectX 方面最關鍵的是當然引入 Direct3D 11.1,同時還會有平滑旋轉、立體 3D、D3D11 Video等功能技術。微軟稱,即使是低端硬件,只要能夠利用好 DirectX 的優勢,也能夠在 Windows 8 上來更好的性能。
DirectX 11.2
2013 年 6 月 28 日,微軟發布 Directx11.2(Alpha 版),其中一個重要特性是允許游戲使用系統內存和顯存儲存紋理數據,微軟的 Antoine Leblond 在 BUILD 大會上演示了主要利用內存而不是顯存去儲存 9GB 紋理數據。這項特性對于未來的高清游戲具有重要意義。然而一個問題是,DirectX 11.2 不支持 Windows 8 及之前操作系統,只支持 Windows 8.1 和下一代主機 Xbox One。
DirectX 12
2014 年 3 月 21 日,微軟正式發布了新一代的 API DirectX 12。雖然算不上全新設計,雖然細節公布得還不是特別多,但至少不是 Mantle 的直接翻版,還是有微軟與合作伙伴設計的不少新東西的。DX12 最重要的變化就是更底層 API,這一點很像 AMD Mantle,在硬件抽象層上走得比以往更深入,能夠同時減輕 CPU、GPU 的過載(overload)。具體包括:應用可追蹤 GPU 流水線、控制資源狀態轉換(比如從渲染目標到紋理)、控制資源重命名,更少的 API 和驅動跟蹤,可預判屬性,等等。
另外,DX12 大大提高了多線程效率,可以充分發揮多線程硬件的潛力。DX11 在這方面受 CPU 性能的嚴重制約,主要是因為不能有效利用多核心。微軟宣稱,微軟對多核心 CPU 的利用幾乎是完美線性增長的,也就是說四核心能接近單核心的四倍。
此外還有渲染流水線、渲染特性、資源管理、命令列表與綁定、描述符跳躍等等方面的改進,因為主要是關于開發的,也比較深晦,這里就先不說太多了。
NVIDIA 確認說,開普勒、費米、麥克斯韋架構全部都支持 DX12,也就是 GeForce 200 系列以來的型號都可以,DX11 的都行。
AMD 則確認,GCN 架構的所有顯卡均支持 DX12,也就是 Radeon HD 7000、Radeon R200 系列。
Intel 確認稱,第四代 Haswell 可以支持 DX12,但其實僅限最高端的兩個型號:GT3 Iris 5100、GT3e Iris Pro 5200。
有時候重裝系統后發現很多 3D 游戲都不能運行,只有一些傳統 2D 平面游戲還能勉強運行,而且速度很慢。這并不是因為 Windows 2003 不支持 3D 游戲,而是系統設置的問題。
解決方法:首先請確保以正確的方式安裝好顯卡驅動,然后就要打開 DirectX 加速。DirectX 加速是 3D 游戲最基本的需要,為了使 Windows 更為單一地面向服務器平臺應用,微軟默認將其加速功能關閉。即便是在安裝了最新的 DirectX 10.0 之后也不會自動打開加速功能,而必須手動設置。在“開始”→“運行”對話框中輸入“dxdiag”以打開 DirectX 診斷工具。隨后在顯示一欄中將 DirectDraw、Direct3D、AGP 紋理加速功能啟用。如此一來,Windows Server 2003 便能運行各種 3D 游戲。除此以外,Windows Server 2003 還默認關閉了硬件加速,可以在顯示屬性的高級菜單中將其設置為完全加速。
DirectX 11.1
DirectX 11 之后是下一代的 DirectX 12 還是改進版的 DirectX 11.1 呢?英特爾的一份產品路線路泄露了天機,緊隨 DirectX 11 就是 DirectX 11.1。
據國外媒體 SoftPedia 曝光的英特爾產品路線圖顯示,Sandy Bridge 整合的是英特爾第 6 代圖形核心,支持 DirectX 10.1 和 OpenGL 3.0;到了 Ivy Bridge 則進化至第 7 代,可支持 DirectX 11 和 OpenGL 3.1;到了 2013 年,同為 22nm 但架構再度進化的 Haswell 處理器誕生,其將整合增強版的第 7 代英特爾圖形核心,可支持 OpenGL 3.2 和 DirectX 11.1,而推薦使用的操作系統則是 64 位的 Windows 8。
Haswell 將會采用 Tri-Gate 22nm 制造工藝技術,并且采用可調節的 TDP 技術,以在性能和節能方面,獲得更好平衡。同時 Haswell 還將會采用新的 AVX2 指令集,尚不知道具體發布時間,不過從已了解藍圖來看,服務器 Haswell 產品將會在 2014 年 Q1 發布。
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
網絡推廣與網站優化公司(網絡優化與推廣專家)作為數字營銷領域的核心服務提供方,其價值在于通過技術手段與策略規劃幫助企業提升線上曝光度、用戶轉化率及品牌影響力。這...
在當今數字化時代,公司網站已成為企業展示形象、傳遞信息和開展業務的重要平臺。然而,對于許多公司來說,網站建設的價格是一個關鍵考量因素。本文將圍繞“公司網站建設價...
在當今的數字化時代,企業網站已成為企業展示形象、吸引客戶和開展業務的重要平臺。然而,對于許多中小企業來說,高昂的網站建設費用可能會成為其發展的瓶頸。幸運的是,隨...
七號線禮拜六停運時間北京?北京地鐵7號線周六不會停運。北京地鐵7號線東西走向,西起豐臺區和北京西站,途經西城區廣安門、東城區廣渠門、朝陽區歡樂谷景區等地,東至通州環球度假區站。地鐵7號線全長40.3公里,地下敷設,設30座車站,8列編組B型列車。北京地鐵周末人多嗎,會不會坐不了?因為周末是周末,北京坐地鐵的人不多,但是途經旅游景點的線路站點人比較多。不過因為天氣冷,現在周末人不多!地鐵路線圖請問北...
根據描述上下左右鍵跳舞的游戲? ;游戲的上下左右鍵是超級舞者在線,這是世界 歷時三年獨立開發的首款在線跳舞機游戲。游戲模仿KONAMI s Dance DacneRevolution,和它不同的是它有鍵盤和舞毯兩大模式,還有很多小模式。2005年,發布單機版《超級舞者》,2006年,正式將單機版制作成網絡版。這款游戲的主題是全3D虛擬角色的舞蹈模擬。超級舞者的跳舞毯怎么玩DDR單機游戲?先連接...
北京國家會議中心在什么地方?公交路線:地鐵4號線大興線地鐵2號線地鐵8號線,全程約23.4公里。1.從公益西橋乘坐地鐵4號線大興線,經過6站到達宣武門站。2.乘坐地鐵2號線,經過7站,到達鼓樓街站。3.乘坐地鐵8號線,經過4站,到達奧林匹克公園站(E出口)。4.步行約440米至國家會議中心。北京國家會議中心在什么地方?我想參加CP05伴侶節…但是不知道國家會議中心在哪里?地鐵可以直達嗎?我住的地方...