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.
Checking the stable version of the documentation...
Utilizzo di TileMaps
Vedi anche
Questa pagina presuppone che abbia già creato o scaricato un TileSet. Se no, leggi prima Utilizzo di TileSet poiché avrai bisogno di un TileSet per creare una TileMap.
Introduzione
Una tilemap è una griglia di tasselli utilizzata per creare il layout di un gioco. Ci sono molti vantaggi a utilizzare i nodi TileMapLayer per progettare livelli. Primo, consentono di disegnare un layout "dipingendo" le tasselli su una griglia, il che è molto più veloce di posizionare i singoli nodi Sprite2D uno per uno. Secondo, permettono di avere livelli più grandi perché sono ottimizzati per disegnare un gran numero di tasselli. Infine, consentono di aggiungere maggiori funzionalità ai tasselli con forme di collisione, occlusione e navigazione.
Specificare il TileSet nel TileMapLayer
Se hai seguito la pagina precedente su Utilizzo di TileSet, dovresti avere una risorsa TileSet incorporata nel nodo TileMapLayer. Questo è utile per la prototipazione, ma in un progetto reale, in genere avrai più livelli che riutilizzano lo stesso tileset.
Il metodo consigliato per riutilizzare lo stesso TileSet in più nodi TileMapLayer è quello di salvare il TileSet in una risorsa esterna. Per farlo, clicca sul menu a discesa accanto alla risorsa TileSet e scegli Salva:
Salvataggio della risorsa TileSet incorporata in un file di risorse esterno
Più di un TileMapLayer e impostazioni
Quando si lavora con le tilemap, in genere si consiglia di utilizzare più nodi TileMapLayer, ove opportuno. Utilizzare più livelli può avere i suoi vantaggi, ad esempio, consente di distinguere i tasselli in primo piano dai tasselli nello sfondo per organizzarli meglio. È possibile posizionare un tassello per livello in una determinata posizione, il che permette di sovrapporre più tasselli se c'è più di un livello.
Ogni nodo TileMapLayer ha diverse proprietà che è possibile regolare:
Abilitato: se
true, il livello è visibile nell'editor e durante l'esecuzione del progetto.TileSet Il tileset utilizzato dal nodo TileMapLayer.
Renderer
Origine per ordinamento Y: lo spostamento verticale da usare per l'ordinamento Y su ogni tassello (in pixel). Efficace solo se Ordinamento per Y abilitato nelle impostazioni di CanvasItem è
true.Ordine di disegno per X invertito inverte l'ordine in cui sono disegnati i tasselli sull'asse X. Richiede che Ordinamento per Y abilitato nelle impostazioni di CanvasItem sia
true.Dimensione dei quadranti di rendering un quadrante è un gruppo di tasselli disegnati insieme su un singolo CanvasItem a scopo di ottimizzazione. Questa impostazione definisce la lunghezza del lato di un quadrato nel sistema di coordinate della mappa. La dimensione del quadrante non si applica a un TileMapLayer ordinato per Y, poiché in tal caso i tasselli sono raggruppati per la loro posizione in Y.
Fisica
Collisione abilitata abilita o disabilita la collisione.
Usa corpi cinematici quando è true, le forme di collisione del TileMapLayer verranno istanziate come corpi cinematici.
Modalità visibilità di collisioni indica se le forme di collisione del TileMapLayer sono visibili o meno. Se impostato su predefinito, dipende dalle impostazioni di debug della visualizzazione delle collisioni.
Riordinare i livelli
È possibile riordinare i livelli trascinando il relativo nodo nella scheda Scena. È inoltre possibile cambiare il nodo TileMapLayer in cui si sta lavorando attraverso i pulsanti nell'angolo in alto a destra dell'editor TileMap.
Nota
In futuro potrai creare, rinominare o riordinare i livelli senza influire sui tasselli esistenti. Fai attenzione, però, perché rimuovere un livello rimuoverà anche tutti i tasselli che erano stati posizionati sul livello.
Aprire l'editor di TileMap
Seleziona il nodo TileMapLayer, poi apri il pannello TileMap nella parte inferiore dell'editor:
Apri il pannello TileMap nella parte inferiore dell'editor. Il nodo TileMapLayer deve essere prima selezionato.
Selezionare i tasselli da utilizzare per disegnare
Innanzitutto, se hai creato altri livelli sopra, assicurati di aver selezionato il livello su cui desideri dipingere:
Selezione di un livello per disegnarci sopra nell'editor TileMap
Suggerimento
Nell'editor 2D, i livelli che non stai modificando dallo stesso nodo TileMapLayer appariranno in grigio mentre ti trovi nell'editor TileMap. Puoi disabilitare questo comportamento cliccando sull'icona accanto al menu di selezione dei livelli (tooltip Evidenzia il livello di TileMap selezionato).
Puoi saltare il passaggio di prima se non hai creato altri livelli, poiché il primo livello viene selezionato automaticamente all'apertura dell'editor di TileMap.
Prima di poter posizionare i tasselli nell'editor 2D, bisogna selezionarne una o più nel pannello TileMap, situato nella parte inferiore dell'editor. Per farlo, clicca su un tassello nel pannello TileMap oppure tieni premuto il pulsante del mouse per selezionarne più di una:
Selezionare un tassello nell'editor TileMap cliccando su di esso
Suggerimento
Come negli editor 2D e TileSet, è possibile spostarsi nel pannello TileMap tramite il pulsante centrale o destro del mouse e zoomare tramite la rotellina del mouse o i pulsanti nell'angolo in alto a sinistra.
You can also hold down Shift to append to the current selection. When selecting more than one tile, multiple tiles will be placed every time you perform a painting operation. This can be used to paint structures composed of multiple tiles in a single click (such as large platforms or trees).
The final selection does not have to be contiguous: if there is empty space between selected tiles, it will be left empty in the pattern that will be painted in the 2D editor.
Selecting multiple tiles in the TileMap editor by holding down the left mouse button
If you've created alternative tiles in your TileSet, you can select them for painting on the right of the base tiles:
Selezione di un tassello alternativo nell'editor di TileMap
Lastly, if you've created a scenes collection in the TileSet, you can place scene tiles in the TileMap:
Placing a scene tile containing particles using the TileMap editor
Strumenti e modalità di disegno
Dalla barra degli strumenti in cima l'editor TileMap, è possibile scegliere tra diverse modalità di disegno e strumenti. Queste modalità influiscono sul funzionamento quando si fa clic nell'editor 2D, non sul pannello TileMap stesso.
From left to right, the painting modes and tools you can choose are:
Selezione
Select tiles by clicking a single tile, or by holding down the left mouse button to select multiple with a rectangle in the 2D editor. Note that empty space cannot be selected: if you create a rectangle selection, only non-empty tiles will be selected.
To append to the current selection, hold Shift then select a tile. To remove from the current selection, hold Ctrl then select a tile.
The selection can then be used in any other painting mode to quickly create copies of an already-placed pattern.
You can remove the selected tiles from the TileMap by pressing Del.
È possibile passare temporaneamente a questa modalità mentre in modalità Disegno tenendo premuto Ctrl ed effettuando una selezione.
Suggerimento
È possibile copiare e incollare le tessere già posizionate effettuando una selezione, premendo Ctrl + C e poi Ctrl + V. La selezione sarà incollata dopo aver fatto clic sinistro. È possibile premere nuovamente Ctrl + V per effettuare altri incollaggi in questo modo. Fai clic destro o premi Escape per annullare l'incollaggio.
Disegna
The standard Paint mode allows you to place tiles by clicking or holding down the left mouse button.
If you right-click, the currently selected tile will be erased from the tilemap. In other words, it will be replaced by empty space.
If you have selected multiple tiles in the TileMap or using the Selection tool, they will be placed every time you click or drag the mouse while holding down the left mouse button.
Suggerimento
While in Paint mode, you can draw a line by holding Shift before holding down the left mouse button, then dragging the mouse to the line's end point. This is identical to using the Line tool described below.
You can also draw a rectangle by holding Ctrl and Shift before holding down the left mouse button, then dragging the mouse to the rectangle's end point. This is identical to using the Rectangle tool described below.
Lastly, you can pick existing tiles in the 2D editor by holding Ctrl then clicking on a tile (or holding and dragging the mouse). This will switch the currently painted tile(s) to the tile(s) you've just clicked. This is identical to using the Picker tool described below.
Riga
After selecting Line Paint mode, you can draw in a line that is always 1 tile thick (no matter its orientation).
If you right-click while in Line Paint mode, you will erase in a line.
If you have selected multiple tiles in the TileMap or using the Selection tool, you can place them in a repeating pattern across the line.
È possibile passare temporaneamente a questa modalità mentre in modalità Disegno o Gomma tenendo premuto Shift e disegnando.
Using the line tool after selecting two tiles to draw platforms diagonally
Rettangolo
After selecting Rectangle Paint mode, you can draw in an axis-aligned rectangle.
If you right-click while in Rectangle Paint mode, you will erase in an axis-aligned rectangle.
If you have selected multiple tiles in the TileMap or using the Selection tool, you can place them in a repeating pattern within the rectangle.
È possibile passare temporaneamente a questa modalità mentre in modalità Disegno o Gomma tenendo premuto Ctrl e Shift e poi disegnando.
Riempimento
After selecting Bucket Fill mode, you can choose whether painting should be limited to contiguous areas only by toggling the Contiguous checkbox that appears on the right of the toolbar.
Se abiliti Contiguo (predefinito), verranno sostituite solo le tessere corrispondenti che toccano la selezione attuale. Questa verifica di contiguità avviene orizzontalmente e verticalmente, ma non diagonalmente.
Disattivando Contiguous, tutti i tasselli con lo stesso ID nell'intera TileMap saranno sostituiti dal tassello attualmente selezionato. Selezionando un tassello vuoto con Contiguous disattivato, saranno sostituiti tutti i tasselli nel rettangolo che racchiude l'area effettiva della TileMap.
If you right-click while in Bucket Fill mode, you will replace matching tiles with empty tiles.
If you have selected multiple tiles in the TileMap or using the Selection tool, you can place them in a repeating pattern within the filled area.
Utilizzo dello strumento Riempimento tasselli
Selettore
Dopo aver selezionato la modalità Selettore, è possibile selezionare i tasselli esistenti nell'editor 2D tenendo premuto Ctrl e poi cliccando su una tessera. Questo cambierà il tassello con cui stai disegnando con il tassello appena cliccato. È anche possibile selezionare più tasselli alla volta tenendo premuto il pulsante sinistro del mouse e formando una selezione rettangolare. È possibile selezionare solo i tasselli non vuoti.
È possibile passare temporaneamente a questa modalità mentre in modalità Disegno tenendo premuto Ctrl e cliccando o trascinando il mouse.
Gomma
Questa modalità si combina con qualsiasi altra modalità di disegno (Disegna, Linea, Rettangolo, Riempi). Quando la modalità gomma è attiva, i tasselli verranno sostituiti da tasselli vuoti anziché disegnare nuove linee al clic sinistro.
È possibile passare temporaneamente a questa modalità da qualsiasi altra, facendo clic destro anziché sinistro.
Painting randomly using scattering
Durante il disegno, è possibile abilitata opzionalmente la randomizzazione. Quando è abilitata, verrà scelto un tassello casuale tra tutti quelli attualmente selezionati. Questa funzione è supportata dagli strumenti Pennello, Linea, Rettangolo e Riempi. Affinché funzioni bene, bisogna selezionare più tasselli nell'editor TileMap o utilizzare la dispersione (scattering) (entrambi i metodi si possono combinare).
Se Dispersione è impostato su un valore maggiore di 0, c'è una possibilità che non venga posto alcun tassello da disegnare. Può servire per aggiungere dettagli occasionali e non ripetitivi ad aree ampie (come ad esempio aggiungere erba o briciole su una grande TileMap con vista dall'alto).
Example when using Paint mode:
Selezionare tra diversi tasselli da scegliere a caso, poi dipingendo tenendo premuto il pulsante sinistro del mouse
Example when using Bucket Fill mode:
Using Bucket Fill tool with a single tile, but with randomization and scattering enabled
Nota
La modalità Gomma non tiene conto della randomizzazione e della dispersione. Tutti tasselli dentro la selezione sono sempre rimossi.
Salvare e caricare posizionamenti predefiniti di tasselli tramite motivi
Sebbene sia possibile copiare e incollare i tasselli in modalità Selezione, potrebbe essere utile salvare motivi predefiniti di tasselli da porre tutti in un botto. Lo si può fare per ogni singola TileMap selezionando la scheda Motivi dell'editor TileMap.
To create a new pattern, switch to Select mode, perform a selection and press Ctrl + C. Click on empty space within the Patterns tab (a blue focus rectangle should appear around the empty space), then press Ctrl + V:
Creating a new pattern from a selection in the TileMap editor
To use an existing pattern, click its image in the Patterns tab, switch to any painting mode, then left-click somewhere in the 2D editor:
Placing an existing pattern using the TileMap editor
Like multi-tile selections, patterns will be repeated if used with the Line, Rectangle or Bucket Fill painting modes.
Nota
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.
Gestire automaticamente i collegamenti dei tasselli tramite i terreni
Per utilizzare i terreni, il nodo TileMapLayer deve contenere almeno un insieme di terreni e un terreno all'interno di tale insieme. Consulta Creare insiemi di terreno (autotiling) se non hai ancora creato un insieme di terreni per il TileSet.
Sono disponibili 3 tipi di modalità di pittura per i collegamenti del terreno:
Connetti, dove i tasselli vengono collegati ai tasselli circostanti sullo stesso TileMapLayer.
Percorso, dove i tasselli sono collegati a tasselli dipinte con lo stesso tratto (fino al rilascio del pulsante del mouse).
Sovrascritture specifiche per i singoli tasselli per risolvere i conflitti o gestire situazioni non coperte dal sistema di terreni.
La modalità Connetti è più facile da usare, ma Percorso è più flessibile, in quanto consente più controllo artistico durante il disegno. Ad esempio, Percorso permette di creare strade adiacenti senza che siano collegate tra loro, mentre Connetti le obbliga a essere collegate.
Selezione della modalità Connetti nella scheda Terreni dell'editor TileMap
Selezione della modalità Percorso nella scheda Terreni dell'editor TileMap
Infine, puoi selezionare tasselli specifici dal terreno per risolvere conflitti in certe situazioni:
Disegnare con tasselli specifici nella scheda Terreni dell'editor TileMap
Qualsiasi tassello che abbia almeno uno dei suoi bit impostato su un valore corrispondente all'ID del terreno apparirà nell'elenco dei tasselli tra cui scegliere.
Gestione dei tasselli mancati
Se rimuovi tasselli dal TileSet a cui fanno riferimento in una TileMap, la TileMap visualizzerà un segnaposto per indicare che è stato posto un tassello con un ID non valido:
Tasselli mancanti nell'editor TileMap a causa di un riferimento mancante nel TileSet
Questi segnaposto non sono visibili nel progetto in esecuzione, ma i dati dei tasselli sono comunque salvati su disco. Ciò permette di chiudere e riaprire tali scene in tutta sicurezza. Una volta aggiunto nuovamente un tassello con l'ID corrispondente, i tasselli appariranno con l'aspetto del nuovo tassello.
Nota
I segnaposto dei tasselli mancanti potrebbero non essere visibili finché non si seleziona il nodo TileMapLayer e si apre l'editor TileMap.