Unity práctico: Videojuego 3D runner

Con animator, crearemos las condiciones de animación

¡Prueba gratis durante 10 días

nuestros 1218 cursos !

Prueba gratis Mostrar modalidades de suscripción
Implementaremos las animaciones que hemos añadido a nuestro controlador, agregando las condiciones necesarias para poder hacer las transiciones necesarias cuando estemos usando el teclado en nuestro videojuego.

Transcripción

Vamos a crear nuestras animaciones dentro del Animator para luego hacer las condiciones. Voy a ir a Animator, tengo una animación de volar y voy a buscar cada una de las animaciones que vamos utilizar, por ejemplo 'Down', que es cuando va a ir para abajo. Reviso que sea un humanoide y aprovecho para ver que no debe estar en Loop, porque solamente es una vez. Perfecto. Voy a bajar y lo arrastro aquí. Le voy a cambiar de nombre y le voy a poner 'Down', cierro, voy a buscar el Up, reviso que sea humanoide y que no sea un loop, porque va a pasar lo mismo, ¿no?, va para arriba. Selecciono su clip y le pongo Up. Voy a poner este acá, por un tema de orden nada más. Bueno, vamos a hacer esto para que se vea mejor. Sigamos. Y acá hay uno que va de lado, miren, va de lado, se va de lado para la derecha. A ver... sí. A este le voy a cambiar de nombre al prefab. Ese va a la derecha, le voy a poner R, y lo voy a duplicar con Comando + D y le cambio el nombre a L, para la izquierda. Vamos a hacer primero el de la derecha, que ya está implementado, o sea la animación ya está para la derecha. Así que abro el de la derecha... está, ¿no? Está en humanoide, perfecto. Bajamos y vemos la animación. Nos aseguramos... perfecto. Y lo pongo acá, y le voy a poner 'Derecha', right, para la animación de la derecha. Estas animaciones no tienen loop, recuerden que no tienen loop. Y el de la izquierda, ustedes si han sido observadores, han dicho "bueno, pero has duplicado el de la derecha, ¿no es el mismo?". De hecho acá está. Bueno, una de las ventajas de trabajar con Unity es que, habiendo hecho una sola animación, hay una opción para espejo. Miren, izquierda. Y nos ahorramos mucho trabajo, ¿no? Abro la animación, busco el clip... uy, miren, felizmente que Unity me ayudó. En vez de darle a aplicar, bueno, me está preguntando ¿quieres aplicar? Sí claro, quiero aplicar. ¿A ver? Para la izquierda, perfecto. Selecciono y a esta animación le ponemos 'Left'. Y acá están todas nuestras animaciones: derecha, izquierda, arriba y abajo. De hecho es: arriba y abajo. Muy bien, hasta aquí hemos creado los clips. Si yo voy y le doy clic a este, como ya han visto, le hago clic derecho, se hace la animación por defecto. Y así cada uno de ellos. Muy bien, ahora lo que vamos a hacer es crear los parámetros. Los parámetros o condicionales que vamos a utilizar nos permiten a nosotros decir: va para arriba, va para la derecha, va para abajo, va para la izquierda, se va a poner en el estado Idle, etcétera, va a morir, va a disparar, va a saltar... las que tengamos. Vamos a ir a la pestaña parámetros y aquí hay una opción de 'más'. Este 'más' nos permite crear cuatro tipos de parámetros que nos sirven de condicionales. Por ejemplo, tengo parámetros flotantes que pueden servir para la velocidad: 0.1, 0.5, valores enteros por ejemplo si estoy avanzando: un nivel, dos niveles... Es un ejemplo. Tengo parámetros booleanos, por ejemplo si salto es 'true', si no salto es 'false', por ejemplo, ¿no? Y un "trigger", que es un disparador. El trigger es por ejemplo cuando te cae un impacto de bala, te cae y haces una animación de impacto, pero solamente lo haces una vez, no tiene que depender de valores como son: entero, flotante o booleano. O por ejemplo cuando te disparan y mueres, el personaje muere, es un trigger. Porque solamente hay una única animación de morir, no es que mueres a la mitad, no, mueres. Ese es el trigger. Entonces para crear la colisión, yo solamente necesito saber si colisiono o no colisiono. ¿Ese qué tipo de variable sería? Booleana. Le vamos a poner 'collision'. Se dan cuenta que es una variable booleana, porque tiene un check, true y false. Y voy a crear otras que me van a decir: anda para arriba, anda para la izquierda, para la derecha. ¿Estas de qué tipo tendrían que ser si solamente voy a ir una vez a la derecha, una vez a la izquierda? Puedo ir varias, pero la animación se ejecuta cuantas veces o va a depender de valores. Exacto, como no depende de valores, es un trigger, y a este le voy a poner 'Up', y así para todos: 'Down', 'Left', y 'Right'. Entonces para hacer las animaciones, en el Animator voy a seleccionar la animación base, que es volar. ¿Cuando estoy volando quiero ir para arriba? Clic derecho, hacer o crear una animación, y me va a salir una flecha que se pega a los cuadrados, a los estados. Esta flecha es la transición, hago clic donde quiero y sencillamente se hace una flecha. Si me he equivocado, puedo seleccionar y borrarla. Ahora bien, esta de acá es la transición y si ustedes ven en el inspector ha aparecido algo simpático, ¿no? Miren, voy a darle play, está la animación de 'Fly' y una animación para arriba. A ver... inmediato. Entonces, yo lo que tengo que hacer es lo siguiente. Bueno, hay una especie de tiempo, ¿no? Eso lo voy a explicar en un momento más, pero por lo pronto les quiero decir que esta es la fusión de las animaciones. Una de las ventajas que tiene Unity es que te fusiona, te hace las transiciones, te hace las interpolaciones, te hace eso que es el "entre animaciones", lo hace Unity. Bueno, vamos a quitarle esta opción de Has Exit Time, ¿Por qué? Porque vamos a suponer que estás volando y lo que hace esto es esperar a que termine la animación completa, para recién saltar a la siguiente animación, y eso no queremos hacer. Por ejemplo, si yo estoy disparando y tengo el arma abajo y estoy caminando derecha, izquierda, derecha, izquierda... y presiono disparar con el clic, si yo dejo esto activo, lo que va a pasar es que va a seguir haciendo la animación de caminar hasta que llegue al pie de la última animación y recién va a levantar el arma. Eso no queremos. Cuando presionamos disparar, inmediatamente tiene que hacer la animación. Eso se hace quitando el check. Ahora bien, han visto que acá hay una especie de transición muy lenta, ¿no? Nosotros podemos modificar el tiempo de la transición. O sea, por ejemplo estoy acá, inmediatamente me voy acá, siento que es muy lento, entonces puedo mover la animación aquí. Entonces aprieto por ejemplo subir, hace esto. Y siento que todavía falta, ahí está. Igual esto lo podemos modificar durante el proyecto. Una vez que hemos hecho esto, vamos a ver que abajo salen las condiciones. ¿En qué momento yo quiero que de estar volando suba? ¿En qué momento de la condición? Cuando disparo el trigger Up. Entonces en esta vista de condición abro con un 'más' y me enlista todos los parámetros que hemos creado aquí. Voy a escoger Up, van a ver que no me pide parámetros. Vamos a ver qué pasa en Collision. En collision sí me pregunta 'true' y 'false', porque es un booleano. Y si fuese un entero o 'float', aquí me aparecerían los valores que yo pueda agregar numéricos. Bueno, en este caso es Up. Entonces, lo que van a hacer ustedes es crear las transiciones para todos estos estados. Con esto hemos aprendido a manejar el Animator Controller usando 'Unity'.

Unity práctico: Videojuego 3D runner

Crea un tipo de juego muy de moda a día de hoy, un runner en 3D. Emplea el trabajo de tu equipo de diseño y aprende a agregar la física e interacción del personaje con el entorno.

4:29 horas (43 Videos)
Actualmente no hay comentarios.
 
Software:
Fecha de publicación:9/09/2016

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.