2

我正在寻找一种方法来获取支持的 OpenGL ES 版本列表或运行时 iOS 设备上可用的最大 OpenGL ES 版本?

理想情况下,解决方案不得

  • 不检查特定的设备型号

PS:项目设置:Base SDK = Latest iOS (7.0) 部署目标:4.3

4

1 回答 1

12

这样做的首选方法是尝试为各种 OpenGL ES 版本创建上下文,并在它们失败时回退到旧版本。例如,您可以使用以下命令检查 OpenGL ES 3 支持:

    EAGLContext *aContext = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES3];

如果aContext为 nil,则该设备不支持 OpenGL ES 3.0。然后你可以回退到

    aContext = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2];

测试 2.0 支持。如果失败(aContext再次为零),则设备仅支持 OpenGL ES 1.1。这不需要您检查设备类型(并且它考虑了未来未发布的设备)。

于 2014-03-16T21:19:37.193 回答