opengl与Directx的区别
From:?http://blog.163.com/xtdx888888@126/blog/static/2955727520083661133565/
OpenGL?只是圖形函數(shù)庫(kù)。
DirectX?包含圖形,?聲音,?輸入,?網(wǎng)絡(luò)等模塊。?
單就圖形而論,?DirectX?的圖形庫(kù)性能不如?OpenGL
OpenGL穩(wěn)定,可跨平臺(tái)使用。但?OpenGL?多需要顯卡支持.
----------------------------------------------------------------------------------------------
做windows平臺(tái)上的游戲,當(dāng)然是DX,想跨平臺(tái),想做科學(xué)計(jì)算程序,想做CAD,
想做分布計(jì)算,想做工業(yè)級(jí)應(yīng)用,最好用OpenGL。?
當(dāng)然你要是對(duì)COM不感冒,或是想活得輕松一點(diǎn),還是OpenGL吧。?
其實(shí)DX之所以是游戲首選平臺(tái)是因?yàn)樗俣瓤?#xff0c;在過(guò)去支持OpenGL加速的家用卡
或游戲卡很少,而軟件計(jì)算很慢。但從TNT2/Voodoo3開(kāi)始,OpenGL已經(jīng)是非常理
想的游戲平臺(tái)了,而在geforce256,savarage2000+為代表的四代卡上OpenGL已經(jīng)
是極為理想的游戲平臺(tái)了:夠快,夠眩!另一方面到DX7這套東西質(zhì)量已經(jīng)相當(dāng)不
錯(cuò)了,與OpenGL差距已經(jīng)很小了,而且是M$的東西……就看你怎么想了,如果想
學(xué)得快,用得爽,調(diào)試方便,就選OpenGL,如果已經(jīng)適應(yīng)COM體系的思想那當(dāng)然是
DX自然。?
個(gè)人建議你學(xué)OpenGL,從此入手容易形成正確明確的概念,以后即使工作需要要
轉(zhuǎn)向DX也很容易。重要的是如今的OpenGL的中文資料多起來(lái)了,雖然重復(fù)的居多
,但還是有幾本很不錯(cuò)的,而英文資料則不計(jì)其數(shù)。?
還有一點(diǎn),你用什么語(yǔ)言?如果是C則無(wú)所謂,如果是VB那還是DX吧,雖然也可以
做OpenGL,但不如DX自然和資料豐富(dx7sdk里有例子的vb版本)。?
----------------------------------------------------------------------------------------------
1995年至1996年,微軟實(shí)行了一項(xiàng)新計(jì)劃,以支持在Windows95上運(yùn)行游戲,目標(biāo)是把市場(chǎng)擴(kuò)展到被任天堂和世嘉控制的游戲領(lǐng)域。然而,微軟不想用已經(jīng)在NT上提供的OpenGL技術(shù)。微軟收購(gòu)了Rendermorphics,Ltd.并得到他的被稱作RealityLab的3D?API。經(jīng)重新整理,微軟發(fā)布了新的3D?API——Direct3D。
????微軟,推行Direct3D,凍結(jié)OpenGL!
????微軟當(dāng)時(shí)拒絕了在Window95上支持OpenGL。不止如此,微軟采取異常手段收回對(duì)OpenGL的MCD驅(qū)動(dòng)接口的支持,以致硬件廠商不得不放棄已經(jīng)進(jìn)入最后測(cè)試的OpenGL驅(qū)動(dòng)。微軟的市場(chǎng)部門(mén)開(kāi)始向游戲開(kāi)發(fā)商、硬件廠商、新聞出版機(jī)構(gòu)推銷Direct3D,同時(shí)排斥OpenGL。
??????API之戰(zhàn)!
??????Silicon?Graphics和很多OpenGL用戶都依賴OpenGL創(chuàng)新且高性能的技術(shù)。但很明顯微軟打算用Direct3D代替OpenGL,盡管D3D有很多問(wèn)題而且不能像OpenGL那樣被硬件廠商擴(kuò)展。Silicon?Graphics決定在1996?SIGGRAPH會(huì)議上作一項(xiàng)演示。演示證明OpenGL至少和D3D一樣快,從而駁倒微軟的市場(chǎng)論調(diào)。因?yàn)镺penGL是業(yè)界公認(rèn)標(biāo)準(zhǔn),比D3D功能豐富,而且圖像質(zhì)量要高一些,所以演示在計(jì)算機(jī)圖形和游戲開(kāi)發(fā)社區(qū)導(dǎo)致了激烈論戰(zhàn)。
????游戲開(kāi)發(fā)者要求OpenGL和D3D站在同等地位!
????當(dāng)技術(shù)和市場(chǎng)問(wèn)題暴露,強(qiáng)烈的支持OpenGL行動(dòng)開(kāi)始了。Doom的開(kāi)發(fā)者John?Carmack聲明拒絕D3D,Chris?Hecker在游戲開(kāi)發(fā)雜志上發(fā)表了兩套API的全面分析,移微軟應(yīng)放棄D3D為結(jié)論。游戲開(kāi)發(fā)者先后兩次向微軟遞交請(qǐng)?jiān)笗?shū)。第一次由56名首席游戲開(kāi)發(fā)者要求微軟發(fā)行OpenGL?MCD驅(qū)動(dòng),但未成功,因?yàn)闀?huì)讓OpenGL與D3D競(jìng)爭(zhēng)。第二次的公開(kāi)信由254人簽名開(kāi)始,截止時(shí)達(dá)到1400人。微軟的回答仍是重申舊市場(chǎng)立場(chǎng)。盡管請(qǐng)?jiān)刚咔宄囊髢商譇PI同等競(jìng)爭(zhēng)以促進(jìn)發(fā)展,微軟卻以增加D3D的投資、更加減少OpenGL的投資為回應(yīng)。
??????Fahrenheit——D3D與OpenGL的合并?
??????Silicon?Graphics,Microsoft,?HP,Intel達(dá)成協(xié)議聯(lián)合開(kāi)發(fā)下一代3D?API——Fahrenheit。但不了了之,因?yàn)槲④浀拇蛩闶前袿penGL的技術(shù)用到D3D里并且以此之名驅(qū)除OpenGL的威脅。(估計(jì)DirectX?8?Graphics即是剩下微軟獨(dú)自開(kāi)發(fā)的Fahrenheit,吸收了OpenGL的很多東西。)
??????OpenGL豪氣不減當(dāng)年!
??????OpenGL依然是唯一能與微軟單獨(dú)控制的D3D對(duì)立的API,盡管Silicon?Graphics不再以任何微軟不能接受的方式推行OpenGL。游戲開(kāi)發(fā)這是獨(dú)立的,并且很多關(guān)鍵人物在用OpenGL,因此,硬件廠商正努力提高對(duì)其支持。D3D仍不能支持高端圖像和專業(yè)應(yīng)用,而OpenGL主宰著這些土地。在開(kāi)放原碼社區(qū),Mesa項(xiàng)目正提供獨(dú)立于微軟的OpenGL驅(qū)動(dòng)。
譯者注:表面上好像D3D比OpenGL支持更多的功能,其實(shí)由于D3D不支持硬件擴(kuò)展,如硬件全景陰影,硬件渲染順序無(wú)關(guān)半透明材質(zhì)等新技術(shù)根本無(wú)法使用,而D3D(特指D3D8)本身提供的功能只有一小部分能在使用HAL且硬件不支持時(shí)模擬,你要用大量代碼分析硬件能力和采取不同策略
總結(jié)
以上是生活随笔為你收集整理的opengl与Directx的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 0.重装系统
- 下一篇: 使用IDEA 提交代码到svn