欧美日韩国产一区二区|qovd片|小明个人发布看看|小浪货你夹真紧水又多|老头把我添高潮了A片故|99热久久精品国产一区二区|久久久春色AV

什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?

大家好 , 歡迎來到霍夫日記 , 我是霍夫 。 今天我來說說什么是directx?什么是OpenGL?為什么玩單機(jī)游戲的時候 , 經(jīng)常彈窗提示缺少這些程序組件無法運(yùn)行游戲呢?
某天 , 你剛下好的三A大作正版游戲終于下載完畢了 , 心里想著可以開玩了 , 趕緊點擊EXE程序運(yùn)行 。
于是出現(xiàn)以下畫面
什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?
文章圖片
什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?
文章圖片
怎么打不開不了啊?計算機(jī)中提示缺少d3directx9.dll是怎么回事?
我們玩游戲天天都得接觸directx和OpenGL , 沒有這些程序游戲就玩不了了 。 可是你有沒有想過它們究竟是干嘛用的呢?這個OpenGL又是什么鬼呢?
什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?
文章圖片
什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?
文章圖片
在很早很早以前 , 軟件開發(fā)缺乏標(biāo)準(zhǔn)編程 , 可以說是一對一的 。 我這串代碼就對應(yīng)著一種硬件一種系統(tǒng) , 這樣一來呢 , 開發(fā)的過程就極其的繁瑣 , 畢竟你這軟件可是一對一高端定制 , 你想讓全世界的設(shè)備都用上你的軟件 , 那對不起 , 你得一個個去找軟硬件廠商 , 一個個去做適配吧 。
什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?
文章圖片
那這個時候我們就需要一個中間層 , 在不同的軟件 , 不同的硬件之間進(jìn)行溝通 , 這就是api應(yīng)用編程接口 。
什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?
文章圖片
api就相當(dāng)于是一系列函數(shù)的集合,程序可以直接通過這些函數(shù)進(jìn)行構(gòu)建 , 不需要訪問更底層的東西 。 這樣一來 , 軟件開發(fā)的門檻就降低了 。
api的意義在于簡化編程的操作 。
打個比方 , 你現(xiàn)在想和法國人交流 , 如果沒有翻譯的話 , 你就只能自學(xué)法語 。 可這也太麻煩了吧 , 我就想搭個話 , 喝兩口法國紅酒 , 我還得再學(xué)一門外語才行嗎?
當(dāng)然不必這么麻煩 , 你找個翻譯不就行了吧 。 這api就是你的翻譯 , 盡管翻譯會造成延遲 , 會降低一點交流的效率 , 你得額外花點時間等翻譯說完 , 但至少你可以聽懂法國佬說話了 , 可以正常交流正常喝酒了 , 這才是最重要的 。
說到這里你也應(yīng)該猜到了 , 我們親愛的directx和OpenGL正是api 。
什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?
文章圖片
確切的說呢 , OpenGL是一種圖形api , 而directx則是許多各種各樣api的集合體 。 其中當(dāng)然也包括圖形api--direct3D 。
什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?
文章圖片
圖形api , 猜猜這個名字都知道這是為圖形計算設(shè)計的 , 那么玩游戲說的最多也是圖形api , 這里我們用direct3D來舉例子 , 在游戲中它的作用差不多是這個樣子 。
什么是OpenGL?什么是direct x?單機(jī)游戲運(yùn)行為什么與它們有關(guān)?
文章圖片
承上啟下嘛 , 它就相當(dāng)于是游戲引擎和顯卡驅(qū)動、系統(tǒng)層之間的橋梁 , 是同時精通上層下層各種語言的翻譯官 。
OpenGL其實也是類似的一個工作流程 , 但是它相比direct3D更加開放一些 。 因為OpenGL是由非盈利性的行業(yè)聯(lián)盟khronosgroup牽頭的 , 它是跨平臺的 , 對于系統(tǒng)沒有限制 , 你不僅可以在windows上用 , 也可以在macos、linux上使用 , 甚至還可以在安卓和ios上使用它們的閹割版本OpenGLes 。
相比之下呢 , direct3D就只允許在微軟自家的windows和xbox上使用了 。 此外 , OpenGL的學(xué)習(xí)門檻也更低 , 開發(fā)人員更容易上手 。 但是它的缺點就是效率往往不如direct3D , 新特性的更新往往也比較慢一些 。 說白了就是不如direct3D先進(jìn)吧 。 但這兩種圖形api地位是一樣重要的 。

相關(guān)經(jīng)驗推薦