jairogarcíarincón
Introducción
Puesto que queremos crear un personaje que se mueva por nuestro mundo, necesitamos crear primero un suelo por el que lo pueda hacer.
En este caso, crearemos el suelo a base de plataformas mediante tiles, de modo que sirva de recordatorio de la clase de Tiles en 2D. También más adelante utilizaremos esta clase para recordar el uso de Cinemachine (un plug-in de cámara que nos permite seguir al personaje de forma mucho mas real).
La paleta de Tiles
Desde la ventana de Tile Palette (Window > 2D > Tile Palette) crea una New Palette, llámala Tiles y guárdala dentro de Assets > Palettes.
Arrastra dentro de ella todas las imágenes que hay dentro de Assets > Sprites > Tiles.
Cuando te pregunte, guarda los tiles creados dentro de Assets > Tiles.
El Tilemap Suelo
- Añade a la escena (dentro la Hierarchy window) un nuevo 2D object > Tilemap > Rectangular y llámalo Suelo.
- Al objeto Grid padre creado llámalo Plataformas.
- Cambia su escala a 0.5 (en la Inspector window, desde la sección Transform de Suelo.
- Desde la propiedad Sorting Layer del componente Sprite Renderer de Suelo, crea una nueva Sorting Layer llamada Juego y asígnasela a Suelo.
- Desde la ventana de Tile Palette y asegurándote de que la Active Tilemap es Suelo, dibuja unas cuantas plataformas (si ves que quedan muy grandes, puedes seleccionar todos los ítems dentro de Assets > Sprites > Tiles, cambiar su propiedad Pixels Per Unit por un valor superior y hacer clic en Apply).
- El resultado podría ser similar a éste:
Para que el jugador se pueda mover por encima de las plataformas, debemos utilizar colisiones:
- Añade al tilemap Suelo un Tilemap Collider 2D y un componente Composite Collider 2D (que automáticamente creará un Rigidbody 2D).
- Selecciona en el Rigidbody 2D la propiedad Body Type Static para que no se caigan las plataformas.
- Marca en el Tilemap Collider 2D la propiedad Used by Composite para que los colliders solo estén en los bordes de las plataformas y no en cada tile.
- El resultado podría ser similar a éste (el pequeño Offset en Y del Composite Collider 2D es para que cuando el jugador caiga, entre un poco dentro de la plataforma):
El Tilemap Detalles
Puedes mejorar un poco el aspecto de las plataformas añadiendo a Plataformas un nuevo Tilemap llamado Detalles, también con Scale 0.5 y utilizando Sorting Layer Juego (y Order in Layer 1 si es necesario para que quede delante).
Si ahora seleccionas como Active Tilemap Detalles en la Tile Palette y añades algunos huesos, podrías crear algo parecido a esto:
Publicado el 03 de Diciembre de 2024
unity2danimación