我开始在iOS上学习OpenGL ES。
你知道一些很好的参考资料,谈论Open GL ES 1(不是2!)和iOS 5(因为Apple在iOS 5 for OpenGL上做了很多工作)
Thx
答案 0 :(得分:3)
首先,您不需要查找特定于iOS 5.0的引用。 Apple没有在5.0中更改基本的OpenGL ES API。您在OpenGL ES 1.1上可以找到的所有引用仍然适用于iOS 5.0。
在基础层面,他们添加了一些使用iPad 2和iPhone 4S的新硬件功能的扩展程序,例如EXT_color_buffer_half_float
和EXT_occlusion_query_boolean
,以及用于新OpenGL的标记Xcode中的ES调试器。这些不是初学者级别的概念,但这些都在Apple的WWDC 2011 OpenGL ES视频中有详细解释。
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。目前还没有那么多的资源可以用来获取2.0,但我在this answer中提到了其中几个。