Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何合并两个GLKViewController_Ios_Opengl Es_Uiviewcontroller_Glkit - Fatal编程技术网

Ios 如何合并两个GLKViewController

Ios 如何合并两个GLKViewController,ios,opengl-es,uiviewcontroller,glkit,Ios,Opengl Es,Uiviewcontroller,Glkit,我有两个使用OpenGL视图的控制器: 使用AVFoundation获取视频帧以处理并显示它们 使用OpenGL ES(视频采集过程无法停止) 在OpenGL ES视图中显示一组点 当我想切换到第二个控制器时,我会像一个半透明的模式弹出窗口一样进行切换。这是笨重的,手机必须渲染2个OpenGL ES的全屏视图和透明度 我正在考虑添加一个工具栏来在这两个视图(可能是3个)之间切换,并在后台使用一个控制器。根据我的理解,每个控制器可以有一个视图,这意味着我必须在委托视图中放置条件,这依赖于连接到按钮

我有两个使用OpenGL视图的控制器:

  • 使用AVFoundation获取视频帧以处理并显示它们 使用OpenGL ES(视频采集过程无法停止)
  • 在OpenGL ES视图中显示一组点
  • 当我想切换到第二个控制器时,我会像一个半透明的模式弹出窗口一样进行切换。这是笨重的,手机必须渲染2个OpenGL ES的全屏视图和透明度

    我正在考虑添加一个工具栏来在这两个视图(可能是3个)之间切换,并在后台使用一个控制器。根据我的理解,每个控制器可以有一个视图,这意味着我必须在委托视图中放置条件,这依赖于连接到按钮的一些变量


    这是正确的选择吗?是否有更好的方法?

    是否将GLKView的显示方法作为视频数据委托调用的一部分进行调用?或者,在调用GLKView的委托时,是否将每个帧转储到CIImage中,并渲染其中存在的帧?转储到图像中,进行一些处理,然后发送回视图。目前控制器1中的视图正在UIView中使用旧的OpenGL 1.1代码(!!!),但我可以升级它。如果是这样的话,那么您最好在GLKView的委托调用中使用显示逻辑。如果您想将其重写为答案,我会接受。我觉得我在这方面的知识不够扎实,无法作为建议。我已经做了一些GL工作(和许多核心图像),我认为您的建议是好的,但我想为有人提供更好的解决方案敞开大门。:-)