OpenGL iOS视图不绘制



我试图使用OpenGL来绘制一个视图,这是另一个视图的子视图。我为此目的创建了一个视图类,如果我在一个简单的测试应用程序中使用这个类,它会工作得很好。然而,如果我把这个类的一个实例放在我的应用程序的一个特定页面上,OpenGL绘图不会显示任何东西。我确信视图是可见的(我可以设置背景颜色,它被显示,我可以接收触摸事件)。我还可以通过OpenGL初始化和绘制例程跟踪,一切似乎都很好。我的油漆例程被调用,我调用glGetError频繁,没有返回错误。我可以将跟踪例程与有效的情况进行比较,一切似乎都差不多,但没有油漆(我甚至只是尝试什么都不做,只是将窗口清除为黑色,但这也无济于事)。

不工作的应用程序的代码是远远复杂的张贴在这里。我认为我做错了什么事,但我怎么也想不出是什么。谁能给我一些关于为什么OpenGL绘画看起来很成功,但却没有画出任何东西的想法,或者建议一个解决这个问题的策略?

谢谢。

OpenGL和外部世界之间的链接是平台特定的,而不是核心API的一部分。所以这里的问题不会影响glGetError的结果。

在iOS的情况下,相关的调用是EAGLContext -presentRenderbuffer:,这将工作提供你已经使用renderbufferStorage:fromDrawable:创建存储从CAEAGLLayer渲染缓冲区。您可能想要检查presentRenderbuffer:的返回结果和周围的代码来查找错误,而不是内部GL状态。

最新更新