Как создать задержку между двумя анимациями в юнити?
Созданы две анимации: одна - закрытая дверь, затем дверь открывается, вторая - персонаж стоит, затем идет. По нажатию кнопки происходит переход в обеих анимациях:
animator.SetTrigger("door1");
anim.SetTrigger("walk");
Как создать задержку по времени, чтобы вторая анимация (переход персонажа из стоя в ходьбу) осуществлялся после полного завершения первой анимации (открытие двери)?
Ответы (1 шт):
Автор решения: Nikolay Stuff
→ Ссылка
В аниматоре в transition(стрелочка) есть Has Exit Time , то есть воспроизведение новой анимации не начнётся , пока не закончится другая.
Так же можно с помощью async
.
Пример:
private async void AnimChanger()
{
var animatinon = PlayerAnimator.GetCurrentAnimatorClipInfo(0)[0].clip;
await Task.Delay(TimeSpan.FromSeconds(animatinon.length));
}