某些iOS设备上的快照失败

时间:2014-11-12 18:59:56

标签: ios opengl-es-2.0 glkit glkview

我有一个应用程序,我有一个GLKit视图控制器。我需要获得GL视图的快照。

我正在使用:

glImage = [(GLKView *)self.view snapshot] ;

其中glImage是UIImage。

每次在我的iPhone 5s(iOS 8.1)上都能正常工作,但只能在iPad Mini(iOS 7.1)和iPhone 4s(也是7.1)上显示空白图像。图像正是我期望的尺寸,但是空白。

此功能自iOS5起已经存在,因此它看起来不像操作系统问题。

为什么这不起作用?这是一个处理问题吗?

编辑 - 我将iPad升级到iOS8.1,问题仍然是操作系统问题。

1 个答案:

答案 0 :(得分:0)

这不是确切的答案,但您可以考虑使用this method:

简而言之,它将CVPixelBuffer附加到允许它的OpenGL Framebuffer 由CPU快速读取。我用它来捕捉视频,从来没有遇到过问题 用它。此外,它可能比快照更快,因为它不需要您的视图 重新绘制。