Jump to content
Sign in to follow this  
totemalf

[Dudas] Transición correcta en animación de salto con personaje 2D

Recommended Posts

Buenas, expongo mi problema sin ambages:

He descargado un personaje 2d que viene ya animado; la animación de salto digamos que comienza desde el personaje quieto y termina con el personaje volviendo a ese estado. El problema que me encuentro es que cuando creo el clip con animation la animacion se reproduce continuamente incluso en el aire. Habia pensado en partir la animación en 3, una de inicio, otra de cuando está en el aire, y una ultima para cuando va cayendo... pero claro, no se como hacer que la animacion se reproduzca sin loop, no encuentro ese parámetro.

Saludetes!

Edit: Creo que me he explicado un poco mal. Lo que quiero hacer es que cuando comienza a saltar se reproduzca sin loop, cuando esta en el aire vaya con loop ya que el tiempo que está en el aire viene determinado por la fuerza de salto que se le aplica, y que cuando esta terminando de caer se reproduzca la animacion de volver al idle, y por tanto que no tenga loop.

Edited by totemalf

Share this post


Link to post
Share on other sites

En realidad con ambas cosas, con Animation he añadido los diferentes sprites en sus clips (correr, saltar, etc..), y con Animator le pongo los parametros para cambiar de un estado a otro.

 

Share this post


Link to post
Share on other sites

En realidd con ambas cosas, con Animation he añadido los diferentes sprites en sus clips (correr, saltar, etc..), y con Animator le pongo los parametros para cambiar de un estado a otro.

Supongo, que te refieres a que has creado las animaciones(correr, saltar, etc...) con Unity desde la ventana Animation, que no es lo mismo que el componente Animation.

 

Unity tiene dos formas de animar, mediante el componente Animation o el componente Animator.

 

En realidad, lo estás haciendo con el componente Animator solo.

Bueno, pues si lo haces con el componente Animator entonces utilizas un AnimatorController para reproducir las animaciones mediante variables(booleanas, float, entero, trigger, ... ) para realizar 'Transiciones'.

Unity, cuando añades una animación(AnimationClip) automáticamente crea una 'Transición' llamada 'Exit', con la opción 'Has Exit Time'. Tienes que eliminar esa transición 'Exit'(desactivar casilla 'Has Exit Time'), y sustituirla por otra que utilice algun tipo de variable con la que puedas realizar la transición a tu antojo.

 

También, tienes que desactivar la opción 'Loop Time' de la animación(AnimationClip).

Edited by kaito

Share this post


Link to post
Share on other sites

Muchas gracias Kaito, 

problema resuelto, tal como dices al desactivar el "Has time exist" me elimina el tiempo de espera de pasar de un ciclo a otro, y el Loop time es que no lo estaba buscando donde no era, creo que es lo que necesito!

Por cierto, al ver en la ventana que pone Animation pensaba que era ese componente, no sabia que solo usaba animator.

Un saludo y gracias por aclararme el tema.

Share this post


Link to post
Share on other sites
Sign in to follow this  

UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...