※ 引述《lovesnake (LoyalDog)》之銘言:
: 1. 為什麼DX還活著?
: 現今無論Web、Mobile、Linux、Mac OSX,都採用OpenGL作為其Graphics API,
: 為什麼DX還能頑抗至今呢? 純粹是因為Windows不想放棄他嗎?
你這個理解不對
OpenGL != OpenGLES
其中的每個版本在不同平台上不一定能執行
把OpenGL寫的程式轉成OpenGLES跟整個改寫沒兩樣了
DirectX 11 技術就是領先OpenGL好幾個時代
所以2010june就最後一版了,聽說最近要出DX12了
你沒看到nvdia一直幫dx寫demo跟sdk opengl只寫到第九版
因為opengl標準沒辨法發揮nv卡全部實力
連unreal都是先在dx11上完整實作出所有的功能才慢慢porting到其它平台
同樣的sm5 一定有他的優勢 讓大家只用dx 不用opengl
: 2. 是API遷就顯卡還是顯卡遷就API?
: API是在設計的時候,考慮現今的顯卡架構去設計。
: 還是顯卡在設計的時候,考慮現有的API在做設計呢?
都沒有遷就啦 定API的公司通常先訂個標準
啊你顯卡太強就會有一堆自定義函數
啊微軟定api太強了 有跟上技術演進
所以顯卡廠商就沒什麼自定義函數
啊你也不要想那麼多 那是底層在做的
dx跟顯卡的溝通跟opengl與顯卡的溝通沒什麼兩樣
只是他包裝成api給你呼叫
當然微軟推這個標準時一定有跟顯卡廠商打招呼
溝通一下硬體函數功能
你寫過嵌入式 玩過小顯卡就知道了
啊不過這不重要啦
啊opengl函數就是不夠用啊 官方的不夠用 所以才有一堆第三方函式庫
跟一堆顯卡自定義函數
就我所知 就有 wgl opengl3 一些專門列舉你的顯卡有哪些廠商自定函數可以用的
編譯器內建的只有到 opengl2 一堆新招都不能用
opengl 官網有放新版的library出來嗎? 沒有嘛
啊裡面的函數是每張顯卡都有實作嗎 當然沒有
那我的遊戲在用了這個函數在那台電腦上沒有怎麼辨
1. 不能跑 2.軟解
啊 dx 都沒有這種問題
還有啊 opengl每次出新版的sample都沒寫好
你只有函數宣告丟出來 你要寫程式的怎麼辨
啊微軟不一樣啊 他每個函數都有做sample 放code出來
你opengl都沒有啊
官網也只有標頭檔 編譯器看完了 連結器說沒這回事啊?
然後現在也很少有人直接使用opengl 跟 dx寫了
除非有特殊需求或教學使用 opengl
: 3. Geometry V.S. Tessellation
: Geometry Shader 是只管一個Primitive ,Tessellation有考慮鄰居。
: 這樣的理解對嗎?
: 4. NVidia & ATI 哪個對OpenGL的Support較好?
: 謝謝~
沒研究不清楚
現在直接用dx或opengl的很少了
沒寫render engine的話 別研究了
我感覺你也沒在寫啊
那個市佔率的原因原文推文有寫就不多說了
只想說 你有看過網咖裝linux或mac的嗎
有錯的話請大家指教~