2013-04-19 17 views
6

Ist es möglich, eine App Misch UIViewController und iOS spezifischen API-Elemente mit Cocos2D Ansichten zu entwickeln?Mischen iOS UIKit und Cocos2d

Eine Cocos2D App läuft auf einem UIView und daher denke ich, dass es möglich ist, zwischen einer Ansicht (Cocos2D) und einer anderen (iOS) zu wechseln, ist das korrekt? Gibt es gute Beispiele für Apps, die das tun?

Die Kernidee ist es, einige grafische Animationen mit Cocos2D und andere mit UIKit zu entwickeln.

+2

Die besten Tutorials, die ich gefunden online: 1. [Ray Wenderlich] (http://www.raywenderlich.com/4817/how-to-integrate-cocos2d-and-uikit) 2. [Paul Cezanne] (http: //www.notthepainter.com/full-cocos2d-uikit-integration/) 3. [TinyTimGames] (http://www.tinytimgames.com/2012/02/07/cocos2d-and-storyboards/#comment-707108201) – user1459524

+0

Jemand hat die Antwort, überprüfen Sie diesen Link. http://stackoverflow.com/questions/5566055/integrating-cocos2d-with-uikit – Nasri

+0

Ja, es ist möglich, aber was ich finde, macht es interessant oder herausfordernd ist, dass die UIKit-Ansichten normalerweise die Cocos2D-Ansicht überlagern, so dass sie verdecken können was Sie versuchen zu animieren, es sei denn, Sie sind vorsichtig bei der Konfiguration Ihrer UIKit-Objekte. Ich verwende eine Klasse, um UIKit-Objekte wie Tabellen, Textfelder usw. zu umbrechen, aber ich verwende Cocos2D für den Großteil des UX. Ich verwende UIKit nur, wenn es Funktionalität bietet, die ich in Cocos2D nicht einfach reproduzieren kann. – PKCLsoft

Antwort

0

Eigentlich können Sie jede UIView als Subview CCDirector.sharedDirector().view jederzeit in einer Cocos2D laufenden App hinzufügen. ist für die Erstellung von Menüs und andere UI in UIKit und Laufspielszene mit Cocos2D

ich wette, der einzige Grund, warum sollten Sie wirklich Cocos2D und UIKit mischen. Um das zu tun, können Sie einfach einen Ort finden, an dem Cocos2D initialisiert wird, und ihn durch Ihre eigenen UIKit-Dinge ersetzen. Dann können Sie eine Cocos2D-Szene mit dem Code, den Sie ersetzt haben, überall ausführen. Wenn Sie wollen, dass das Verfahren die Sie suchen, ist

- (void) setupCocos2dWithOptions:(NSDictionary*)config 
0

Vielleicht mit SpriteKit betrachten, da es nicht die Bilanz Ihrer App steigern und ist bereits in einem sehr brauchbaren Zustand. Es verwendet die gleichen Konzepte wie cocos2d, was es für Sie sehr einfach macht, wenn Sie cocos2d bereits kennen. Auch passt es besser in die UIKit-Umgebung.