我正在做一个iOS应用程序,我有一个黑盒子渲染库,它有自己的EAGLContext和framebuffer,并且它自己的渲染。我还需要在黑盒子lib之外做额外的渲染。
到目前为止,我一直在通过仔细阅读,设置和恢复每帧的所有相关状态来做到这一点。这有效,但很难维护。然后我发现,“为什么不用单独的EAGLContext?”
我已经实现了第二个上下文,所以现在我正在切换上下文而不是每帧都设置/恢复所有状态。唯一的问题是我获得了大量的视觉效果,性能从坚固的30 FPS到大约5 FPS ......
显然,我并不打算从几个上下文渲染到相同的帧缓冲区。谁能证实这一点?