Ios 在预设缓冲区中崩溃:GL_RENDERBUFFER和/或GLES2VBVO::EnsureReticesInited
我经历了两次随机崩溃,但它们似乎只发生在iPhone4上。我们所有的安卓设备和任何比iPhone4更新的苹果设备都不会崩溃。我们最近开始构建iOS,并且已经有一年多的Android版本 iPhone4安装在iOS 7.1.2上 统一是4.5.5.f1 Xcode是5.1.1 该手机使用的是iOS 7.0,升级到7.1也无济于事。我们还尝试使用Unity 4.5.5p5进行构建,但问题仍然存在 这两个崩溃在线程的调用堆栈顶部都有:Ios 在预设缓冲区中崩溃:GL_RENDERBUFFER和/或GLES2VBVO::EnsureReticesInited,ios,iphone,opengl-es,unity3d,crash,Ios,Iphone,Opengl Es,Unity3d,Crash,我经历了两次随机崩溃,但它们似乎只发生在iPhone4上。我们所有的安卓设备和任何比iPhone4更新的苹果设备都不会崩溃。我们最近开始构建iOS,并且已经有一年多的Android版本 iPhone4安装在iOS 7.1.2上 统一是4.5.5.f1 Xcode是5.1.1 该手机使用的是iOS 7.0,升级到7.1也无济于事。我们还尝试使用Unity 4.5.5p5进行构建,但问题仍然存在 这两个崩溃在线程的调用堆栈顶部都有: gpus_ReturnGuiltyForHardwareResta
gpus_ReturnGuiltyForHardwareRestart
其中一个崩溃出现在DisplayManager.mm中:
- (void)present
{
if(surface.context != nil)
{
PreparePresentRenderingSurface(&surface, [[DisplayManager Instance] mainDisplay]->surface.context);
EAGLContextSetCurrentAutoRestore autorestore(surface.context);
GLES_CHK(glBindRenderbuffer(GL_RENDERBUFFER, surface.systemColorRB));
[surface.context presentRenderbuffer:GL_RENDERBUFFER];
if(needRecreateSurface)
{
RenderingSurfaceParams params =
{
surface.msaaSamples, (int)requestedRenderingSize.width, (int)requestedRenderingSize.height,
surface.use32bitColor, surface.use24bitDepth, surface.cvTextureCache != 0
};
[self recreateSurface:params];
needRecreateSurface = NO;
requestedRenderingSize = CGSizeMake(surface.targetW, surface.targetH);
}
}
}
另一个在OpenGL库中,位于:
GLES2VBO::EnsureVerticesInited(bool)
请:您可以从任何IDE以纯文本形式复制/粘贴几乎任何内容。选择调用堆栈Cmd+C,将其粘贴到此处。图像很难读取,如果不是不可能的话。我从DisplayManager.mm添加了这个函数。一旦我再次获得另一个异常,即GLES2VBO::ensureReticeSinited(bool),我将发布该程序集。我还将图像更改回URL链接,以便可以以本机分辨率查看它们。不知道为什么它们变成了那些毫无用处的缩略图。哦,我做到了。最好将所有内容都嵌入到帖子中,因为链接最终可能会断开,这会降低帖子对其他人的用处。顺便说一句,尝试使用xcode 6,5基本上已经过时了。你也可以并排安装。嗯,试过xcode 6,我得到了完全相同的EXC\u BAD\u访问权限