Такая проблема, когда толпа идет с одного места в другое, все идут по одному самому короткому пути в ряд, близко подходят к повороту. Как сделать так чтобы пешеходы выглядели естественно. Немного "разбросать" их пути. (Увеличивать колайдер агента не вариант)
Сообщение отредактировал JakartaIlI - Четверг, 29 Марта 2018, 15:44
Разбросать точку прибития для разных юнитов?Написать свой алгоритм поиска пути? Начинать движение сначало юнитами которые ближе к точке прибития? Сделать пешеходам разную скорость,чтобы они пытались обойти друг друга?
Разбросать точку прибытия не вариант(все идут по одной дороге, так разброс будет виден только на последнем повороте). Написать свой алгоритм ресурсов не хватит, (почему то проект хочется завершить). Нужно создать толпу по дороге, проблема в том что они идут в линию а не по всей дороге. Если задать разную скорость то получится та же толпа в линию, только в растянутую толпу. Точно нет никаких простых решений?
На стандартной навигации это можно только костылями эмулировать, универсального и простого решения нет
В ассет сторе видел чето по этой теме, поищи
А вообще на гитхабе есть сорцы Unity (они недавно выложили весь C# код движка) Попробуй там разобраться и модифицировать алгоритм расчета веса пути при поиске
PS Правда это запрещено лицензией
Сообщение отредактировал drcrack - Пятница, 30 Марта 2018, 10:31
Не используй для перемещения стандартный агент. Двигай персонажей самостоятельно. Агент использовать только для построения пути. Для движения получать ближ узел из NavMeshAgent.path и двигаться к нему с небольшим случайным смещением.
А вообще на гитхабе есть сорцы Unity (они недавно выложили весь C# код движка) Попробуй там разобраться и модифицировать алгоритм расчета веса пути при поиске
Они выложили лишь код оберток API. Исходники на C++.
я без понятия насколько большая часть написана на шарпе, не смотрел и лень) если тупо обертки то все печально канеш, непонятно зачем это вообще выкладывать