myExample icon indicating copy to clipboard operation
myExample copied to clipboard

我用了PBO之后,效率和glReadPixels一样,求解?

Open sunyuchuan opened this issue 6 years ago • 1 comments

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

sunyuchuan avatar Mar 21 '19 10:03 sunyuchuan

PBO 耗时大跟手机性能有关,你可以尝试把分辨率改小比如 630*360。

chuanyou01 avatar Apr 04 '19 03:04 chuanyou01