Ich habe diese images und wenn ich sie packe kommen sie in der falschen Reihenfolge, wie die letzten 7 Bilder oder so nach vorne gehen und das vermasselt alles für mich und ich weiß nicht einmal warum. Ich habe Bilder gepackt vorher ohne Probleme.Warum LibGdx Texturpacker Bilder nicht in Reihenfolge verpackt?
Antwort
TexturePacker speichert Regionen nicht in einer bestimmten Reihenfolge, es sei denn, Sie geben diese Reihenfolge mithilfe von Indizes an, die an die Dateinamen angehängt sind. Die beabsichtigte Art und Weise eine Animation zu packen und abzurufen ist wie folgt:
1) Nennen Sie die Quellbilder mit ihren Rahmennummern angehängt, zum Beispiel:
run1.png, run2.png, run3.png, etc.
2) Packen Sie sie mit TexturePacker.
3) Nach dem Laden der TextureAtlas, rufen Sie eine Reihe von Regionen nach Namen. Beispiel:
Die abgerufenen Bereiche werden in der Reihenfolge der Bildnummern angezeigt, die sich in den Quelldateinamen befanden.
Ich habe alle Bilder genau so wie du gepostet: vn1.png, vn2.png ..., aber wenn ich mir mein textureAtlas pack anschaue, fängt es an wie vn7, vn8, vn9, vn10, vn6, vn3, vn4, vn5:/ –
Haben Sie die Standardeinstellungen des Texturpackers geändert? Es gibt einen namens useIndices, der wahr bleiben soll. Oder vielleicht erinnere ich mich falsch und Sie brauchen auch einen Unterstrich vor diesen Zahlen in den Dateinamen. – Tenfour04
Ich kann keine Verwendungsindizes sehen, oder meinst du Aliase verwenden? Ich habe viele verschiedene Einstellungen ausprobiert, aber immer noch nichts. Ich hatte einen Link in meinem Post eingefügt, wo die Bilder sind, die ich packen möchte. –
Warum ist die Bestellung wichtig? Die Reihenfolge ist völlig willkürlich, da der Packer versucht, die Größe des Packerbildes zu optimieren. Wie erhalten Sie die Bilder? – Tenfour04
Ich lese sie mit diesem 'batch2.draw (animation.getKeyFrame (elapsedTime, false), -6.3f, -5.1f, 2f, 3f);' mit einem Timer ab –
ich meine, wie Sie die Textur Regionen aus dem abrufen Atlas. – Tenfour04