public Color getPixelColor(OpenGL gl, int x, int y)
{
Color color = new Color(0, 0, 0);
byte[] pixels = new byte[3];
gl.ReadPixels(x, y, 1, 1, OpenGL.GL_RGB, OpenGL.GL_FLOAT, pixels);
int a = pixels[0], b = pixels[1], c = pixels[2];
color.setColor(pixels[0], pixels[1], pixels[2]);
}
我使用gl.ReadPixels()
来获取像素颜色,但是我遇到了exception of type 'system.stackoverflowexception' was thrown at line 'gl.ReadPixels(x, y, 1, 1, OpenGL.GL_RGB, OpenGL.GL_FLOAT, pixels);
的问题。
可以帮我解决该错误吗?
答案 0 :(得分:0)
您有一个包含3个字节的数组,但是您尝试读取3个(RGB)浮点数,即12个字节。将数组从字节类型更改为浮点类型。