OpenGL ES和默认iPhone UI组件

gab*_*m10 2 iphone opengl-es objective-c ios

所以我对桌面平台上的OpenGL很有经验,并且正在尝试将它与我的iOS开发经验集成.我已经创建了几个大型iOS应用程序,所以我也很好地理解了这个过程.我想知道是否有人知道将iOS UI组件与OpenGL场景集成的任何有用技术,或者甚至可能.如果这是一般性的,我道歉.如有必要,我可以改进它.

例如,假设您有一个iPad应用程序,左侧有一个表和诸如此类的东西,并且您想要在右侧添加一个小的3D OpenGL窗口.(也许是用户可以与之交互的图表或其他内容?)这不适用于游戏或其他任何内容,但更多的是我对如何顺利集成不同平台的理解.任何社区可以提供的建议或链接将不胜感激.提前致谢!

Til*_*ill 6

GL-Views不必覆盖整个屏幕.一个很好且非常容易理解的例子是iOS SDK中的sound = recorder SpeakHere iphone应用程序.

此示例使用小型GL-View显示音频信号的峰值电平表; GLLevelMeter.

希望这可以帮助...

  • 为了扩展Till的答案,OpenGL通过CAEAGLLayer显示; 通常,您创建一个自定义UIView子类,并将CAEAGLLayer指定为layerClass.你拥有的是一个普通的UIView,你可以把它放在你想要的任何地方,根据任何绘图层次结构,在任何其他类型的UIView周围/上方/下方,你可以绘制OpenGL内容.如果您正在编写游戏,您通常会使该视图成为唯一的东西,并使用CADisplayLink为您提供刷新连接的更新计时器,但两者都不是必需的. (7认同)