Этот тред был создан для агрегации вопросов-ответов и помощи по движку Unity. Наиболее фундаментальные моменты будем закреплять в теле поста.
Задавайте свои вопросы под этой публикацией. Чем сможем - поможем, Community как никак.
Смотрите также:
Комментарии
У кого-нибудь есть опыт поиска путей в юнити? Не особо представляю как реализовать, свою систему или нав меш работает вполне адекватно? Условия: агенты могут двигаться в одну точку группами, территория 2д ограниченная радиусом, препятствия только в виде других физических объектов.
alexprey, навмеш в юнити является вполне годным, я бы даже сказал очень годным.
Конкретные кейсы очень влияют.
2D игра и особый размер у зданий по клеткам -> A*
Есть сервер игры и он отвязан от юнити -> что угодно кроме юнити навмеша
Очень много динамики и 2д сетка -> A Jump, Rayfinding
3д, возможно с сеткой, где один из игроков хостит -> NavMesh
Есть переходы между подгружаемыми локациями -> NavMesh + A*
В юнити-навмеше карта, насколько мне помнится запекается под конкретных описанных агентов, т.е. есть некоторый список из определенных радиусов. С лета прошлого года подъехал реалтайм (что сделало навмеш очень крутым и значительно расширило количество случаев, когда можно юзать его), но можно ли там генерить агентов на ходу хз.
Передвижение группами придется делать самостоятельно скорее всего, но можно поискать на сторе реализации, мб какой-то разработчик уже сделал это внутри своего ассета.
Devion, я пока что еще не пробовал, но судя по документации вроде можно все спокойно добавлять и он будет его перерасчитывать. Вот у меня как раз кейс с кучей динамики, по сути статичных объектов будет единицы, остальное все в движении. Почитаю про рейфайдинг, первый раз про этот подход слышу. Спасибо.
alexprey, Rayfinding и AJump - алгоритмы оптимального поиска пути, не кратчайшего. Это важно понимать, подходит ли под твои задачи. Лучевая трассировка обычно используется в паре с алгоритмом кратчайшего поиска.
Кратчайший поиск = нахождение самого короткого маршрута
Оптимальный поиск = нахождение одного из кратчайших
Необходимость юзания оптимального поиска в том, что зачастую это эвристические алгоритмы, т.е. они производят чрезвычайно быстрый расчет. В случае когда бегает много юнитов, которые часто меняют позицию, либо расчеты производится сервером - это становится очень критичным.
Если ты делаешь игру сингл под пк в 3д, то почти наверняка лучше юзать встроенный навмеш.
Devion, ну я думаю это не проблема если юниты будут двигаться чуть менее оптимально, чем могли бы, просто главное, чтобы толпа юнитов между собой не тупила. Соответственно мне надо будет это тоже как-то учитывать и соответственно собирать сетку на основе этих юнитов и учитывать их направление движения.. в общем задача не такая простая как кажется на первый взгляд, но попробую Ajump реализовать, он выглядит интересно. А вот про Rayfinding к сожалению ничего не смог найти(
alexprey, rayfinding = лучевая трассировка = raytracing, гугли так )
это я намешал всякого в одном слове alexprey, глянь скрипт, может поможет )
https://devtribe.ru/files/100001/1000904/comments/1007817/Skr...
гуд, а статья будет? ;)


<a href= http://mosros.flybb.ru/viewtopic.php?f=2&t=635>Процесс получения диплома стоматолога: реально ли это сделать быстро?</a>