glReadPixels示例代码
glReadBuffer(GL_COLOR_ATTACHMENT0);
appEglCheckGlError("glReadBuffer");
glPixelStorei(GL_PACK_ALIGNMENT, 1);
appEglCheckGlError("glPixelStorei GL_PACK_ALIGNMENT");
glPixelStorei(GL_PACK_ROW_LENGTH, 0);
appEglCheckGlError("glPixelStorei GL_PACK_ROW_LENGTH");
glPixelStorei(GL_PACK_SKIP_ROWS, 0);
appEglCheckGlError("glPixelStorei GL_PACK_SKIP_ROWS");
glPixelStorei(GL_PACK_SKIP_PIXELS, 0);
appEglCheckGlError("glPixelStorei GL_PACK_SKIP_PIXELS");
PFNGLCLIPCONTROLEXTPROC glClipControlEXT = (PFNGLCLIPCONTROLEXTPROC)eglGetProcAddress("glClipControlEXT");
/* glViewport (0,0) is lower left */
glClipControlEXT(GL_UPPER_LEFT_EXT, GL_NEGATIVE_ONE_TO_ONE_EXT);
/* size of data is width*height*4 */
glReadPixels(0, 0, width, height, GL_BGRA_EXT, GL_UNSIGNED_BYTE, data);
appEglCheckGlError("glReadPixels");
参考