Asynchronous glReadPixels with PBO
I want to use two PBOs to read pixel in alternative way. I thought the PBO way will much faster, because glReadPixels returns immediately when using PBO, and a lot of time can be overlapped. Strangely there seems to be not much benefit. Considering some code like: glBindBufferARB(GL_PIXEL_PACK_BUFFER_ARB, 0); Timer t; t.start(); glReadPixels(0,0,1024,1024,GL_RGBA, GL_UNSIGNED_BYTE, buf); t.stop(); std::cout << t.getElapsedTimeInMilliSec() << " "; glBindBufferARB(GL_PIXEL_PACK_BUFFER_ARB, pbo); t.start(); glReadPixels(0,0,1024,1024,GL_RGBA, GL_UNSIGNED_BYTE, 0); t.stop(); std::cout << t