想控制一切?欢迎来到像素操作。
附:windows的BMP颜色和OpenGL颜色有所差异,BMP是BGR, OpenGL是RGB。
最基本的三个操作函数:
1. 读,从屏幕上(显存中)读取像素到内存。glReadPixels
2. 写,从内存中绘制像素到屏幕(显存)。glDrawPixels
3. Copy, 把屏幕(显存)的数据从一个位置复制到另外一个位置。glCopyPixels。该步骤不经过内存,直接在显存中移动,效率很高。
通过glRasterPos来设置画的位置。通过glPixelStorei设置参数
glReadPixels
是从 显存 中读取数据,从 屏幕 上读取。如果使用了双缓冲,则从前缓冲中读取(正在显示的)。如果想读取后缓冲中的内容,那么请先交换
glDrawPixels
一种常见的用法,从图像中读取数据,然后使用glDrawPixels画在屏幕上。
glCopyPixels
没啥特别的
附:windows的BMP颜色和OpenGL颜色有所差异,BMP是BGR, OpenGL是RGB。
最基本的三个操作函数:
1. 读,从屏幕上(显存中)读取像素到内存。glReadPixels
2. 写,从内存中绘制像素到屏幕(显存)。glDrawPixels
3. Copy, 把屏幕(显存)的数据从一个位置复制到另外一个位置。glCopyPixels。该步骤不经过内存,直接在显存中移动,效率很高。
通过glRasterPos来设置画的位置。通过glPixelStorei设置参数
glReadPixels
是从 显存 中读取数据,从 屏幕 上读取。如果使用了双缓冲,则从前缓冲中读取(正在显示的)。如果想读取后缓冲中的内容,那么请先交换
glDrawPixels
一种常见的用法,从图像中读取数据,然后使用glDrawPixels画在屏幕上。
glCopyPixels
没啥特别的