如何在GLKViewController iPhone OpenGLES中设置背景图像?

时间:2012-04-06 05:01:30

标签: ios image opengl-es background

我在iPhone上使用OpenGL绘制一条线。我使用GLViewGLKView个委托来绘制线条。但现在我想将背景图像设置为GLKViewController,在背景图像上,我想绘制线条。我尝试使用UIImageView设置背景图片,但图片显示在(GLKView)绘制线上方。

如何将背景图像设置为GLKViewController

2 个答案:

答案 0 :(得分:1)

最简单的方法应该是添加带有背景图像的附加视图(例如你提议的 - 但是你需要在OpenGL视图后面设置它)。试试这个:

[RootViewController.view addSubview: BackgroundView belowSubview: OpenGLView];
OpenGLView.opaque = NO;

但这会带来一些FPS惩罚(Apple出于性能原因建议使用不透明的OpenGL视图)。更正确的方法是通过OpenGL绘制背景作为全屏四边形。

答案 1 :(得分:0)

我只是想声明接受的答案非常糟糕......即使在较新的设备(iPhone 5,iPad 2和更新版本)上,通过关闭不透明,你几乎可以立即失去20fps。性能损失是可怕的,不应掉以轻心。

您可以在OpenGL中设置背景并保持不透明。将UIImage转换为OpenGL纹理并渲染它。根据您的OpenGL环境,这可以通过多种方式轻松完成。