Конфликт контекста в приложении панели вкладок Opengl - PullRequest
0 голосов
/ 09 июля 2011

Я пытаюсь отобразить содержимое OpenGL ES на одной вкладке приложения на основе шаблона панели вкладок Xcode.Однако, когда я копирую и вставляю код из шаблонного приложения OpenGL ES, программа вылетает с ошибкой:

Программа получает сигнал SIGBART в строке [(EAGLView *) self.view setContext: context];

Более того, в окне вывода есть два сообщения:

Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: '- [UIView setContext:]

завершить вызов после выброса экземпляра 'NSException'

Вот то, что я считаю соответствующим кодом:

- (void)awakeFromNib
{
    EAGLContext *aContext = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2];

    if (!aContext) {
        aContext = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES1];
    }

    if (!aContext)
        NSLog(@"Failed to create ES context");
    else if (![EAGLContext setCurrentContext:aContext])
        NSLog(@"Failed to set ES context current");

    self.context = aContext;
    [aContext release];

    [(EAGLView *)self.view setContext:context];
    [(EAGLView *)self.view setFramebuffer];

    if ([context API] == kEAGLRenderingAPIOpenGLES2)
        [self loadShaders];

    animating = FALSE;
    animationFrameInterval = 1;
    self.displayLink = nil;
}

Как я могуизбавиться от этой ошибки?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...