簡體   English   中英

glReadPixels(Depth_Component) 在 Android OpenGL ES20 中不起作用

[英]glReadPixels(Depth_Component) not working in Android OpenGL ES20

我使用以下代碼來檢索深度緩沖區:

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);

這幾天我一直在為這個問題苦苦掙扎。 請幫忙。

根據OpenGL ES 2.0文檔, glReadPixels()不支持讀取深度緩沖區。 glGetError()返回什么?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM