Figma-designer
@Figma-designer

Почему не работает Unity NavMeshAgent?

Всем привет!

Я создал агента во вкладке Agents, и если назначить его, а не Humanoid, то я получаю ошибку

"SetDestination" can only be called on an active agent that has been placed on a NavMesh.
UnityEngine.AI.NavMeshAgent:SetDestination (UnityEngine.Vector3)

Я не совсем понимаю, как мне присоединить его к сетке (и надо ли это делать вручную). Сейчас его параметры полностью скопированы с хуманоида, но это всё равно не работает :(
  • Вопрос задан
  • 406 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Ezekiel4
Охотник на пиратов и сборщик монолитов
Humanoid - это стандартный тип объекта. Это нужно для того, чтобы правильно генерировать карту маршрутов. В настройках вы указываете размеры, величину шага и максимальный угол подъёма. Для каждого типа отдельно нужно запечь поверхность. Для этого поместите пустую точку на локацию и добавьте компонент NavMeshSurface. Затем для данной зоны выбираете агента и нажимаете в её настройках Bake. У вас должна земля закраситься голубой заливкой. Подробнее о её настройке смотрите в роликах Brackeys.
1) https://www.youtube.com/watch?v=CHV1ymlw-P8
2) https://www.youtube.com/watch?v=FkLJ45Pt-mY
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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