Пятница, 08 Ноября 2024, 22:21

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Проверка движения через NavMeshAgent
BassPiraT92Дата: Четверг, 20 Декабря 2018, 15:42 | Сообщение # 1
участник
Сейчас нет на сайте
Добрый вечер всем! Возник вопросс, ответ на который я не нашел.

Использую перемещение персонажа через NavMeshAgent, хочу реализовать анимацию. В данный момент проверяю движется ли персонаж по средствам условия If:

Код

        Distanta = Navig.remainingDistance;
        if (Distanta <= 0.01f)
           {
               Anima.SetInteger("State", 1);
           }
           else
           {
               Anima.SetInteger("State", 2);
           }


Но когда начинаю движение, анимация включается только через секунду после определения параметра remainingDistance. Сам процесс расчета использую через FixedUpdate()

Как реализовать что бы анимация включалась сразу же после клика по месту куда нужно двигаться?
drcrackДата: Пятница, 21 Декабря 2018, 08:52 | Сообщение # 2
старожил
Сейчас нет на сайте
скорее всего у тебя в контроллере на переходе из idle в run стоит флаг hasExitTime, его надо снять
BassPiraT92Дата: Суббота, 22 Декабря 2018, 20:37 | Сообщение # 3
участник
Сейчас нет на сайте
drcrack, Спасибо! Ты был прав!

А не подскажешь как можно через скрипт в иерархии переместить объект из дочернего объекта в основной?
drcrackДата: Воскресенье, 23 Декабря 2018, 18:36 | Сообщение # 4
старожил
Сейчас нет на сайте
не совсем понятно на каком обьекте висит скрипт и вообще что куда надо переместить, но вообще как-то так:
transform.parent = transform.parent.parent
^ переместит обьект на котором висит скрипт на 1 уровень выше в иерархии
BassPiraT92Дата: Воскресенье, 23 Декабря 2018, 21:02 | Сообщение # 5
участник
Сейчас нет на сайте
drcrack, ооо в точку! От души)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг