我正试图在my application中同时使用多个OpenGL上下文。这是一个相当混乱的设置,在三个UITableViewCells中有三个OpenGL上下文。 UITableView本身显示在全屏GLKView上方的UIPopoverView中(见下文)。后台的背景是使用OpenGL ES 2.0,而较小的则使用OpenGL ES 1.1。较小的上下文是同一个共享组的成员。背景中的那个不是。
也许令人惊讶的是,这实际上是按预期工作的!而且非常可靠。我只对其中一个上下文有问题而且很少。如果我删除这一个上下文,一切正常。但是,在极少数情况下,我在调用[context presentRenderbuffer:GL_RENDERBUFFER_OES];
时遇到异常。
我的问题有点宽泛,但我想知道在这种情况下我应该注意什么?是否还有其他人同时成功使用OpenGL ES 1.1和2.0?
(我查看了OpenGL ES Analyzer仪器,但找不到任何看起来很严重的东西。)
答案 0 :(得分:0)
Ben Zotto是对的,这只是确保在每个子程序中设置正确的上下文。因为有多个上下文,所以发现错误更难。使非法操作(设置了错误的上下文)的OpenGL视图不是崩溃的视图。