【发布时间】:2011-06-10 07:32:02
【问题描述】:
我使用以下代码检索深度缓冲区:
FloatBuffer pixels = ByteBuffer
.allocateDirect(4).order(ByteOrder.nativeOrder()).asFloatBuffer();
GLES20.glReadPixels(pointx, pointy, 1, 1,
GLES20.GL_DEPTH_COMPONENT16, GLES20.GL_FLOAT, pixels);
问题是,无论我要求哪一点,像素都给我 0.0;
我在onSurfaceCreated中启用了以下功能:
GLES20.glEnable(GLES20.GL_DEPTH_TEST);
GLES20.glEnable(GLES20.GL_BLEND);
GLES20.glBlendFunc(GLES20.GL_SRC_ALPHA, GLES20.GL_ONE_MINUS_SRC_ALPHA);
GLES20.glDepthFunc(GLES20.GL_LEQUAL);
GLES20.glDepthMask(true);
GLES20.glClearColor(1, 1, 1, 1);
我已经为这个问题苦苦挣扎了好几天!请帮忙。
【问题讨论】:
标签: android opengl-es opengl-es-2.0 depth-buffer