Unity 2D Контролер анімації

2075 / Unity / 2D / Контролер анімації

 

Animator anim;
float translation;

void Start()
{
  anim = GetComponent<Animator>();
}

void Update()
{
  translation = Input.GetAxis("Horizontal") * speed * Time.deltaTime;
  if (translation != 0)
  {
    anim.SetBool("isWalk", true);
  }
  else
  {
    anim.SetBool("isWalk", false);
  }

  if (Input.GetButtonDown("isJump"))
  {
    anim.SetTrigger("isJump");
  }
}



 

Тригер

a – показати усі анімації

 

Причепити тригер до стрілки

 

Аби анімація не зациклювалася

Анімація в Assets -> Loop Time – зняти галочку

 

Запустити функцію під час анімації (звук кроку…)

 

Якщо додати 2-гу стрілку – з'являться 3 стрілки в тому ж напрямку, і можна буде додати кілька тригерів для одного і того ж переходу

 

Зміна параметрів у коді

Animator anim = GetComponent<Animator>();
anim.Play("Anim1", 0f, 0.5f); // програвати з позиції
anim.Play("Anim1"); // різко перейти до іншої анімації
anim.CrossFade("Anim1", 0.1f); 
anim.speed = 0.1f; // змінити швидкість
anim.enabled = false; // виключити