我在iPhone上使用OpenGL绘制一条线。我用GLView
和GLKView
代表画线。但是现在我想将背景图像设置为GLKViewController
,并且在背景图片上,我想绘制线条。我曾尝试使用UIImageView
设置背景图像,但图像出现在(GLKView
)绘制线上。如何在GLKViewController iPhone OpenGLES中设置背景图片?
如何设置背景图像到GLKViewController
?
我在iPhone上使用OpenGL绘制一条线。我用GLView
和GLKView
代表画线。但是现在我想将背景图像设置为GLKViewController
,并且在背景图片上,我想绘制线条。我曾尝试使用UIImageView
设置背景图像,但图像出现在(GLKView
)绘制线上。如何在GLKViewController iPhone OpenGLES中设置背景图片?
如何设置背景图像到GLKViewController
?
最简单的方法应该是添加额外的视图和背景图片(比如你提出的 - 但你需要将它设置在OpenGL视图之后)。试试这个:
[RootViewController.view addSubview: BackgroundView belowSubview: OpenGLView];
OpenGLView.opaque = NO;
但是这会带来一些FPS的惩罚(Apple建议使用不透明的OpenGL视图来提高性能)。更正确的方法是通过OpenGL将背景画成全屏四元组。
我只是想说明接受的答案是非常糟糕的......即使在较新的设备(iPhone 5,iPad 2 &较新版本)中,您将通过关闭不透明而丢失几乎立即的20fps。表现的惩罚是可怕的,不应掉以轻心。
您可以在OpenGL中设置背景并保持不透明。将UIImage转换为OpenGL纹理并进行渲染。根据您的OpenGL环境,这可以通过多种方式轻松完成。