I\'m currently grabbing a screenshot of an OpenGL ES game using glReadPixels
. The screenshots are great however the call to glReadPixels
causes a
The time delay is caused by transferring a large amount of memory between GPU and CPU. This can be solved by transferring in chunks, a little bit per frame. But if you read from the framebuffer over a series of frame, the image would be changing meanwhile.
So you make a copy, video RAM into video RAM (very fast), and then it won't change as you transfer it piecemeal.