Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

TileMaps verwenden

Siehe auch

Diese Seite setzt voraus, dass Sie bereits ein TileSet erstellt oder heruntergeladen haben. Wenn nicht, lesen Sie bitte zuerst TileSets verwenden, da Sie ein TileSet benötigen, um eine TileMap zu erstellen.

Einführung

Eine Tilemap ist ein Raster aus Tiles, das für das Layout eines Spiels verwendet wird. Die Verwendung von TileMap-Nodes für die Gestaltung von Levels hat mehrere Vorteile. Erstens ermöglichen sie es, das Layout zu zeichnen, indem man die Tiles auf ein Gitter "malt", was viel schneller ist, als einzelne Sprite2D-Nodes einzeln zu platzieren. Zweitens ermöglichen sie viel größere Levels, da sie für das Zeichnen einer großen Anzahl von Tiles optimiert sind. Schließlich können Sie den Tiles Kollisions-, Okklusions- und Navigations-Shapes hinzufügen, was der TileMap eine größere Funktionalität verleiht.

Festlegen des TileSet in der TileMap

Wenn Sie die vorherige Seite zu TileSets verwenden durchgearbeitet haben, sollten Sie eine TileSet-Ressource haben, die in den TileMap-Node eingebaut ist. Dies ist gut für Prototypen, aber in einem realen Projekt werden Sie in der Regel mehrere Levels haben, die das gleiche Tileset verwenden.

Um dasselbe TileSet in mehreren TileMap Nodes wiederzuverwenden, wird empfohlen, das TileSet in einer externen Ressource zu speichern. Klicken Sie dazu auf das Dropdown-Menü neben der TileSet-Ressource und wählen Sie Speichern:

Speichern der integrierten TileSet-Ressource in einer externen Ressourcendatei

Speichern der integrierten TileSet-Ressource in einer externen Ressourcendatei

Erstellen von TileMap-Ebenen

Ab Godot 4.0 können Sie mehrere Layer in einem einzigen TileMap-Node unterbringen. So können Sie zum Beispiel Vordergrund-Tiles von Hintergrund-Tiles unterscheiden, um die Organisation zu verbessern. Sie können eine Tile pro Layer an einer bestimmten Stelle platzieren, was es Ihnen ermöglicht, mehrere Tiles zu überlappen, wenn Sie mehr als einen Layer haben.

Standardmäßig hat ein TileMap-Node automatisch eine vorgefertigte Ebene. Sie müssen keine zusätzlichen Ebenen erstellen, wenn Sie nur eine einzige Ebene benötigen. Wenn Sie dies jedoch jetzt tun möchten, wählen Sie den TileMap-Node und klappen Sie den Abschnitt Ebenen im Inspektor auf:

Erstellen von Ebenen in einem TileMap-Node (Beispiel mit "Hintergrund" und "Vordergrund")

Erstellen von Ebenen in einem TileMap-Node (Beispiel mit "Hintergrund" und "Vordergrund")

Jede Ebene hat mehrere Propertys, die Sie anpassen können:

  • Name: Ein menschenlesbarer Name, der im TileMap-Editor angezeigt wird. Dies kann etwas wie "Hintergrund", "Gebäude", "Vegetation" usw. sein.

  • Aktiviert: Wenn true, ist die Ebene im Editor und beim Ausführen des Projekts sichtbar.

  • Modulieren: Die Farbe, die als Multiplikator für alle Tiles auf der Ebene verwendet wird. Dieser wird auch mit der Property Modulieren pro Tile und der Property Modulieren des TileMap-Nodes multipliziert. So können Sie zum Beispiel die Hintergrund-Tiles abdunkeln, um die Vordergrund-Tiles stärker hervorzuheben.

  • Y-Sortierung aktiviert: Wenn true, werden die Tiles anhand ihrer Y-Position auf der TileMap sortiert. Dies kann verwendet werden, um Sortierprobleme bei bestimmten Tile-Setups zu vermeiden, insbesondere bei isometrischen Tiles.

  • Y-Sortierungsursprung: Der vertikale Offset, der für die Y-Sortierung auf jeder Tile verwendet wird (in Pixel). Nur wirksam, wenn Y-Sortierung aktiviert auf true steht.

  • Z Index: Steuert, ob diese Ebene vor oder hinter anderen TileMap-Ebenen gezeichnet wird. Dieser Wert kann positiv oder negativ sein; die Ebene mit dem höchsten Z-Index wird über den anderen Ebenen gezeichnet. Wenn mehrere Ebenen die gleiche Z-Index-Property haben, wird die Ebene, die letzte in der Liste der Ebenen ist (diejenige, die in der Liste ganz unten steht), oben gezeichnet.

Sie können die Ebenen neu anordnen, indem Sie das Icon mit den "drei horizontalen Balken" links neben den Einträgen im Abschnitt Ebenen per Drag-and-Drop verschieben.

Bemerkung

Sie können in Zukunft Ebenen erstellen, umbenennen oder neu anordnen, ohne dass sich dies auf die vorhandenen Tiles auswirkt. Seien Sie jedoch vorsichtig, denn beim Entfernen einer Ebene werden auch alle Tiles entfernt, die auf der Ebene platziert waren.

Öffnen des TileMap-Editors

Wählen Sie den Node TileMap aus und öffnen Sie das TileMap-Panel am unteren Rand des Editors:

Öffnen des TileMap-Panels am unteren Rand des Editors. Der TileMap-Node muss zuerst ausgewählt werden.

Öffnen des TileMap-Panels am unteren Rand des Editors. Der TileMap-Node muss zuerst ausgewählt werden.

Auswahl der Kacheln zum Malen

Wenn Sie oben zusätzliche Ebenen erstellt haben, stellen Sie zunächst sicher, dass Sie die Ebene ausgewählt haben, auf der Sie malen möchten:

Auswählen einer Ebene zum Malen im TileMap-Editor

Auswählen einer Ebene zum Malen im TileMap-Editor

Tipp

Im 2D-Editor werden die Ebenen, die Sie gerade nicht über denselben TileMap-Node bearbeiten, im TileMap-Editor ausgegraut angezeigt. Sie können dieses Verhalten deaktivieren, indem Sie auf das Icon neben dem Ebenenauswahlmenü klicken (Tooltip Ausgewählte TileMap-Ebene hervorheben).

Sie können den obigen Schritt überspringen, wenn Sie keine zusätzlichen Ebenen erstellt haben, da die erste Ebene automatisch ausgewählt wird, wenn Sie den TileMap-Editor aufrufen.

Bevor Sie Tiles im 2D-Editor platzieren können, müssen Sie eine oder mehrere Tiles im TileMap-Panel am unteren Rand des Editors auswählen. Klicken Sie dazu auf eine Tile im TileMap-Panel, oder halten Sie die Maustaste gedrückt, um mehrere Tiles auszuwählen:

Auswählen einer Tile im TileMap-Editor durch Anklicken

Auswählen einer Tile im TileMap-Editor durch Anklicken

Tipp

Wie in den 2D- und TileSet-Editoren können Sie mit der mittleren oder rechten Maustaste über das TileMap-Panel schwenken und mit dem Mausrad oder den Schaltflächen in der oberen linken Ecke zoomen.

Sie können auch Umschalt gedrückt halten, um zur aktuellen Auswahl hinzuzufügen. Wenn Sie mehr als eine Tile auswählen, werden jedes Mal, wenn Sie einen Malvorgang durchführen, mehrere Tiles platziert. Dies kann verwendet werden, um Strukturen, die aus mehreren Tiles bestehen, mit einem einzigen Klick zu malen (z. B. große Plattformen oder Bäume).

Die endgültige Auswahl muss nicht zusammenhängend sein: Wenn es leeren Raum zwischen den ausgewählten Tiles gibt, wird dieser in dem Muster, das im 2D-Editor gemalt wird, leer gelassen.

Auswählen mehrerer Tiles im TileMap-Editor durch Gedrückthalten der linken Maustaste

Auswählen mehrerer Tiles im TileMap-Editor durch Gedrückthalten der linken Maustaste

Wenn Sie in Ihrem TileSet alternative Tiles erstellt haben, können Sie diese zum Malen rechts neben den Basis-Tiles auswählen:

Auswählen einer alternativen Tile im TileMap-Editor

Auswählen einer alternativen Tile im TileMap-Editor

Schließlich können Sie, wenn Sie eine Szenensammlung im TileSet erstellt haben, Szenen-Tiles in der TileMap platzieren:

Platzieren einer Tile mit Partikeln mit dem TileMap-Editor

Platzieren einer Tile mit Partikeln mit dem TileMap-Editor

Malmodi und Tools

Über die Toolbar am oberen Rand des TileMap-Editors können Sie zwischen verschiedenen Malmodi und Werkzeugen wählen. Diese Modi wirken sich auf die Bedienung beim Klicken im 2D-Editor aus, nicht auf das TileMap-Panel selbst.

Von links nach rechts können Sie zwischen folgenden Malmodi und Werkzeugen wählen:

Auswahl

Wählen Sie Tiles aus, indem Sie auf ein einzelnes Tile klicken, oder indem Sie die linke Maustaste gedrückt halten, um mehrere mit einem Rechteck im 2D-Editor auszuwählen. Beachten Sie, dass leerer Raum nicht ausgewählt werden kann: Wenn Sie eine rechteckige Auswahl erstellen, werden nur nicht leere Tiles ausgewählt.

Um eine Tile an die aktuelle Auswahl anzuhängen, halten Sie Umschalt und wählen Sie eine Tile aus. Um aus der aktuellen Auswahl zu entfernen, halten Sie Strg und wählen dann eine Tile aus.

Die Auswahl kann dann in jedem anderen Malmodus verwendet werden, um schnell Kopien eines bereits platzierten Musters zu erstellen.

Sie können die ausgewählten Tiles aus der TileMap entfernen, indem Sie Entf drücken.

Sie können diesen Modus im Malmodus vorübergehend umschalten, indem Sie Strg halten und dann eine Auswahl treffen.

Tipp

Sie können bereits platzierte Tiles kopieren und einfügen, indem Sie eine Auswahl treffen, Strg + C drücken und dann Strg + V. Die Auswahl wird mit einem Linksklick eingefügt. Sie können Strg + V ein weiteres Mal drücken, um weitere Kopien auf diese Weise durchzuführen. Klicken Sie mit der rechten Maustaste oder drücken Sie Esc, um das Einfügen abzubrechen.

Malen

Im Default-Malmodus können Sie Tiles durch Klicken oder Gedrückthalten der linken Maustaste platzieren.

Wenn Sie mit der rechten Maustaste klicken, wird die aktuell ausgewählte Tile aus der Tilemap gelöscht. Mit anderen Worten: Sie wird durch leeren Raum ersetzt.

Wenn Sie mehrere Tiles in der TileMap oder mit dem Auswahlwerkzeug ausgewählt haben, werden sie jedes Mal platziert, wenn Sie mit der Maus klicken oder ziehen, während Sie die linke Maustaste gedrückt halten.

Tipp

Im Malmodus können Sie eine Linie zeichnen, indem Sie Umschalt halten, bevor Sie die linke Maustaste gedrückt halten, und dann die Maus zum Endpunkt der Linie ziehen. Dies ist identisch mit der Verwendung des unten beschriebenen Linienwerkzeugs.

Sie können ein Rechteck auch zeichnen, indem Sie Strg und Umschalt gedrückt halten, bevor Sie die linke Maustaste drücken, und dann die Maus zum Endpunkt des Rechtecks ziehen. Dies ist identisch mit der Verwendung des unten beschriebenen Rechteckwerkzeugs.

Schließlich können Sie im 2D-Editor vorhandene Tiles auswählen, indem Sie Strg halten und dann auf eine Tile klicken (oder die Maus halten und ziehen). Dadurch werden die aktuell gemalten Tiles durch die Tiles ersetzt, die Sie gerade angeklickt haben. Dies ist identisch mit der Verwendung des unten beschriebenen Picker-Werkzeugs.

Linie

Wenn Sie den Linienmalmodus ausgewählt haben, können Sie eine Linie zeichnen, die immer 1 Tile breit ist (unabhängig von ihrer Ausrichtung).

Wenn Sie im Linienmalmodus mit der rechten Maustaste klicken, können Sie in einer Linie löschen.

Wenn Sie mehrere Tiles in der TileMap oder mit dem Auswahlwerkzeug ausgewählt haben, können Sie diese in einem sich wiederholenden Muster auf der Linie platzieren.

Sie können diesen Modus vorübergehend ein- oder ausschalten, wenn Sie sich im Mal- oder Radiergummimodus befinden, indem Sie Umschalt halten und dann zeichnen.

Mit dem Linienwerkzeug nach Auswahl zweier Tiles Plattformen diagonal zeichnen

Mit dem Linienwerkzeug nach Auswahl zweier Tiles Plattformen diagonal zeichnen

Rechteck

Wenn Sie den Rechtecksmalmodus ausgewählt haben, können Sie ein achsenparalleles Rechteck zeichnen.

Wenn Sie mit der rechten Maustaste klicken, während Sie sich im Rechteckmalmodus befinden, löschen Sie in einem achsenparallelen Rechteck.

Wenn Sie mehrere Tiles in der TileMap oder mit dem Auswahlwerkzeug ausgewählt haben, können Sie diese in einem sich wiederholenden Muster innerhalb des Rechtecks platzieren.

Sie können diesen Modus im Mal- oder Radiermodus vorübergehend ein- und ausschalten, indem Sie Strg und Umschalt gedrückt halten und dann zeichnen.

Fülleimer

Nachdem Sie den Füllmodus ausgewählt haben, können Sie festlegen, ob das Malen auf zusammenhängende Bereiche beschränkt werden soll, indem Sie das Kontrollkästchen Zusammenhängend aktivieren, das rechts in der Toolbar erscheint.

Wenn Sie Zusammenhängend aktivieren (die Default-Einstellung), werden nur übereinstimmende Tiles, die an die aktuelle Auswahl angrenzen, ersetzt. Diese Prüfung auf Zusammenhang wird horizontal und vertikal durchgeführt, aber nicht diagonal.

Wenn Sie Zusammenhängend deaktivieren, werden alle Tiles mit der gleichen ID in der gesamten TileMap durch die aktuell ausgewählte Tile ersetzt. Wenn Sie eine leere Tile auswählen und Zusammenhängend nicht aktiviert ist, werden stattdessen alle Tiles in dem Rechteck ersetzt, das den effektiven Bereich der TileMap umschließt.

Wenn Sie im Füllmodus mit der rechten Maustaste klicken, werden entsprechende Tiles durch leere Tiles ersetzt.

Wenn Sie mehrere Tiles in der TileMap oder mit dem Auswahlwerkzeug ausgewählt haben, können Sie diese in einem sich wiederholenden Muster innerhalb des gefüllten Bereichs platzieren.

Verwenden des Füll-Tools

Verwenden des Füll-Tools

Pipette

Nachdem Sie den Pipetten-Modus ausgewählt haben, können Sie im 2D-Editor vorhandene Tiles auswählen, indem Sie Strg gedrückt halten und dann auf eine Tile klicken. Dadurch wird die aktuell gemalte Tile durch die Tile ersetzt, auf die Sie gerade geklickt haben. Sie können auch mehrere Tiles auf einmal auswählen, indem Sie die linke Maustaste gedrückt halten und eine rechteckige Auswahl ausführen. Es können nur nicht leere Tiles ausgewählt werden.

Sie können diesen Modus im Malmodus vorübergehend ein- und ausschalten, indem Sie Strg halten und dann mit der Maus klicken oder ziehen.

Radierer

Dieser Modus wird mit jedem anderen Malmodus (Malen, Linie, Rechteck, Füllung) kombiniert. Wenn der Radierer-Modus aktiviert ist, werden Tiles durch leere Tiles ersetzt, anstatt neue Linien zu zeichnen, wenn Sie mit der linken Maustaste klicken.

Sie können diesen Modus vorübergehend ein- und ausschalten, während Sie sich in einem anderen Modus befinden, indem Sie mit der rechten Maustaste anstelle der linken Maustaste klicken.

Zufälliges Malen mit Streuung

Beim Malen können Sie optional die Randomisierung aktivieren. Wenn diese Option aktiviert ist, wird beim Malen eine zufällige Tile unter allen aktuell ausgewählten Tiles ausgewählt. Dies wird von den Tools Malen, Linie, Rechteck und Füllen unterstützt. Für eine effektive Randomisierung müssen Sie mehrere Tiles im TileMap-Editor auswählen oder Streuung verwenden (beide Ansätze können kombiniert werden).

Wenn Streuung auf einen Wert größer als 0 gesetzt wird, besteht die Möglichkeit, dass beim Malen keine Tile platziert werden. Dies kann verwendet werden, um sporadische, sich nicht wiederholende Details zu großen Bereichen hinzuzufügen (z. B. Gras oder Krümel auf einer großen TileMap in Draufsicht).

Beispiel bei Verwendung des Malmodus:

Auswahl aus mehreren Tiles nach dem Zufallsprinzip, dann Malen mit gedrückter linker Maustaste

Auswahl aus mehreren Tiles nach dem Zufallsprinzip, dann Malen mit gedrückter linker Maustaste

Beispiel für die Verwendung des Füllmodus:

Verwendung des Füll-Tools mit einer einzelnen Tile, aber mit aktivierter Randomisierung und Streuung

Verwendung des Füll-Tools mit einer einzelnen Tile, aber mit aktivierter Randomisierung und Streuung

Bemerkung

Der Radierer-Modus berücksichtigt keine Randomisierung und Streuung. Es werden immer alle Kacheln innerhalb der Auswahl entfernt.

Speichern und Laden von vorgefertigten Kachelplatzierungen unter Verwendung von Mustern

Während Sie im Auswahlmodus Tiles kopieren und einfügen können, möchten Sie vielleicht vorgefertigte Muster von Tiles speichern, um sie in einem Durchgang zusammenzufügen. Dies ist für jede einzelne Tile möglich, indem Sie den Tab Muster des TileMap-Editors wählen.

Um ein neues Muster zu erstellen, wechseln Sie in den Auswahlmodus, führen Sie eine Auswahl durch und drücken Sie Strg + C. Klicken Sie auf eine leere Stelle im "Muster"-Tab (um die leere Stelle sollte ein blaues Fokusrechteck erscheinen) und drücken Sie dann Strg + V:

Erstellen eines neuen Musters aus einer Auswahl im TileMap-Editor

Erstellen eines neuen Musters aus einer Auswahl im TileMap-Editor

Um ein vorhandenes Muster zu verwenden, klicken Sie auf dessen Bild im Muster-Tab, wechseln Sie in einen beliebigen Malmodus und klicken Sie dann mit der linken Maustaste irgendwo im 2D-Editor:

Platzieren eines vorhandenen Musters mit dem TileMap-Editor

Platzieren eines vorhandenen Musters mit dem TileMap-Editor

Wie bei der Auswahl von mehreren Tiles werden die Muster wiederholt, wenn sie mit den Malmodi Linie, Rechteck oder Füllung verwendet werden.

Bemerkung

Obwohl sie im TileMap-Editor bearbeitet werden, werden die Muster in der TileSet-Ressource gespeichert. Dies ermöglicht die Wiederverwendung von Mustern in verschiedenen TileMap-Nodes nach dem Laden einer TileSet-Ressource, die in einer externen Datei gespeichert wurde.

Automatische Handhabung von Tile-Verbindungen durch Terrains

Um Terrains zu verwenden, muss der TileMap-Node mindestens ein Terrain-Set und ein Terrain innerhalb dieses Terrain-Sets enthalten. Siehe Erstellen von Geländesätzen (Autotiling) wenn Sie noch kein Terrain-Set für das TileSet erstellt haben.

Es gibt 3 Arten von Malmodi, die für Terrainverbindungen zur Verfügung stehen:

  • Verbinden, bei dem Tiles mit umliegenden Tiles auf derselben TileMap-Ebene verbunden werden.

  • Pfad, bei dem Tiles mit den Tiles verbunden sind, die im selben Zug gemalt wurden (bis die Maustaste losgelassen wird).

  • Tile-spezifische Überschreibungen zur Lösung von Konflikten oder zur Behandlung von Situationen, die nicht durch das Terrainsystem abgedeckt sind.

Der Modus "Verbinden" ist einfacher zu verwenden, aber "Pfad" ist flexibler, da er dem Designer mehr Kontrolle beim Malen ermöglicht. Bei "Pfad" können beispielsweise Straßen direkt nebeneinander liegen, ohne miteinander verbunden zu sein, während bei "Verbinden" beide Straßen verbunden sein müssen.

Auswahl des Verbindungsmodus im Terrains-Tab des TileMap-Editors

Auswahl des Verbindungsmodus im Terrains-Tab des TileMap-Editors

Auswahl des Pfadmodus auf dem Terrains-Tab des TileMap-Editors

Auswahl des Pfadmodus auf dem Terrains-Tab des TileMap-Editors

Schließlich können Sie bestimmte Tiles auf dem Terrain auswählen, um in bestimmten Situationen Konflikte zu lösen:

Malen mit bestimmten Tiles im TileMap-Editor auf dem Terrains-Tab

Malen mit bestimmten Tiles im TileMap-Editor auf dem Terrains-Tab

Jede Tile, bei der mindestens eines ihrer Bits auf einen Wert der entsprechenden Terrain-ID gesetzt ist, erscheint in der Liste der Tiles, aus denen man wählen kann.

Umgang mit fehlenden Tiles

Wenn Sie Tiles im TileSet entfernen, die in einer TileMap referenziert werden, zeigt die TileMap einen Platzhalter an, um darauf hinzuweisen, dass eine ungültige Tile-ID platziert ist:

Fehlende Tiles im TileMap-Editor, falls die TileSet-Referenz defekt ist

Fehlende Tiles im TileMap-Editor, falls die TileSet-Referenz defekt ist

Diese Platzhalter sind im laufenden Projekt nicht sichtbar, aber die Tile-Daten werden weiterhin auf der Festplatte gespeichert. So können Sie solche Szenen sicher schließen und wieder öffnen. Sobald Sie eine Tile mit der passenden ID wieder hinzufügen, erscheinen die Tiles mit dem Aussehen der neuen Tile.

Bemerkung

Fehlende Tile-Platzhalter werden möglicherweise erst sichtbar, wenn Sie den TileMap-Node auswählen und den TileMap-Editor öffnen.