Por que meu EAGLVIew não está mais renderizando no iOS 4.2?

Atualizando para o iOS SDK 4.2 Estou tendo vários comportamentos inadequados no meu aplicativo (outro é solicitadoaqui) O que eu vou pedir sua ajuda diz respeito a uma visualização OpenGL (uma subclasse EAGLView) que não renderiza mais o modelo 3d que estou inserindo.

A visualização é alocada e parece reconhecer os gestos, mas seu conteúdo não évisível (Eu verifiquei que é sobre a visualização e não aextraviado do modelo, colorindo o plano de fundo: não o pinta através deglClearColor())

Quando eu tocar duas vezes, ele deve ser redimensionado (fica em tela cheia, antes disso é um pouco UIVIew) chamando este método:

- (void)animateToGrow{
    DNSLog(@"grow");
    grow = YES;
    oldFrame = self.frame;
    oldCenter = self.center;

    [UIView beginAnimations:@"MoveAndStrech" context:nil];
    [UIView setAnimationDuration:0.5];
    [UIView setAnimationBeginsFromCurrentState:YES];

    self.frame = CGRectMake(0, 0, WIDTH, HEIGHT); 
    self.center = CGPointMake(CENTER_X, CENTER_Y);
    [UIView commitAnimations];
    [self setupGLPerspectiveNear:0.1 far:1000];
}

e magicamenteo modelo aparecee até o fundo fica colorido.

Eu tenho um método que redimensiona e volta ao quadro anterior e posição central e, quando é chamado, a exibição se torna'esvaziar' novamente.

Antes de qualquer sugestão? (Posso postar mais código, se necessário)

ATUALIZAR Isso está acontecendo no simulador (não é possível testar em um dispositivo no momento). Se este for um erro reconhecido, alguém tem uma referência nos documentos da Apple?

ATUALIZAÇÃO 2 Estou usando o OpenGL ES 1.1 e não o 2.0.

Aqui está o que eu faço no EAGLViewlayoutSubViews :

- (void)layoutSubviews 
{
    [EAGLContext setCurrentContext:_context];
    [self destroyFramebuffer];
    [self createFramebuffer];
    [self drawView];
}

E este é o meucreateFramebuffer

- (BOOL)createFramebuffer
{
    glGenFramebuffersOES(1, &_viewFramebuffer);
    glGenRenderbuffersOES(1, &_viewRenderbuffer);

    glBindFramebufferOES(GL_FRAMEBUFFER_OES, _viewFramebuffer);
    glBindRenderbufferOES(GL_RENDERBUFFER_OES, _viewRenderbuffer);
    [_context renderbufferStorage:GL_RENDERBUFFER_OES fromDrawable:(CAEAGLLayer*)self.layer];
    glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, _viewRenderbuffer);

    glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &_backingWidth);
    glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &_backingHeight);

    if (_useDepthBuffer) 
    {
        glGenRenderbuffersOES(1, &_depthRenderbuffer);
        glBindRenderbufferOES(GL_RENDERBUFFER_OES, _depthRenderbuffer);
        glRenderbufferStorageOES(GL_RENDERBUFFER_OES, GL_DEPTH_COMPONENT16_OES, _backingWidth, _backingHeight);
        glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_DEPTH_ATTACHMENT_OES, GL_RENDERBUFFER_OES, _depthRenderbuffer);
    }

    if(glCheckFramebufferStatusOES(GL_FRAMEBUFFER_OES) != GL_FRAMEBUFFER_COMPLETE_OES) 
    {
        NSLog(@"failed to make complete framebuffer object %x", glCheckFramebufferStatusOES(GL_FRAMEBUFFER_OES));
        return NO;
    }

    return YES;
}

ATUALIZAÇÃO 3

Se eu criar a visualização, fornecendo o quadro de tela cheia (320x480), ela aparecerá renderizada corretamente. De alguma forma, está relacionado às dimensões da vista

questionAnswers(3)

yourAnswerToTheQuestion