我正在寻找获取opengl内容的方法(如UIImage),然后将其保存到文件中。我现在正在试试glReadPixels,虽然我不确定我做的是什么样的malloc我应该做的正确的事情。我在OSX上收集的是它的GL_BGRA,但在iPhone上却无效......
答案 0 :(得分:2)
所有OpenGL | ES complient GL实现都必须支持GL_RGBA作为glReadPixels的参数。
如果您的OpenGL | Es支持
GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES
扩展您还可以查询本机格式。 glReadPixels会将此格式理解为glReadPixels的参数,并允许您直接获取原始格式的像素数据。这通常比GL_RGBA快一点。
查看头文件或通过glGetString查询扩展支持。
答案 1 :(得分:1)
答案 2 :(得分:1)
查看“技术Q& A QA1704 OpenGL ES视图快照”,其中Apple提供了一个有用的示例,其中包括Nils“更好的方式”来解除图像。它会将您带到您的UIImage,并从那里跟随Nils获取保存为文件的方法。