 <p>Try reading pixels right after </p> <pre><code>GLES20.glDrawArrays(GLES20.GL_TRIANGLE_STRIP, 0, 4); </code></pre> <p>Also make sure that glReadPixels is called from the right thread, i.e. in your renderer subclass. </p> <p>And another thing, i see that you are binding the texture used for the FBO as input to the shader, you cannot do that.</p> <p>I suppose that after RTT, you are rendering the result to a quad or something on screen is that right ? </p> <p>Can you show the rest of the code that you are using to read the pixels ?</p>