DirectX是一種應(yīng)用程序接口,它可讓以windows為平臺的游戲或多媒體程序獲得更高的執(zhí)行效率,加強3d圖形和聲音效果,并提供設(shè)計人員一個共同的硬件驅(qū)動標(biāo)準(zhǔn),
讓游戲開發(fā)者不必為每一品牌的硬件來寫不同的驅(qū)動程序,也降低用戶安裝及設(shè)置硬件的復(fù)雜度。這樣說是不是有點不太明白,其實從字面意義上說,Direct就是直接
的意思,而后邊的X則代表了很多的意思,從這一點上我們就可以看出 DirectX的出現(xiàn)就是為了為眾多軟件提供直接服務(wù)的。
DirectX是由很多API組成的,按照性質(zhì)分類,可以分為四大部分,顯示部分、聲音部分、輸入部分和網(wǎng)絡(luò)部分。
顯示部分擔(dān)任圖形處理的關(guān)鍵,分為Direct Draw(DDraw)和Direct 3D(D3D),前者主要負(fù)責(zé)2D圖像加速。它包括很多方面:我們播放mpg、DVD電影、看圖、玩小游戲等等都是用的DDraw,你可以把它理解成所有劃線的部分都是用的DDraw。后者則主要負(fù)責(zé)3D效果的顯示,比如CS中的場景和人物、FIFA中的人物等等,都是使用了DirectX的Direct 3D。
聲音部分中最主要的API是DirectSound,除了播放聲音和處理混音之外,還加強了3d音效,并提供了錄音功能。我們前面所舉的聲卡兼容的例子,就是利用了DirectSound來解決的。
輸入部分Direct Input可以支持很多的游戲輸入設(shè)備,它能夠讓這些設(shè)備充分發(fā)揮最佳狀態(tài)和全部功能。除了鍵盤和鼠標(biāo)之外還可以連接手柄、搖桿、模擬器等。
網(wǎng)絡(luò)部分DirectPlay主要就是為了具有網(wǎng)絡(luò)功能游戲而開發(fā)的,提供了多種連接方式,TPC/IP,IPX,Modem,串口等等,讓玩家可以用各種連網(wǎng)方式來進行對戰(zhàn),此外也提供網(wǎng)絡(luò)對話功能及保密措施。
DirectX并不是一個單純的圖形API,它是由微軟公司開發(fā)的用途廣泛的API,它包含有Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects等多個組件,它提供了一整套的多媒體接口方案。只是其在3D圖形方面的優(yōu)秀表現(xiàn),讓它的其它方面顯得暗淡無光。DirectX開發(fā)之初是為了彌補Windows 3.1系統(tǒng)對圖形、聲音處理能力的不足,而今已發(fā)展成為對整個多媒體系統(tǒng)的各個方面都有決定性影響的接口。 DirectX 是一組低級“應(yīng)用程序編程接口 (API)”,可為 Windows 程序提供高性能的硬件加速多媒體支持。Windows 支持 DirectX 8.0,它能增強計算機的多媒體功能。使用 DirectX 可訪問顯卡與聲卡的功能,從而使程序可提供逼真的三維 (3D) 圖形與令人如醉如癡的音樂與聲音效果。 DirectX 使程序能夠輕松確定計算機的硬件性能,然后設(shè)置與之匹配的程序參數(shù)。該程序使得多媒體軟件程序能夠在基于 Windows 的具有 DirectX 兼容硬件與驅(qū)動程序的計算機上運行,同時可確保多媒體程序能夠充分利用高性能硬件。 DirectX 包含一組 API,通過它能訪問高性能硬件的高級功能,如三維圖形加速芯片和聲卡。這些 API 控制低級功能(其中包括二維 (2D) 圖形加速)、支持輸入設(shè)備(如游戲桿、鍵盤和鼠標(biāo))并控制著混音及聲音輸出。構(gòu)成 DirectX 的下列組件支持低級功能: Microsoft DirectDraw Microsoft DirectDraw API 支持快速訪問計算機視頻適配器的加速硬件功能。它支持在所有視頻適配器上顯示圖形的標(biāo)準(zhǔn)方法,并且使用加速驅(qū)動程序時可以更快更直接地訪問。DirectDraw 為程序(如游戲和二維圖形程序包)以及 Windows 系統(tǒng)組件(如數(shù)字視頻編解碼器)提供了一種獨立于設(shè)備之外的方法來訪問特定顯示設(shè)備的功能,而不要求用戶提供設(shè)備功能的其它信息。
Microsoft Direct3D Microsoft Direct3D API (Direct3D) :為大多數(shù)新視頻適配器內(nèi)置的 3-D 調(diào)色功能提供界面。Direct3D 是一種低級的 3-D API,它為軟件程序提供一種獨立于設(shè)備之外的方法以便與加速器硬件進行有效而強大的通信。Direct3D 包含專用 CPU 指令集支持,從而可為新型計算機提供進一步加速支持。
Microsoft DirectSound Microsoft DirectSound API :為程序和音頻適配器的混音、聲音播放和聲音捕獲功能之間提供了鏈接。DirectSound 為多媒體軟件程序提供低延遲混合、硬件加速以及直接訪問聲音設(shè)備等功能。維護與現(xiàn)有設(shè)備驅(qū)動程序的兼容性時提供該功能。
Microsoft DirectMusic Microsoft DirectMusic API :是 DirectX 的交互式音頻組件。與捕獲和播放數(shù)字聲音樣本的 DirectSound API 不同,DirectMusic 處理數(shù)字音頻以及基于消息的音樂數(shù)據(jù),這些數(shù)據(jù)是通過聲卡或其內(nèi)置的軟件合成器轉(zhuǎn)換成數(shù)字音頻的。DirectMusic API 支持以“樂器數(shù)字界面 (MIDI)”格式進行輸入,也支持壓縮與未壓縮的數(shù)字音頻格式。DirectMusic 為軟件開發(fā)人員提供了創(chuàng)建令人陶醉的動態(tài)音軌的能力,以響應(yīng)軟件環(huán)境中的各種更改,而不只是用戶直接輸入更改。
Microsoft DirectInput Microsoft DirectInput API :為游戲提供高級輸入功能并能處理游戲桿以及包括鼠標(biāo)、鍵盤和強力反饋游戲控制器在內(nèi)的其它相關(guān)設(shè)備的輸入。
Microsoft DirectPlay Microsoft DirectPlay API: 支持通過調(diào)制解調(diào)器、Internet 或局域網(wǎng)連接游戲。DirectPlay 簡化了對通信服務(wù)的訪問,并提供了一種能夠使游戲彼此通信的方法而不受協(xié)議或聯(lián)機服務(wù)的限制。DirectPlay 提供了多種游說服務(wù),可簡化多媒體播放器游戲的初始化,同時還支持可靠的通信協(xié)議以確保重要游戲數(shù)據(jù)在網(wǎng)絡(luò)上不會丟失。DirectPlay 8.0 的新功能即支持通過網(wǎng)絡(luò)進行語音通信,從而可大大提高基于多媒體播放器小組的游戲的娛樂性,同時該組件還通過提供與玩游戲的其他人對話的功能而使團體游戲更具魅力。
Microsoft DirectShow Microsoft DirectShow API: 提供了可在您的計算機與 Internet 服務(wù)器上進行高品質(zhì)捕獲與回放多媒體文件的功能。DirectShow 支持各種音頻與視頻格式,包括“高級流式格式 (ASF)”、“音頻-視頻交錯 (AVI)”、“數(shù)字視頻 (DV)”、“動畫專家組 (MPEG)”、“MPEG 音頻層 3 (MP3)”、 “Windows 媒體音頻/視頻 (WMA/WMV)”以及 WAV 文件。DirectShow 還具有視頻捕獲、DVD 回放、視頻編輯與混合、硬件加速視頻解碼以及調(diào)諧廣播模擬與數(shù)字電視信號等功能。
---------------------------------------------------------
專注移動開發(fā)
Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
posted on 2010-03-27 15:15
TiGERTiAN 閱讀(368)
評論(0) 編輯 收藏 所屬分類:
Other technique