Este video cubre primero cómo crear un TileSet, luego cómo usar el TileSet para crear mapas usando el objeto Godot 3 TileMap. También analizamos el código necesario para seleccionar un mosaico individual en un mapa de mosaicos y cómo agregar dinámicamente nuevos mosaicos a su mapa. El tutorial también analiza brevemente cómo configurar las colisiones para su uso con el motor de física de Godot.
El video
Activos y muestras de código
Los mosaicos utilizados en este tutorial están disponibles para descargar de aquí. Usamos el archivo tileset.png de la colección Tiny RPG. Siéntase libre de sustituir cualquier mapa de mosaico que pueda tener, pero asegúrese de actualizar el tamaño del mosaico en las propiedades de celda del conjunto de mosaicos y del mapa de mosaicos.
El siguiente código de ejemplo se adjuntó al nodo raíz en lugar de al mapa de mosaicos directamente como estaba en el video.
TileMap.gd
extends Node func _process(delta): if Input.is_mouse_button_pressed(BUTTON_LEFT): # When the user clicks the mouse, conver the mouse coordinate to map coordinates # then get the cell at that location. If there is a tile there, simply print # the name of the tile to the console, if there is no tile there, draw the first # tile from the tile set to this location var mousePos = get_viewport().get_mouse_position() var loc = $TileMap.world_to_map(mousePos) var cell = $TileMap.get_cell(loc.x, loc.y) if(cell != -1): print($TileMap.tile_set.tile_get_name(cell)) else: $TileMap.set_cell(loc.x,loc.y,1)