myExample
myExample copied to clipboard
我用了PBO之后,效率和glReadPixels一样,求解?
ByteBuffer ByteBuffer = (ByteBuffer) GLES30.glMapBufferRange(GLES30.GL_PIXEL_PACK_BUFFER, 0, mPboSize, GLES30.GL_MAP_READ_BIT); 耗时为0
GLES30.glUnmapBuffer(GLES30.GL_PIXEL_PACK_BUFFER);
GLES30.glBindBuffer(GLES30.GL_PIXEL_PACK_BUFFER, 0);
if (ByteBuffer != null) {
ByteBuffer.get(mData); 这里耗时非常大,有几十毫秒
ByteBuffer.clear();
}
PBO 耗时大跟手机性能有关,你可以尝试把分辨率改小比如 630*360。