我正在尝试使用 glReadPixels 在 OpenGL ES 中检索颜色。我用 float[] 设置对象的颜色,例如 {0.0f,0.5f,0.2f,1.0f} 如何将 glReadPixels 值转换为相同的 float[],因为它是无符号字节?
设置颜色:
gl.glColor4f(color[0], color[1], color[2], color[3]);
获取颜色:
ByteBuffer buf = ByteBuffer.allocate(4);
buf.order(ByteOrder.nativeOrder());
gl.glReadPixels((int) mx, height - (int) my, 1, 1, GL10.GL_RGBA, GL10.GL_UNSIGNED_BYTE, buf);
byte result[] = buff.array();
我不知道这是否已经被问过/回答过,但我还没有找到解决方案,我已经尝试了很长时间。