glCopyTexImage2D替代glReadPixels(OpenGL ES)

我目前正在使用glReadPixels抓取OpenGL ES游戏的截图。 屏幕截图很棒但是对glReadPixels的调用会导致游戏中的小口吃。

glCopyTexImage2D被认为是glReadPixels的更有效替代品。 glCopyTexImage2D如何工作? 对于某些情况,我正在使用这种Apple方法 。

我对OpenGL比较陌生,所以非常感谢任何帮助:-)

延迟是由GPU和CPU之间传输大量内存引起的。 这可以通过每帧一点点传输来解决。 但是如果你从帧缓冲区读取一系列帧,那么图像会同时发生变化。

所以你制作一个副本,videoRAM进入videoRAM(速度非常快),然后随着你的零碎转移它不会改变。