DirectX、Direct3D和OpenGL的區別

來源:互聯網
上載者:User

DirectX,(Direct eXtension,簡稱DX)是由微軟公司建立的多媒體編程介面。由C++程式設計語言實現,遵循COM。

 

 

DirectX是由很多API組成的,按照性質分類,可以分為四大部分,顯示部分、聲音部分、輸入部分和網路部分。

顯示部分

  顯示部分擔任圖形處理的關鍵,分為DirectDraw(DDraw)和Direct3D(D3D),前者主要負責2D映像加速。它包括很多方面:我們播放mpg、DVD電影、看圖、玩小遊戲等等都是用的DDraw,你可以把它理解成所有劃線的部分都是用的DDraw。後者則主要負責3D效果的顯示,比如CS中的情境和人物、FIFA中的人物等等,都是使用了DirectX的Direct3D。

聲音部分

  聲音部分中最主要的API是DirectSound,除了播放聲音和處理混音之外,還加強了3d音效,並提供了錄音功能。我們前面所舉的音效卡相容的例子,就是利用了DirectSound來解決的。

輸入部分

  輸入部分DirectInput可以支援很多的遊戲輸入裝置,它能夠讓這些裝置充分發揮最佳狀態和全部功能。除了鍵盤和滑鼠之外還可以串連手柄、搖杆、模擬器等。

網路部分

  網路部分DirectPlay主要就是為了具有網路功能遊戲而開發的,提供了多種串連方式,TCP/IP,IPX,Modem,串口等等,讓玩家可以用各種連網方式來進行對戰,此外也提供網路對話功能及保密措施。

 

OpenGL(全寫Open Graphics Library)是個定義了一個跨程式設計語言、跨平台的編程介面的規格,它用於三維圖象(二維的亦可)。OpenGL是個專業的圖形程式介面,是一個功能強大,調用方便的底層圖形庫。

 

Open GL仍然是唯一能夠取代微軟對3D圖形技術的完全控制的API。它仍然具有一定的生命力,但是Silicon Graphics已經不再以任何讓微軟不悅的方式推廣Open GL,因而它存在較高的風險。遊戲開發人員是一個有著獨立思想的群體,很多重要的開發人員目前仍然在使用Open GL。因此,硬體開發商正在設法加強對它的支援。Direct3D目前還不能支援高端的圖形裝置和專業應用; Open GL在這些領域佔據著統治地位。最後,開放源碼社區(尤其是Mesa項目)一直致力於為任何類型的電腦(無論它們是否使用微軟的作業系統)提供Open
GL支援。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.