En las versiones 2019.3.0f de Unity el “Samples rate” viene desactivado por defecto. Para activarlo debemos utilizar el menu de tres puntos como aparece en la imagen, puede ser confuso ya que hay dos menu muy cerca uno del otro
Introducción
Game Design del juego
La estructura y assets de un proyecto en Unity
Convirtiendo nuestros assets en Tiles
Tilemaps y creación del escenario
Bonus: FastForward de la creación del escenario, sorting layers y creación de colliders
Acá encontrarás los archivos de este curso
Personaje principal: Movimiento y Animaciones
El jugador y el movimiento
Creando nuestra primera animación
Creando el grafo de animaciones
Usando un árbol de animaciones
Mostrando la solución del desafío e implementando transición entre blended trees
Programando una cámara que siga al jugador
Corrección del bug gráfico
límites del escenario, rigid bodies
Ejercicio: diseño de interiores
Escenarios Avanzados
Transiciones entre escenas
Mantener Player y Camera entre escenas
Spawning Points: programando que el jugador y la cámara aparezcan en el lugar correcto al cambiar de escena
Agregando Identificadores a nuestros Spawning Points para controlar mejor el flujo de nuestro juego
Enemigos Avanzados
Creando nuestro enemigo
Programando las físicas y el patrullaje del enemigo
Generando movimiento completamente aleatorio
Programando el ataque del enemigo
Crear Manager de Health del Player
Crear armas
Programando el ataque del Player con arma
Mover la espada al caminar
Creando el ataque con espada
Ejecutando el ataque con un botón
Movimiento en diagonal
Optimizando nuestro player controller
Ataque mejorado
Uso de partículas
Añadir el daño del enemigo en batalla
Programando los contadores de vida del enemigo
Colocando más info de UI en pantalla
Script de la vida
Personaje principal avanzado
Añadir el daño del personaje (ejercicio)
Sistema de puntos de experiencia para nuestro personaje principal
Level Up!
Level Up! Defensa y Reto Final del Módulo: Stats de los enemigos
Creando un NPC
Limitar el movimiento de nuestro NPC
Creando una pantalla de diálogos para nuestro RPG
El diálogo del NPC
Múltiples líneas de diálogo
Parar el NPC durante el diálogo
Parar el personaje durante el diálogo
Quests
La estructura de una quest
Quest 1: Ir a un lugar
Quest 2: Encontrar un objeto
Quest 3: Matar enemigos
Revisión de bugs
Mantener la cámara dentro del escenario
El problema al cambiar de escena
Audio
Agregando SFX a nuestro videojuego
Agregando música a nuestro videojuego
Ajustar volúmen del audio de cada uno de los efectos de sonido
Creando un VolumeManager
Agregando economía a nuestro juego y cierre
Crea una cuenta o inicia sesión
¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera
La animación de personajes es un componente crucial en el desarrollo de videojuegos, especialmente en géneros como el roguelike. Utilizar técnicas clásicas de animación, como la rotación de imágenes para simular movimiento, es fundamental. Este método, que data de las primeras películas de Walt Disney de los años 30, sigue desempeñando un papel relevante en los juegos modernos. En este artículo, aprenderás cómo implementar animaciones básicas en Unity, un motor de juego amplísimamente utilizado para desarrollar videojuegos 2D y 3D.
Para comenzar a animar en Unity, es crucial asegurarse de que la pestaña "Animation" esté activada. Esto se hace navegando a través del menú Window > Animation y seleccionando "Animation". Es importante no confundirla con "Animator", que se utiliza en etapas posteriores. Una vez activada la pestaña de Animation, reestructura el espacio de trabajo para facilitar el arrastre y organización de sprites y demás assets visuales.
Selecciona el personaje en la jerarquía lateral izquierda de Unity, en este caso un conejito animado, del cual dispones de múltiples sprites para las diversas animaciones. La animación se crea siguiendo estos pasos:
La animación creada aparecerá en un timeline en la parte inferior, donde podrás manejar los tiempos de reproducción.
Al crear una animación, arrastra los sprites ordenadamente al timeline para formar la secuencia:
Por ejemplo, para una animación hacia abajo (player down), una buena distribución podría seguir intervalos como 0, 0.5, 1, etc., asegurando una secuencia fluida.
// Suponiendo que ya has arrastrado los sprites correctos
// Esta línea solo indica que el timeline ha sido organizado con los frames específicos
timeline.Insert(keyFrameIndex, spriteFrame);
La velocidad de muestreo es decisiva al ajustar la velocidad de la animación. Se establece en el "grafo de animaciones del jugador":
Ajustar la animación a 30 muestras suele generar un flujo más natural en contextos roguelike.
A menudo, el último frame de una secuencia puede no alinearse de forma correcta, especialmente si está diseñado para ataques. Siguiendo estos pasos:
Elimina el frame que no corresponde.
Duplica el primer frame al final para un enlace sin fisuras entre secuencias.
// Si un frame no encaja, elimínalo del timeline timeline.Remove(incompatibleFrame);
Repite el proceso para animaciones que requieran movimientos diferentes como izquierda (player_left), derecha o arriba:
Esta técnica garantiza que cada movimiento del personaje sea fluido y correcto visualmente.
Con estas instrucciones, estás bien encaminado para crear animaciones sofisticadas en Unity para tu juego, roguelike o cualquier otro proyecto que estés desarrollando. Recuerda que la práctica hace al maestro, así que te animo a seguir explorando y perfeccionando tus habilidades en animación. ¡Anímate a experimentar con diferentes velocidades y secuencias hasta lograr el estilo único que sueñas para tu juego!
Aportes 8
Preguntas 0
En las versiones 2019.3.0f de Unity el “Samples rate” viene desactivado por defecto. Para activarlo debemos utilizar el menu de tres puntos como aparece en la imagen, puede ser confuso ya que hay dos menu muy cerca uno del otro
Resumen de la clase
El objetivo es animar al personaje.
Para ello abrimos Window > Animation > Animation para que nos aparezca la herramienta. Movemos la pestaña Project a la derecha del Inspector.
Luego damos a Create en el Animation y lo nombramos como Player_Down. El truco es crear una subcarpeta llamada Player dentro de Animations.
Arrastramos los sprites del conejo hacia la línea temporal, a una distancia uniforme. Podemos cambiar la velocidad en Samples. Si navegamos en Project a Animations Player, veremos un Controller y nuestro Player_Down.
OJO el último Sprite es el de la animación de ataque por lo que podemos borrarla. Juan Gabriel aclara que cada 5 sprites son los sprites de ataque.
TRUCO: copiar el Sprite inicial al final para que se vea suave la animación.
El ejercicio: crear el resto de animaciones del Player.
Excelente clase, todo bien claro y preciso. 💚
Las animaciones es un punto muy importante en tener en cuenta, y sobre todo en su precision, porque una mala colocación en tiempo y espacio de la animación, provocara un sabor amargo al jugar.
Es mejor animar tanto el movimiento de izquierda como derecha o es mejor animar 1 y modificar el flipX del Sprite?
Para los que siguieron al pie de la letra y la animación no les funciona o cuando seleccionan otros objetos y quieren volver a la animación pero el play está deshabilitado, la solución es arratras el archivo de la animación al objeto de su juegador como en la foto.
.
.
.
Sólo agarran y lo arrastran sobre el objeto al que quieren darle esa animación.
Genial
Wow!!! La funcionalidad de Blend Trees es súper poderosa!!! Jamás la había usado y minimiza un montón el trabajo.
Si por algun motivo tienes “oscurecido” (no se puede clickear) ADDPROPERTY/PLAY/OTROS cuando quieres editar la animacion, recuerda tener seleccionado el PLAYER (en la herarquia) 😄
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?