ios - 打开 GL ES 1 和 iOS 5 引用

标签 ios opengl-es reference

我开始在 iOS 上学习 OpenGL ES。

你知道一些关于 Open GL ES 1(不是 2!)和 iOS 5(因为 Apple 在 iOS 5 上为 OpenGL 做了很多工作)的好引用资料吗?

谢谢

最佳答案

首先,您无需查找特定于 iOS 5.0 的引用资料。 Apple 并未在 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 的 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 :

The GLKit framework provides libraries of commonly needed functions and classes to reduce the effort needed to create a new OpenGL ES 2.0 application or the effort required to port an existing OpenGL ES 1.1 application to 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 的资源不如获取 1.1 的资源那么多,但我在 this answer 中提到了其中的几个。 .

关于ios - 打开 GL ES 1 和 iOS 5 引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9559037/

相关文章:

c++ - CMake 声称找到 OpenGL 但找不到 EGL 和 OpenGL::GL

javascript - 如何复制webgl Canvas ? (我想要小 map )

传递给子例程时Perl引用和延迟哈希值?

c++ - 我应该更喜欢成员数据中的指针还是引用?

c# - 服务引用复杂类型

ios - CoreText 和右对齐

iphone - NSFetchResultsController 委托(delegate)没有被调用

iphone - 使用 Jeff Lamarches 脚本加载模型

android - 从 Flutter 中的函数名获取函数

ios - CGRect 裁剪图像显示错误值