我很惊讶没有人问过这个问题。如果有人这样做但我没有找到,请告诉我。
我正在寻找类似于TVOutManager的解决方案,用于将iPad / iPhone的屏幕镜像到外部显示器。 TVOutManager运行良好,但不显示动画和OpenGL内容。在上面代码的自述文件中,Rob提到了一个使用glReadPixels()
的Apple QA,显然可以解决问题。但我不确定如何实现它。 QA中的代码段仅适用于特定视图。如何使用多个OpenGL视图捕获整个窗口?
答案 0 :(得分:1)
如果您有多个OpenGL视图,您将拥有多个EAGLContext和/或帧缓冲区(每个视图一个)。与绘图调用在当前上下文中绘制当前帧缓冲区的方式相同,glReadPixels将在当前上下文中读取当前帧缓冲区。
基本上你需要设置每个视图,因为你要绘制下一帧(但没有明确的调用)然后你进行glReadPixels()调用。