/, ... 3GS, 3G, .
In my case, the problem arose when I set up the context in ESRenderer, but actually drew nothing, i.e. in the code below [scene drawing] didn’t draw anything in certain states. On older iPhones and Sims, when you don't draw anything, it doesn't seem to have flipped OpenGL buffers ... but in 3GS it does. In any case, my workaround was to stop the animation in these states (i.e., stop the timer that triggers the draw) when I did not draw anything.
- (void) draw
{
[EAGLContext setCurrentContext:context];
glBindFramebufferOES(GL_FRAMEBUFFER_OES, defaultFramebuffer);
glViewport(0, 0, backingWidth, backingHeight);
[scene draw];
glBindRenderbufferOES(GL_RENDERBUFFER_OES, colorRenderbuffer);
[context presentRenderbuffer:GL_RENDERBUFFER_OES];
}
source
share