2012-03-04 87 views
0

我開始在iOS上學習OpenGL ES。Open GL ES 1和iOS 5參考

你知道嗎,談了一些很好的參考有關Open GL ES 1(而不是2!)和iOS 5(因爲蘋果確實在iOS 5了很多工作的OpenGL)

THX

+7

爲什麼學習過時的OpenGL ES版本已過時並可能從iOS中刪除? – DarkDust 2012-03-04 21:48:28

+0

首先看起來更容易。 (我聽說着色器更難使用) – 2012-03-04 22:30:05

+1

Apple的GLKit旨在使ES 2與ES 1一樣簡單。也不再有兼容性參數 - 所有可以運行iOS 5的應用程序都支持ES 2。 – Tommy 2012-03-05 00:29:09

回答

3

首先,您不需要查找特定於iOS 5.0的引用。蘋果公司並沒有改變5.0中的基本OpenGL ES API。您可以在OpenGL ES 1.1上找到的所有參考仍然適用於iOS 5.0。

在基本級別,他們添加了一些擴展,使用iPad 2和iPhone 4S的新硬件功能,如EXT_color_buffer_half_floatEXT_occlusion_query_boolean,以及用於Xcode中新OpenGL ES調試器的標記。這些不是初學者的概念,但這些都在Apple OpenW ES上的2011年WWDC視頻中詳細解釋。

iOS 5.0中最重要的新增功能是GLKit,它簡化了OpenGL ES場景的設置和配置。需要注意的是GLKit完全是基於周圍的OpenGL ES 2.0,不1.1和has a stated goal of helping you migrate from 1.1 to 2.0

的GLKit框架提供的通常需要的功能 和類以減少建立一個新的OpenGL ES所需的努力2.0 應用程序或庫將現有的OpenGL ES 1.1 應用程序移植到OpenGL ES 2.0所需的努力。

因此,任何你讀到的有關GLKit的東西都必須使用OpenGL ES 2.0。

我已經previously pointed out advantages that OpenGL ES 2.0 gave my applications,所以我不會在這裏進入。相反,我只是說,我發現OpenGL ES 2.0實際上比1.1更容易理解。在2.0中,如果你想要一個特定的效果,你需要編寫着色器代碼來完成它。在1.1中,如果你想得到同樣的效果,你首先必須驗證是否可以做你想做的事情,然後你必須找到你需要實現的狀態變化的魔力組合。

我強烈建議任何學習OpenGL ES的人現在都要從2.0開始,而不是隻看1.1。目前還沒有足夠的資源來支持1.1,但我在this answer中提到了其中的幾個。