提起圖形處理和顯卡相關的內容,尤其是玩電腦游戲的時候(通常是安裝時)很多人是不是很容易就想起了一個熟悉的名詞叫做Direct X,通常什么Direct 9.0c之類的東西都是打游戲必備的。那么大家知道Direct X是什么嗎?另外你知道一個類似名詞OpenGL是什么嗎?
本文將對他們進行簡要的介紹和對比,希望對大家了解和顯卡密切相關的Direct X和OpenGL。
Direct X是什么?
Direct X是Direct eXtension的簡寫,可以進一步簡寫成DX。為微軟公司開發的多媒體編程接口,目前只支持Windows平臺,雖然Linux等平臺依靠wine等程序也能實現DirectX但是性能相當可憐。
Direct X發展到現在已經有11代產品了,目前最常用的有兩個Direct X 11.1和Direct 9.0c。前者是Windows7/8的標準配置,后者是WindowsXP的標準。對于很多新游戲而言都以Direct X 11為接口。Direct X有很多API接口, 可以分為以下幾個部分:
Direct Draw和Driect 3D為主的顯示部分。其中Direct Draw是負責平面顯示的,而Direct 3D是負責3D運算的。通常而言大型3D游戲運用的就是Direct 3D部分(當然,如果采用Direct X作渲染的話)。
以DirectSound為主的聲音部分
以DirectInput為主的輸入設備,鍵盤鼠標遙感等游戲控制設備的輸入就在這里完成
以DirectPlay為主的網絡波分,方便網絡游戲等操作……
Direct X借助Windows的順風車已經占領了相當大的 市場,但是僅僅支持Windows系統這個弊端就促使其他操作系統進行自己的多媒體編程計劃,目前最強大的就是OpenGL。
OpenGL是什么?
OpenGL是由開源社區提供的免費開源的多媒體編程接口,全稱是Open Graphics Library。OpenGL功能非常強大,但是使用起來也是相當的復雜, 開源社區為任何操作系統提供OpenGL支持,所以適用范圍也是相當的廣。很多游戲開發采用OpenGL作為渲染方式,這樣可以方便的向Linux和OS X等平臺移植。
而且另一個超級編程語言java也已經完成了和OpenGL的整合,意味著使用java 3D編寫的3D程序等可以實現OpenGL整合。當然是用java 3D也可以調用Direct X來進行加速。
在非Windows平臺下,目前僅能使用OpenGL進行加速,而在Windows平臺下視頻功能可以由DirectX或者OpenGL完成。由于開發商的選擇不同,通常的硬件都是支持者兩種加速方式的。客觀的來說在超高端硬件上對OpenGL的支持更好。
在Windows平臺下,常規硬件(非服務器級別的)下,Direct X對3D的渲染性能要比OpenGL略微好點,尤其是在Windows7/8上。但是在Linux平臺下OpenGL的渲染要比在Windows下對OpenGL的渲染強。
總的來說,Windows下Direct X性能比較好,不過Open GL也不差。但是同樣是OpenGL在Linux,OS X下比Windows下渲染效果要好。
新聞熱點
疑難解答