2012-07-07 48 views
1

如果這個主題是重複的,我很抱歉,但我找不到我在任何地方詢問的信息。在OS X中開始OpenGL 3.0+編程(再次),針對多個平臺

我已經開始學習OpenGL,並且我甚至在iOS上使用OpenGL ES 1.1製作了一款非常簡單的遊戲。不過,我已經放棄了它,轉而贊成其他項目。我檢出的最後一個版本是2.1,坦率地說,我只是在沒有給予太多注意的情況下對它進行了檢查,然後放棄了我的全職iOS工作。

現在,我想再次拿起它。然而,我已經涵蓋了OpenGL 2.5(紅皮書),OpenGL ES 2.0(我沒有機會打開它)和OpenGL Shading語言(我不記得哪一個,但我同時購買它我買了紅皮書)。我已經讀過OpenGL3.0及以上版本大幅改變渲染管線,使其完全可編程,這就是爲什麼它放棄了舊功能的支持,也擺脫了過時和膨脹的功能。

我有兩臺電腦,OS X 10.7.4,帶有GeForce 9400M的Macbook和帶有ATI Radeon HD 6750 Mobility的iMac,我相信這兩款電腦都符合OpenGL 3.0(至少具備大多數功能)。

給予所有這些信息,這裏是我的主要問題:

  1. 是否有在OpenGL 3.0+任何好的啓動教程?
  2. 在OpenGL 3.0 + OS X中有沒有很好的啓動教程?所有我能找到的都是過時的固定管道教程
  3. 由於OpenGL流水線的變化,我已經幫助過我的書還是需要購買最新版本的書?
  4. 有什麼我誤解了或者我錯過了嗎?

我的目標主要是OS X,iOS和Android,因此我對平臺特定的資源和信息不感興趣。我明白,每個平臺都有自己的OpenGL API實現和擴展,但我希望儘可能保持與平臺無關。我沒有在我的問題中指定任何語言,因爲我精通C/C++/ObjC,Android OpenGL Java實現與我所聽到的沒有什麼不同。

時間不是問題,也不是我的數學/編程技巧。在我學習OpenGL的基礎知識之前,在學習圍繞它的抽象概念和框架之前,我也不想首先學習如何在OpenGL中使用任何包裝器/框架。

預先感謝您提供有關此事的所有信息和指示。

+0

只是一個小問題,如果你也轉向Android,你應該看看OpenGL ES 2.0,因爲它還不支持3.0。我會做一個完整的文章,但我不認爲我有你想要的所有信息。 – WindyB 2012-07-07 17:52:42

+0

現在,OpenGL標準已達到4.x。所有你詢問的信息都可以在opengl.org上找到。 iOS和Android使用OpenGL ES,這是與OpenGL完全不同的移動或嵌入式設備標準。除了可編程管道之外,您對OpenGL 3.x的瞭解都無法幫助您實現iOS或Android,但細節不同。 – 2012-07-07 17:55:52

回答

1

回答問題3:

約OpenGL ES 2.0的一個很好的書是通過OpenGL ES 2.0 Programming Guide孟什Aaftab。由於OpenGL ES 2.0大致上是OpenGL 3.0+的一個子集,因此本書對OpenGL 3.0+開發人員也很有用。

關於OpenGL 3.0+沒有真正的好書。目前可用的OpenGL紅皮書版本主要關注舊式的OpenGL編程,不建議使用。 2013年1月發佈的OpenGL紅皮書將有new edition,含有85%的新材料,並專注於現代OpenGL編程。在此之前,請等待紅皮書。

+0

+1提及OpenGL紅皮書的編程風格的棄用。謝謝。如果沒有人做出更充分的迴應,我會將其標記爲公認的答案。順便說一句,對我的問題的評論提到,OpenGL 3.0與OpenGL ES 2.0大部分無關。但是,你提到它們是相關的。你能提供一些資料或例子嗎?我最感興趣的是學習桌面OpenGL 3.0+是否也能爲我提供可用於移動開發的知識。 – csotiriou 2012-07-07 20:13:30