Страница 1 из 1

Странное поведение NavMash

СообщениеДобавлено: 31 янв 2020, 10:02
MrDmitry
Здравствуйте, помогите разобраться с NavMash
Для теста, кинул на сцену плайн, зашел в Windows->Navigation во вкладке Object Выбрал Navigation static и поставил Walkable
На бота кинул NavMashObstacle и NavMashAgent.
Изображение
Изображение
Ни какого кода еще не писал просто запускаю сцену и бот тупо Телепортируется к краю NavMash и там стоит.
Изображение

Если написать следующий код

Синтаксис:
Используется csharp
agent.SetDestination(MainPlayer.position);
        transform.up = agent.velocity;

То персонаж начинает просто кружить по всем отмеченным точкам navMash
Изображение




Что я делаю не так?

Re: Странное поведение NavMash

СообщениеДобавлено: 31 янв 2020, 10:29
MrDmitry
Сам тупил, не работает одновременно NavMeshObstacle и NavMeshAgent

Re: Странное поведение NavMash

СообщениеДобавлено: 31 янв 2020, 10:39
MrDmitry
Задам здесь еще 1 вопрос. У меня спаунится игрок и куча ботов, которые должны за ним ходить, при написании кода из поста выше, боты начинают идти к игроку, сталкиваются с друг другом и мешают как друг другу так и игрока. Что с этим делать? Писать костыль с проверкой дистанции до игрока и бота и если разница не большая то останавливать бота? Или может есть какой то еще способ?
Изображение

Re: Странное поведение NavMash

СообщениеДобавлено: 31 янв 2020, 19:14
Xtir
Сделай виртуальные точки вокруг игрока, что каждый навмеш шёл к своей точке.

Re: Странное поведение NavMash

СообщениеДобавлено: 03 фев 2020, 08:25
jetyb
У NavMesh не случайно есть свойства Radius и StoppingDistance.

Re: Странное поведение NavMash

СообщениеДобавлено: 03 фев 2020, 14:24
MrDmitry
StoppingDistance - это дистанция остановки до таргета, если сделать ее слишком большой, то это вообще не сморится, а если сделать меньше то получается именной такой эффект.
Не знаю как вам это передать, но при увеличении radius боты уталкивают друг друга и получается эффект как будто они скользят на месте.