【发布时间】:2015-07-02 14:27:15
【问题描述】:
我正在使用 opengl 在 qt 中编写一个界面,并且我有一个 QGLWidget,它在屏幕上绘制了一些顶点。
我正在尝试更改像素数据以使图像更亮,但是 glreadpixels 给出了非常奇怪的结果
我将像素读入一个 3 维数组,以便查看位置和 RGB 值。
这是我的一些代码
GLuint pixels[w][h][3];
glReadPixels( 0, 0, w, h, GL_RGB, GL_INT, pixels)
for(int i = 0; i < w; i++)
for(int j = 0; j < h; j++)
cout << pixels[i][j][0] << " ";
cout << pixels[i][j][1] << " ";
cout << pixels[i][j][2] << " ";
现在我的目标只是看到打印出来的像素数据,但是我在终端中得到的输出几乎全是 0,但是当我看到 0 以外的东西时,它的值非常大,比如 4294967295。
我知道颜色值的范围是 0-255,所以我不太确定发生了什么。
【问题讨论】:
标签: c++ qt opengl glreadpixels