像素数据处理流程简图
void glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels); //从帧缓冲区中的一个矩形区域读取像素数据,这个矩形区域的左下角窗口坐标(x,y),他的宽度和高度分别为width,height //读取的像素保存在pixels所指向的数组中,format表示此函数所读取的像素数据元素的类型见表 //type表示每个元素的数据类型
format参数取值表:
type参数取值表:
把像素数据从内存中写入到帧缓存区
void glDrawPixels (GLsizei width, GLsizei , GLenum format, GLenum type, const GLvoid *pixels); //绘制一个宽度和高度分别为width和height的像素数据这个像素矩形的左下角就是当前光栅位置,format与type和上图相同 //pixels所指向的数组包含了被绘制的像素数据
从帧缓存区的一个矩形区域(x,y,width,height)复制数据:
void glCopyPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum ); //从帧缓存区的一个矩形区域(x,y,width,height)复制数据,数据被复制到帧缓存区的一个新位置,它的左下角是当前光栅坐标 //type是GL_COLOR, GL_STENCIL,GL_DEPTH,指定了这个函数所使用的帧缓存区