Задать вопрос
TheTalion
@TheTalion

Как получить текущую воспроизводимую анимацию из Animator?

Пробовал сделать так:
animator.Play ("Create");
                var hash = Animator.StringToHash ("Base Layer.Create");
                var state = animator.GetCurrentAnimatorStateInfo(0);
                while (state.fullPathHash == hash) {//тут false
                        Debug.Log ("1111");
                }


Еще пробовал без Base Layer строку в хэш приводить, но все равно не правильный путь.

Сам контроллер:
fc74a65e606d656d09021cb02831b17b-full.jp

Что я делаю не так? Или нельзя ли как-то проще это все проворачивать, понятными структурами без хешей?
  • Вопрос задан
  • 2573 просмотра
Подписаться 1 Оценить 2 комментария
Решения вопроса 2
MrMureno
@MrMureno Куратор тега Unity
VR for all
Вам уже комментарием ответили, но если леть там прочитать и людям на будущее.
по идее все банально. вы считали, что слой у вас "Base Layer" , а на деле он у вас просто "Base".
поэтому и строка в коде поидее должна бы быть
var hash = Animator.StringToHash ("Base.Create");
Ответ написан
@xgz98
if(SettingPanel.GetCurrentAnimatorStateInfo(0).IsName("StopOn")
{
.........
}

Так я проверяю имя текущей анимации
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы