Я не могу правильно переключать анимацию в единстве

Я делаю прыжки и холостые анимации в UNITY 3d. Вот код:

using UnityEngine; using System.Collections;

открытый класс JumpingD: MonoBehaviour {

public Animator anim;
public float JumpSpeed_;
private RigidBody _Character; //rigid body of the Character
public Vector3 JumpVector;

/*The thresh Hold level for the character to jump are
    1: Stay Idle
    25: Jump Up 
    */
void Start () 
{
    anim=GetComponent<Animator>();
    anim.SetFloat("JumpSpeed", 1)
}


void Update () 
{
    anim.SetFloat("JumpSpeed", 1)
   if(Input.GetKeyDown(KeyCode.J))
   {
       _Character.AddForce(JumpVector*Time.deltaTime);
       anim.SetFloat("JumpSpeed", 25)
   }
}

}

Проблема в том, что анимация прыжка не воспроизводится даже после нажатия клавиши J. Всегда воспроизводится анимация бездействия. Я хочу, чтобы анимация прыжка воспроизводилась после того, как я нажал клавишу J, и после этого персонаж снова переходит в режим ожидания.


person rafiAksdProgrammer    schedule 03.03.2015    source источник
comment
Не используйте тег unity для вопросов, связанных с игровым движком Unity3d. Для этого есть тег unity3d.   -  person Max Yankov    schedule 03.03.2015


Ответы (1)


В первой строке вашего метода обновления, который вызывается каждый кадр, вы устанавливаете "JumpSpeed" на 1. Это означает, что в следующем кадре игрок перестанет нажимать клавишу J, он сразу упадет до 1, поэтому, конечно, анимация перехода не будет играть "после" того, как игрок нажал клавишу J.

person Max Yankov    schedule 03.03.2015
comment
Да, я знаю это, но я хочу, чтобы после нажатия J он воспроизводил анимацию прыжка, а затем, когда я останавливаю анимацию прыжка, кнопка J снова воспроизводит анимацию IDLE. - person rafiAksdProgrammer; 03.03.2015
comment
Спасибо кстати golergka - person rafiAksdProgrammer; 03.03.2015
comment
Проверьте, как настроен ваш аниматор - полностью ли он воспроизводит анимацию, прежде чем вернуться в состояние ожидания. - person Max Yankov; 03.03.2015
comment
Как собственно так настроить? Я не знаю! - person rafiAksdProgrammer; 03.03.2015