Erstellen einer Maschen programmatisch für eine Kachel-basierte 2D-Spiel - Unity Antworten

Derzeit erstelle ich eine programmatisch tilebased Mesh. Der Benutzer kann die Fliesen (Ort oder sie zerstört) bearbeitet im Spiel. Die Fliesen sind alle Plätze, so dass ich für die linke Seite der nächsten die Ecken von der rechten Seite von einer Kachel wiederverwenden. Auf diese Weise kann ich die Ecken in der Masche auf 1/4 reduzieren. Aber jetzt stehe ich ein Problem mit diesem, während einer Textur auf das Netz der Anwendung:

Die Textur ist ein spritemap, so die UVS bestimmen, welche die Kachel Sprite haben. Es funktioniert gut für einzelne Kacheln, sondern führt zu einem Problem, wenn einige Ecken wiederverwendet werden. Zum Beispiel gehört ein vertice gekachelt 1 als die rechte untere Ecke und Fliesen 2, wie die linken untere Ecke. Die Textur enthält nur ein Sprite für dieses Beispiel. Nun würden beide Fliesen müssen verschiedene UV-Koordinaten für die gleiche vertice (Fliese 1 müßte (1, 0) und Fliesen 2 (0, 0).

Gerade jetzt ich denke, dass es unmöglich ist, die Ecken wieder zu verwenden, aber unterschiedliche uvs haben. So gibt es zwei Möglichkeiten zur Verfügung:

a) nicht wieder verwenden Ecken. Dies würde so viele Ecken im Netz zu viermal führen. Ich habe auf dem Bildschirm 5000 Kacheln, also 20.000 Ecken und uvs müssen gespeichert werden. Ich weiß nicht, wie viel diese Leistung / RAM-Auslastung beeinflusst.

b) Sie keine spritemap verwenden, sondern eine Textur stattdessen bauen. Mit diesem Ansatz würde ich eine Textur für jeden Chunk erstellen und male sie mit den Pixeln von der spritemap. Mit 5000 Fliesen würde ich nur noch um 1250 Eckpunkte / uv ist (okay, einige mehr, weil Eckpunkte zur Zeit nicht zwischen Chunks geteilt), aber ich hatte die Textur neu zu zeichnen, wenn der Benutzer die Karte ändert. Es wäre „nur“ wirkt sich auf die tatsächlichen bearbeitete Brocken und es ist direkte Nachbarn. Auch hier weiß ich nicht, wie die Auswirkungen auf die Leistung / RAM-Auslastung ist.

In Verbindung stehende Artikel