1
현재 장면의 깊이를 텍스처로 렌더링 중입니다. 임의의 점 x, y에서 텍스처의 값을 임의로 얻고 싶습니다. 나는 glReadPixels
을 사용하려고했지만 작동하지 않는 것으로 보이고 또한 최적의 솔루션으로 보이지 않습니다. 가능한 경우 메모리에서 텍스처 데이터를 직접 읽는 방법에 대해 생각하고 있습니다. 주어진 x, y에 대해 그 값을 얻는 아이디어는 프레임 버퍼에 깊이 텍스처가있는 쿼드를 실제로 렌더링하는 것과는 별도입니까?OpenGL ES 2.0에서 텍스처 읽기
그건 그렇고, OpenGL ES 2.0이 설치된 Android에서 자바를 사용하고 있습니다.
GLES20.glGetIntegerv(GLES20.GL_FRAMEBUFFER_BINDING, mainBufferHandle, 0);
if(mainBufferHandle[0] < 0) mainBufferHandle[0] = 0;
GLES20.glBindFramebuffer(GLES20.GL_FRAMEBUFFER, depthBufferHandle[0]);
GLES20.glFramebufferTexture2D(GLES20.GL_FRAMEBUFFER, GLES20.GL_DEPTH_ATTACHMENT, GLES20.GL_TEXTURE_2D, depthTextureHandle[0], 0);
GLES20.glReadPixels(x, y, 1, 1, GLES20.GL_RGB, GLES20.GL_FLOAT, floatBuffer);
어떻게 glReadPixels를 사용하려고하는지 설명하십시오. 예를 들어 몇 가지 코드를 보여줍니다. –