2008-12-08 102 views
5

开发iPhone是我第一次使用objective-c和第一次使用xcode的经验。使用openGL将openGLES iPhone应用程序移植到OSX桌面有多困难?我不是在询问用户界面 - 显然在桌面上没有与可可触摸UI相同的功能。我正在具体询问应用程序委托和openGLES图层。有什么重大障碍吗?是否像在可可类型的项目中创建新的应用程序委托一样简单?将iPhone openGLES应用程序移植到OSX上?

回答

8

我已经开始研究同样的事情,而且似乎OpenGL重量级的应用程序将是最容易恢复到Mac的应用程序之一。 OpenGL ES中的所有东西都存在于桌面上的OpenGL中(除了一些定点内容外),因此代码可以保持不变。

OpenGL在iPhone上处理的方式是通过核心动画层(CAEAGLLayer)而不是特定的视图。因此,尽管您需要将所有对EAGL类的引用转换为OpenGL等效(例如,EAGLContext到NSOpenGLContext),但您应该可以将其转换为基于Leopard的桌面应用程序。你可以渲染成自己显示的CAOpenGLLayer,或者使用该图层来支持自定义的NSView。

桌面Cocoa应用程序的基本结构与Cocoa Touch不同,但您应该可以从其中一个Xcode模板开始,并从Cocoa Touch应用程序中重新添加到您的组件中。

同样,我还没有为我的应用程序做过这件事,但它看起来很合理简单。

相关问题