2012-04-10 4 views
3

Ich war auf dieser Seite für eine lange Zeit und das ist meine erste Zeit, um eine Frage zu stellen. Ich werde versuchen, so beschreibend wie möglich zu schreiben, wie ich hoffe, dass jemand über dieses merkwürdige Verhalten, das ich habe, antworten kann.Cocos2d App funktioniert auf allen Geräten außer iPhone 4 (jedes Betriebssystem) mit CCBatchnode zeigt nur schwarzen Bildschirm nach addchild

Ich habe einen App-Anruf Linsanity Rush für iPhone entwickelt und ich habe auf iPhone Simulator (normal/Retina), iPad Simulator, iPad2 iOS 5.0.1, iPhone 4S getestet und alles funktioniert gut. Allerdings beschweren sich einige Nutzer von iPhone 4 über das Spiel, das nur einen schwarzen Bildschirm zeigt, mit Ausnahme der Stummschaltungs- und Pause-Taste nach dem Klicken auf die Start-Schaltfläche.

Xcode Version ist 4.2.1 Mac Version 10.7.2 Cocos2d Version cocos2d v2.0.0-beta

ich über diese auf verschiedenen OS auf dem iPhone getestet haben 4 und alle das gleiche Problem. Ich habe meinen Code überprüft und festgestellt, dass die Grafik, die ich mit dem CCBatchnode hinzufüge, nur einen schwarzen Bildschirm zeigt. Dies erklärt, warum die Benutzer nur die Schaltfläche zum Stummschalten und Pausieren sehen können, da diese zwei Schaltflächen nicht addChild sind, indem sie CCBatchnode verwenden.

Weitere Informationen zu diesem Problem, ich bin mir nicht sicher ist es der CCBatchNode Problem, weil ich CCBatchNode im Hauptmenü auch verwendet haben und das iPhone 4 Benutzer können die Bilder im Hauptmenü nur Problem sehen treten auf, wenn sie in das Spiel gehen, das sich auf einer anderen Quelldatei befindet und ich die Szene durch ein Spielspiel ersetze.

Allerdings habe ich lange im Internet gesucht und kann nichts Fehler finden, die mir ähnlich sind, die nur auf dem iPhone 4 passieren. Jeder, der weiß, wie das zu lösen, bitte helfen Sie mir. Ich bin bereit, mehr Informationen auf Anfrage zur Verfügung zu stellen. Ich habe überhaupt keine Ahnung, was das verursachen würde, also weiß ich nicht, welchen Teil des Quellcodes ich hier posten sollte. Danke im Voraus!

+0

CCBatchNode kann nur eine Textur verwenden. Versuchen Sie, dem Stapel Sprites aus verschiedenen Texturen hinzuzufügen? –

+0

@Matisse: dies würde behaupten und würde das Problem auf jedem Gerät verursachen. Ich denke nicht, dass es das ist. – LearnCocos2D

+0

ja, guter Punkt –

Antwort

1

Ich habe die Antwort für dieses Problem gefunden. Zuvor habe ich nur mit Iphone 4S und iPad2 getestet. Wenn ich mit Test iPhone 4 und 3GS, bekomme ich die Meldung in XCode zeigt, dass:

cocos2d: WARNUNG: Bild (1024 x 4096) ist größer als die unterstützte 2048 x 2048.

ist dies, weil, wenn ich Ich möchte das iPhone 3GS oder iPhone 4 unterstützen, das Bild, das ich mit Zwoptex erstelle, kann nicht größer sein als (2048 x 2048) (Das, das ich momentan verwende, ist 4096 x 4096). Ich habe das gelöst, indem ich mehrere Spritesheets erstellt habe und die Bilder in kleinere Listen unterteile.

Hoffentlich, wenn es jemanden gibt, der das gleiche Problem hat, weiß, wie man das löst.