Creando la cuadrícula
Clase 8 de 34 • Curso de Desarrollo de Videojuegos Móviles con Unity
Contenido del curso
- 8

Creando la cuadrícula
08:00 - 9

Ajustando la cámara
13:06 - 10

Sistema de coordenadas para instanciar las piezas
05:16 - 11

Instanciando las piezas en la cuadrícula
13:39 - 12

Moviendo las piezas
07:53 - 13

Intercambiando las piezas de lugar
14:45 - 14

Permitiendo solo ciertos tipos de movimientos
05:38 - 15

Creando las funciones del match 3
16:13 - 16

Usando el match 3 en nuestro juego
10:21 - 17

Eliminando los matches por defecto
12:31 - 18

Colapsando las piezas
17:31 - 19

Match 3 combo
07:47 - 20

Rellenando las piezas
07:36 - 21

Mejorando la animación de las piezas
07:37
- 24

Hablemos de diseño
01:34 - 25

Agregando un sistema de puntos
16:45 - 26

Sistema de tiempo
07:05 - 27

Interfaz para el sistema de tiempo
09:26 - 28

Creando sistema de UI
06:26 - 29

Pantalla de game over
14:37 - 30

Agregando funcionalidad a la pantalla de game over
09:16 - 31

Reiniciando el juego
08:40 - 32

Agregando audio
10:05 - 33

Terminando el juego
07:39
¿Cómo crear una mecánica principal en Unity?
En este artículo, desarrollaremos la mecánica principal de nuestro juego en Unity. Esta mecánica incluye la configuración de una cuadrícula que se generará dinámicamente. Abordaremos desde la creación de scripts hasta la implementación y visualización de nuestra cuadrícula en el entorno de Unity. ¡Empecemos!
¿Cómo organizar tu proyecto de Unity?
Primero, es esencial tener una estructura de carpetas bien organizada. En Unity, crea una nueva carpeta llamada scripts donde guardarás todos los scripts que desarrolles para tu juego.
- Haz clic derecho en la ventana del proyecto.
- Selecciona "Create" y luego "Folder".
- Nombra la nueva carpeta
scripts.
¿Cómo crear un script en C# para manejar la cuadrícula?
El siguiente paso es crear un script que se encargará de manejar la lógica de la cuadrícula del juego.
- Dentro de la carpeta
scripts, haz clic derecho y selecciona "Create" seguido de "C# Script". - Nombra el script como
board.
En este script, definiremos las propiedades básicas de la cuadrícula:
public int width; // Ancho de la cuadrícula
public int height; // Alto de la cuadrícula
public GameObject tileObject; // Objeto por defecto para cada cuadrado de la cuadrícula
¿Cómo integrar el script en Unity?
- Crea un objeto vacío desde la jerarquía de Unity.
- Nómbralo
board. - Añade el script
boardcomo un componente de este objeto utilizando el inspector.
¿Cómo crear y usar Prefabs en Unity?
Es fundamental para la creación dinámica de los objetos del juego:
- Dirígete a la carpeta de
spritesen los assets y arrastra el asset deempty. - Convierte este objeto en un
Prefab.- Crea una nueva carpeta llamada
prefabs. - Arrastra el GameObject de
emptydesde la jerarquía a la carpetaprefabs.
- Crea una nueva carpeta llamada
- Asocia el Prefab creando en la referencia
tileObjectdel objetoboard.
¿Cómo implementar la función para generar la cuadrícula?
Regresa al script board y añade una función para crear la cuadrícula:
- En la función
Start, llama a una nueva función llamadasetupBoard. - Visual Studio generará automáticamente un método placeholder si haces clic en "Generar método". Luego, implementa la lógica:
void setupBoard() {
for (int x = 0; x < width; x++) {
for (int y = 0; y < height; y++) {
var o = Instantiate(tileObject, new Vector3(x, y, -5), Quaternion.identity);
o.transform.parent = transform;
}
}
}
¿Cómo probar la cuadrícula en el juego?
- Guarda el script y regresa a Unity.
- Asegúrate de que el
Prefabesté correctamente referenciado. - Haz clic en "Play" para visualizar la cuadrícula.
- Realiza pruebas ajustando los valores de
widthyheightpara comprobar cómo cambia la grid.
Retos y consejos para un desarrollo más fluido
Al crear y visualizar la cuadrícula, es posible que la cámara no cubra adecuadamente todo el espacio visible. Este es un tema que abordaremos en las próximas clases. Mientras tanto, te animamos a experimentar con los valores y observar cómo afecta esto la presentación de la cuadrícula. ¡Continúa explorando y aprendiendo!