2011-05-23 58 views
3

我在我的iPad應用中遇到openGL和方向問題。這個問題只發生在4.3+設備上。 4.2設備不會發生這種情況。OpenGL改變方向導致iPad重啓

當我以任何方向和繪圖開始繪製應用程序時,它會正確繪製,但是當我改變方向並嘗試繪製時,iPad會自行重新繪製。重啓發生在通話

[context presentRenderbuffer:GL_RENDERBUFFER_OES]; 

這是我在layoutSubviews使用代碼:

-(void) layoutSubviews { 
    [EAGLContext setCurrentContext:context]; 

    glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer); 
    [context renderbufferStorage:GL_RENDERBUFFER_OES fromDrawable:(id<EAGLDrawable>) [self layer]]; 

    glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &backingWidth); 
    glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &backingHeight); 

    glScissor(0, 0, [self bounds].size.width, [self bounds].size.height); 

    NSLog(@"%f - %f", [self bounds].size.width, [self bounds].size.height); 

    glBindRenderbufferOES(GL_RENDERBUFFER_OES, depthRenderbuffer); 
    glRenderbufferStorageOES(GL_RENDERBUFFER_OES, GL_DEPTH_COMPONENT16_OES, backingWidth, backingHeight); 

    [self erase]; 
    [self drawExisting]; 

    glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer); 
    [context presentRenderbuffer:GL_RENDERBUFFER_OES]; 
} 

我的問題是,做了什麼變化4.3?我無法找到任何說明。或者如果您在我的代碼中看到任何錯誤,請告訴我。

回答