Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.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
Iphone 如何将地图视图添加到OpenGL ES视图?_Iphone_Ios_Opengl Es - Fatal编程技术网

Iphone 如何将地图视图添加到OpenGL ES视图?

Iphone 如何将地图视图添加到OpenGL ES视图?,iphone,ios,opengl-es,Iphone,Ios,Opengl Es,我正在使用OpenGL ES制作一个3D iOS应用程序。我已经创建了一个方形框架,可以渲染到我的OpenGL ES上下文中 如何将地图视图添加到此方形框架?我希望能够对这张地图应用三维效果 我尝试将地图添加为OpenGL ES宿主视图的子视图,但没有看到任何3D效果应用于它。我做错了什么?我想你可能做错了。首先,所有OpenGL ES渲染在CaeAglayer中都是自包含的,因此您不能仅仅添加子视图并期望它成为场景的一部分。OpenGL ES内容将在一个平面层中进行渲染,在其上添加的任何内容都

我正在使用OpenGL ES制作一个3D iOS应用程序。我已经创建了一个方形框架,可以渲染到我的OpenGL ES上下文中

如何将地图视图添加到此方形框架?我希望能够对这张地图应用三维效果


我尝试将地图添加为OpenGL ES宿主视图的子视图,但没有看到任何3D效果应用于它。我做错了什么?

我想你可能做错了。首先,所有OpenGL ES渲染在CaeAglayer中都是自包含的,因此您不能仅仅添加子视图并期望它成为场景的一部分。OpenGL ES内容将在一个平面层中进行渲染,在其上添加的任何内容都将堆叠在该层上

您可以抓取地图视图的图像,将其转换为纹理,然后将该纹理上载到OpenGL场景中,但这可能会有糟糕的性能,我认为您无法保持用户与地图的交互

如果您只是尝试为地图提供透视效果,则可以使用核心动画CATTransferM3D在三维中旋转地图视图并对其应用透视效果。请参阅我的答案,了解如何实现这一目标的示例。为此使用核心动画所需的代码远远少于OpenGL ES