Als ich sah sich nach Informationen über spritekit Texturen und ich auf diesem Zitat gestolpert:Rendern Sie Knoten in Einzelzeichnung mit Spritekit?
Wenn alle Kinder eines Knotens die gleichen Mischmodus und Texturatlas verwenden, können Sprite Kit in der Regel diese zeichnen Sprites in einem einzigen Zeichnungsdurchlauf. Wenn andererseits die untergeordneten Elemente so organisiert sind, dass sich der Zeichenmodus für jedes neue Sprite ändert, kann Sprite Kit als ein Zeichnungsdurchlauf pro Sprite ausgeführt werden, was ziemlich ineffizient ist.
Aber check this out:
Fliesen mit derselben Struktur (ich versichern Sie, es ist eine Textur, nicht nur eine Farbe)
Fliesen mit ihrer eigenen Textur
Die Zeichenzählung hat einen Unterschied von 40, obwohl alle verwendeten Texturen aus demselben Atlas stammen.
Interpretiere ich das Wort "Atlas" falsch?
Dies ist, wo ich meine Bilder speichern:
Ist mein Beispiel eine ‚Texturatlas‘, oder ist die Definition von ‚Atlas‘ hier eine einzige .png, die benötigt, um alle Bilder enthält, und einzelne Fliesen werden davon geschnitten?
Oder liegt das Problem wahrscheinlich daran, wie ich lade/etwas anderes?
Danke!
Hm, das funktioniert immer noch nicht. Die Sprite-Knoten sind Kinder von Knoten, nicht von der Szene, ist das das Problem? Keiner von ihnen hat Kinder. EDIT: Ich bin ein IDIOT. Einer meiner Kacheltypen bezog sich auf ein Bild im Bilderordner ... Und dieses eine Plättchen vermasselte es. Es war zufällig meine feste Bodenfliese ... – IAmTheAg
Um ... hilf mir mit einer weiteren Sache. Das Laden von Texturen auf diese Weise scheint unglaublich ineffizient zu sein.Das Initialisieren von Sprites dauert für mich jetzt viel länger, da die Kachelkarte ständig durchlaufen und generiert werden muss. Was ist der schnellste Weg, um ein solches Sprite zu initialisieren? – IAmTheAg
Nun, wenn Sie die ..imageNamed: -Methode viel (sowohl für Sprite und Textur/Texturatlas) ausführen, die möglicherweise viel Aufwand verursachen. Für meine Karte halte ich sowohl den Atlas in einem starken Ref, als auch die Texturen in einem Array (indiziert durch GID) für schnellen Zugriff. Sehen Sie sich den Tilemap-Renderer im Kobold-Kit an. – LearnCocos2D