Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

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 zum Erstellen des Spiellayouts verwendet wird. Die Verwendung von TileMapLayer-Nodes beim Leveldesign bietet mehrere Vorteile. Erstens ermöglichen sie das Zeichnen eines Layouts durch das „Malen“ von Tiles auf ein Raster, was deutlich schneller ist als das Platzieren einzelner Sprite2D-Nodes. Zweitens ermöglichen sie größere Level, da sie für die Darstellung einer großen Anzahl von Tiles optimiert sind. Schließlich erlauben sie es, den Tiles zusätzliche Funktionen wie Kollisions-, Verdeckungs- und Navigationsformen hinzuzufügen.

Festlegen des TileSet in der TileMapLayer

If you've followed the previous page on TileSets verwenden, you should have a TileSet resource that is built into the TileMapLayer node. This is good for prototyping, but in a real world project, you will generally have multiple levels reusing the same tileset.

The recommended way to reuse the same TileSet in several TileMapLayer nodes is to save the TileSet to an external resource. To do so, click the dropdown next to the TileSet resource and choose Save:

Speichern der integrierten TileSet-Ressource in einer externen Ressourcendatei

Speichern der integrierten TileSet-Ressource in einer externen Ressourcendatei

Multiple TileMapLayers and settings

When working with tilemaps it's generally advised that you use multiple TileMapLayer nodes when appropriate. Using multiple layers can be advantageous, for example, this allows you to distinguish foreground tiles from background tiles for better organization. You can place one tile per layer at a given location, which allows you to overlap several tiles together if you have more than one layer.

Each TileMapLayer node has several properties you can adjust:

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

  • TileSet The tileset used by the TileMapLayer node.

Rendern

  • Y Sort Origin: The vertical offset to use for Y-sorting on each tile (in pixels). Only effective if Y Sort Enabled under CanvasItem settings is true.

  • X Draw Order Reversed Reverses the order tiles are drawn on the X axis. Requires that Y Sort Enabled under CanvasItem settings is true.

  • Rendering Quadrant Size A quadrant is a group of tiles drawn together on a single CanvasItem for optimization purposes. This setting defines the length of a square's side in the map's coordinate system. The quadrant size does not apply to a Y sorted TileMapLayer since tiles are grouped by Y position in that case.

Physik

  • Collision Enabled Enables or disables collision.

  • Use Kinematic Bodies When true TileMapLayer collision shapes will be instantiated as kinematic bodies.

  • Collision Visibility Mode Whether or not the TileMapLayer's collision shapes are visible. If set to default, then it depends on the show collision debug settings.

Reordering layers

You can reorder layers by drag-and-dropping their node in the Scene tab. You can also switch between which TileMapLayer node you're working on by using the buttons in the top right corner of the TileMap editor.

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

Select the TileMapLayer node, then open the TileMap panel at the bottom of the editor:

Opening the TileMap panel at the bottom of the editor. The TileMapLayer node must be selected first.

Opening the TileMap panel at the bottom of the editor. The TileMapLayer node must be selected first.

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

In the 2D editor, the layers you aren't currently editing from the same TileMapLayer node will appear grayed out while in the TileMap editor. You can disable this behavior by clicking the icon next to the layer selection menu (Highlight Selected TileMap Layer tooltip).

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 Buttons 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

You can copy and paste tiles that were already placed by performing a selection, pressing Ctrl + C then pressing Ctrl + V. The selection will be pasted after left-clicking. You can press Ctrl + V another time to perform more pastes this way. Right-click or press Escape to cancel pasting.

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 die Checkbox 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

Despite being edited in the TileMap editor, patterns are stored in the TileSet resource. This allows reusing patterns in different TileMapLayer nodes after loading a TileSet resource saved to an external file.

Automatische Handhabung von Tile-Verbindungen durch Terrains

To use terrains, the TileMapLayer node must feature at least one terrain set and a terrain within this terrain set. See Erstellen von Geländesätzen (Autotiling) if you haven't created a terrain set for the TileSet yet.

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

  • Connect, where tiles are connected to surrounding tiles on the same TileMapLayer.

  • 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

Missing tile placeholders may not be visible until you select the TileMapLayer node and open the TileMap editor.