Wie man eine 2D-Kachel-Engine Unity Antworten machen

Ich bin ganz neu mit Unity, und ich versuche, mein 2D-C ++ Jump'n'Run Spiel auf Unity für eine Reihe von Gründen zu konvertieren.

Die Ebenen in meinem Platformer bestehen aus einer beliebigen Menge 32x32 Kacheln und Ebenen mit einem benutzerdefinierten Level-Editor gebaut ich auch in C ++ gemacht, wo der Benutzer Fliesen malen kann das Level zu bauen.

Nach der Verwendung von Unity für ein wenig, ich erkennen, dass es nicht ohne weiteres ersichtlich ist, wie ein Kachel-System zu erstellen. Mein erster Gedanke wäre für jede Kachel eine Ebene Prefab zu machen, und duplizieren sie alle über die Szene, um die Ebene zu schaffen, aber ich denke, das sowohl für die Leistung sehr ineffizient wäre, und den Aufbau tatsächlich das Niveau (korrigieren Sie mich, wenn ich falsch ).

Die einzige andere Art, wie ich denken kann, ist Rendering manuell jede Kachel (und meine eigene Kachel Editor zu erstellen und ein wenig wie ich in der C ++ Version meines Spiels tat, das relativ gute Leistung hatte). Allerdings bin ich mir nicht sicher, wie dies zu tun mit Scripting zu gehen. In 2D-C ++, ziehe ich einfach ein Bitmap auf den Bildschirm mit einem einzigen Funktionsaufruf, aber der Einheit beinhaltet Kameras, Texturen, Flugzeuge. (Zeichnen Sie alle Fliesen auf einer Ebene und die Ebene ziehen?)

Meine aktuelle Idee ist folgende: eine Kachel-Editor-Design (erweitert Einheit mit einem Editor Skript zum Beispiel), die Platte Kartendaten zu bauen, und dann einen Skript erstellen, Graphics.DrawTexture () ruft jede Kachel auf den Bildschirm zu zeichnen. aber ich denke, das overtop von allem (wie ein GUI) ziehen würde, wäre es nicht?

Jede Beratung zu diesem Thema wäre sehr geschätzt!

In Verbindung stehende Artikel