在我们的游戏中,我们使用OpenGL进行渲染。 有时app会在第一次调用此方法后开始随机崩溃:
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
我们在渲染游戏场景之前正在调用此方法。 这是崩溃的堆栈跟踪:
0 Crashed: com.apple.main-thread EXC_BAD_ACCESS KERN_INVALID_ADDRESS at 0x000000a4
0 IMGSGX543GLDriver sgxTextureGetImageRowBytes(GLDTextureRec*, unsigned int, unsigned int) + 7
1 IMGSGX543GLDriver CalculateChunkPlaneSizes(GLDTextureRec*, int, unsigned int*, unsigned int*, unsigned int*, unsigned int*) + 108
2 IMGSGX543GLDriver CalculateChunkPlaneSizes(GLDTextureRec*, int, unsigned int*, unsigned int*, unsigned int*, unsigned int*) + 108
3 IMGSGX543GLDriver sgxConfigureTexturePrivate(GLDTextureRec*) + 82
4 IMGSGX543GLDriver glrUpdateTexture + 952
5 libGPUSupportMercury.dylib gldLoadFramebuffer + 110
6 GLEngine gleUpdateDrawFramebufferState
7 GLEngine glClear_Exec + 164
我们不知道为什么会出现这种崩溃。 有人遇到过类似的问题吗? 谢谢你的帮助。