Creación de Juego de Parkour 3d en Unity
Introducción
En este artículo te mostraré cómo desarrollé de principio a fin un juego de parkour en Unity, compuesto por 3 niveles. Verás desde la creación de la escena inicial, la configuración del personaje principal, enemigos, sistemas de avance, hasta detalles audiovisuales y de jugabilidad que enriquecen todo el proyecto. ¡Sigue cada paso y descubre cómo dar vida a tu propio juego en Unity!
Creación de la escena inicial

Generación del plano principal (terreno del parkour)

Asignar Layer 8 como “Ground” y configurarlo en el plano para gestionar las colisiones correctamente.

Crear un GameObject vacío llamado “Player” para el personaje principal.

Agregar al jugador un componente Rigidbody para la física, y luego los componentes Inventory, Capsule Collider y PlayerController para habilitar su control y colisiones.

Asignar las capas (Layers) correspondientes al jugador, necesarias para separar correctamente las colisiones y la lógica de juego.

Configurar la cámara principal para que siga suavemente el movimiento del jugador, logrando una experiencia de juego más envolvente.

Configurar el objeto “Enemy” (enemigo) en la escena, asegurando su correcta aparición e interacción dentro del nivel.

Programar la Inteligencia Artificial (IA) básica del enemigo para darle comportamiento y desafío al jugador.

Establecer los puntos de patrullaje (Patrol Points) para enemigos, permitiendo que recorran rutas predefinidas dentro del escenario.

Crear el GameManager, encargado de gestionar la lógica general y el avance dentro del juego.

Agregar el AudioManager para manejar música de fondo y efectos sonoros, enriqueciendo la experiencia de juego.

Organizar las capas o layers del proyecto para un mejor control de las físicas, colisiones y lógica de juego.

Ajustar la Collision Matrix para definir qué objetos pueden colisionar entre sí; esto es clave para evitar errores de física y optimizar el rendimiento.

Añadir el objeto collectible “moneda” al escenario para implementar una dinámica de recolección y puntaje.


Añadir el código necesario para que la moneda sea recogida correctamente por el jugador y sume al puntaje.

Importar el modelo 3D personalizado para el jugador y asignar animaciones de movimiento (walk animation) usando herramientas como Mixamo.
Agregar el script PlayerController al jugador para gestionar sus movimientos y acciones.

Generar texturas personalizadas para los enemigos y programar su animación y lógica de comportamiento.

Agregar código y animaciones al enemigo para hacerlo funcional dentro del nivel.

Colocar la música de fondo adecuada para el ambiente del juego y programar los efectos sonoros contextuales.

Crear y configurar la interfaz de selección de personaje utilizando un UI Canvas y los elementos necesarios.


Programar el script que maneja la lógica de la selección de personaje en la interfaz UI.

Creación del primer nivel con sus elementos principales, plataformas y obstáculos iniciales.

Implementar el sistema de respawn para manejar los puntos donde el jugador reaparece tras perder una vida.

Diseñar los checkpoints con su respectivo script para guardar el progreso del jugador durante el nivel.

Colocar zonas de muerte (Deathzone) que restan una vida al jugador si cae fuera del nivel.

Desarrollar el sistema LifeSystem con su script, controlando las vidas disponibles y respuesta ante pérdidas.

Implementar el componente HealthUi para mostrar visualmente la cantidad de vidas o salud en pantalla.

Colocar el objeto levelGoal al final de cada nivel: es la meta que el jugador debe tocar para avanzar al siguiente nivel.

Reutilizar la IA de enemigos mediante prefabs para acelerar el desarrollo de los siguientes niveles.

Diseño del escenario utilizando modelos y texturas descargados de Sketchfab y también importados desde Blender.

Añadir el SurvivorManager, encargado de controlar el minijuego de supervivencia y oleadas de enemigos.

Establecer los spawnPoints donde los enemigos aparecerán dinámicamente durante el juego.

Creación del Level 3: se utiliza modelos de Sketchfab y efectos visuales para darle mayor complejidad y atractivo.

Implementar sistemas de partículas para simular efectos ambientales como la lluvia y mejorar la atmósfera.

Descargar y configurar animaciones adicionales de Mixamo para dotar de más vida y naturalidad a los enemigos.

Conclusión
Este proyecto de parkour en Unity permite aprender de manera práctica diversos aspectos del desarrollo de videojuegos: creación de niveles, lógica de jugador y enemigos, implementación de UI, sistemas de puntaje, efectos visuales y de audio, así como la integración de recursos de terceros. Cada paso aquí descrito te servirá como referencia para tus propios desarrollos y para llevar tus proyectos de videojuegos al siguiente nivel.
Creditos
Autor: Brayan Rolando Ovalle Sandoval
Editor: Mg. Carlos Iván Pinzón Romero
Universidad: Universidad central
