Hola
Lo que hice fue
-
Hacer tres nimaiones de salto: JumpUp los 3 primeros frames, JumpStill el frame 4 y JumpDown los 2 ultimos frames
-
Los añadi al Player (el animator controller)
-
Añadí un Parameter de tipo float llamado verticalForce.
-
En la transición entre la Animación Run y JumpUp puse que isOnTheGround sea false, luego entre JumpUp y JumpStill puse que verticalForce greater 0.5 y entre JumpStill y JumpDown verticalForce less -0.5
-
En el código se escribe la constante:
private const string VERTICAL_FORCE = "verticalForce";
En el update se asgina
animator.SetFloat(VERTICAL_FORCE, rigidBody.velocity.y);
Y en IsTouchingTheGround() se quita el pausar el animator
bool IsTouchingTheGround()
{
if(Physics2D.Raycast(this.transform.position, Vector2.down,1.5f,groundMask))
{
return true;
}
else
{
return false;
}
}```

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.