Ich brauche einige Empfehlungen, wie Sie besser mit den gleichen Sprites mit Cocos2d arbeiten.Arbeiten mit den gleichen Sprites mit Cocos2d
So verbessern Sie die Anwendungsleistung und Speichernutzung mit mehr als 10 exakt die gleichen Sprites auf dem Bildschirm.
Die einzige Verbesserung, die ich gefunden habe, ist sie nicht wieder in dem Speicher zu laden, aber so etwas wie diese CCSprite *newSprite = [CCSprite spriteWithTexture:[oldSprite texture]];
* CCBatchnode, Sie können nur 1 Bild in den Texturspeicher laden und wiederverwenden. * Ist es nicht das ** selbe ** was mache ich? Ich habe Array mit gebräuchlichen Texturen erstellt und dann ein neues Sprite mit [CCSprite spriteWithTexture: [** needTextureSprite texture **]]; – Buron
CCBatchnode behandelt alle Zeichenmethoden für alle untergeordneten Elemente. CCSprite macht etwa 6 Draw-Methoden pro Sekunde, CCBatchnode 10, wenn Sie jedoch 10 CCSprites haben, das sind 60 Draw-Methoden, wobei 10 CCSprites Kinder von CCBatchnode sind, haben Sie immer noch nur 10 Draw-Methoden aufgerufen. Es ist viel schneller. Sie können einfach ein Sprite mit [CCSprite spriteWithSpriteFrameName: @ "myFrame.png"] aufrufen, es ist schneller und einfacher imo. Wenn Sie unbedingt SpriteWithTexture verwenden müssen, vergessen Sie nicht, den Anzeigerahmen einzustellen. Drill down in SpriteWithTexture: Überprüfen Sie, was es tut. – Bongeh
Aha, danke wirklich für eine Erklärung! – Buron