2008-12-08 6 views
5

Le développement de l'iPhone a été ma première expérience avec xcode, objectif-c et première expérience approfondie. Dans quelle mesure serait-il difficile de porter une application iPhone openGLES sur le bureau OSX en utilisant OpenGL? Je ne pose pas de question sur l'interface utilisateur - il n'y a évidemment pas d'équivalent à l'interface utilisateur tactile de cacao sur le bureau. Je demande spécifiquement sur les couches de délégué d'application et d'openGLES. Y a-t-il des obstacles majeurs? Est-ce aussi simple que de simplement créer un nouveau délégué d'application dans un projet de type cacao?Porting iPhone app openGLES à OSX?

Répondre

8

J'ai commencé à chercher exactement la même chose, et il semble que les applications lourdes OpenGL seraient parmi les plus faciles à rétroporter vers le Mac. Presque tout dans OpenGL ES est présent dans OpenGL sur le bureau (à l'exception de certaines choses à point fixe), de sorte que le code peut rester le même.

La façon dont OpenGL est géré sur l'iPhone est via une couche d'animation de base (CAEAGLLayer), plutôt qu'une vue spécifique. Par conséquent, vous devriez être capable de transférer cela à une application de bureau basée sur Leopard, bien que vous deviez convertir toutes les références aux classes EAGL en leur équivalent OpenGL (EAGLContext en NSOpenGLContext, par exemple). Vous pouvez rendre dans un CAOpenGLLayer affiché seul ou utiliser cette couche pour sauvegarder un NSView personnalisé. La structure fondamentale d'une application Cocoa de bureau sera différente de celle d'une application Cocoa Touch, mais vous devriez pouvoir commencer à partir de l'un des modèles Xcode et rajouter dans vos composants de l'application Cocoa Touch.

Encore une fois, je n'ai pas encore fait cela pour mon application, mais il semble raisonnablement simple.

Questions connexes