2015-07-21 71 views
0

我學習OpenGL的iOS和我發現,我是想測試一些舊代碼,當我嘗試運行它,我得到一個EXC_BAD_ACCESS我是否需要此代碼? OpenGL的在iOS 8

這是代碼:

- (void) initGL 
{ 
    RendererInfo renderer; 
    // Query renderer capabilities that affect this app's rendering paths 
    renderer.extension[APPLE_texture_2D_limited_npot] = 
    (0 != strstr((char *)glGetString(GL_EXTENSIONS), "GL_APPLE_texture_2D_limited_npot")); 
    renderer.extension[IMG_texture_format_BGRA8888] = 
    (0 != strstr((char *)glGetString(GL_EXTENSIONS), "GL_IMG_texture_format_BGRA8888")); 
    glGetIntegerv(GL_MAX_TEXTURE_SIZE, &renderer.maxTextureSize); 
} 

從我讀過的這些在當前版本的OpenGL中已經過時了,這是否正確,是否有任何需要更新此代碼?

回答

0

擴展可能是obsolte,但代碼不是。

glGetStringglGetIntegerv是OpenGL標準,因此你必須有一個錯誤在你的代碼,我不是一個Objective-C的編碼器,但這個貌似OpenGL的未初始化或關閉某些對象訪問是無效的(例如,通過訪問null/nil對象)。