UnityФорумОбщее

[Navigation] Поиск пути по отвесным и/или перевёрнутым поверхностям

#0
10:06, 2 июля 2016

Суть в названии.
Есть некий бот, который должен спокойно бегать как по полу, так и по стенам с потолком любого наклона.
Насколько я смотрел, сделать это стандартным запеканием навмеша не выйдет.
Пока что костыльное решение - наставить кучу оффмешлинков и ловить каждый нужный (т.е. по стене) и как-то двигать самому. С потолком это пока никак не решает проблему.
Есть какие-нибудь идеи?
(переворачивать бота вверх ногами как-то невкусно)

#1
12:31, 2 июля 2016

Это невозможно сейчас.
Если добавят мульти-навмешь (когда можно создавать больше одного навмеша), то можно такое попробовать.

#2
19:54, 2 июля 2016

Кроме встроенного навмэша есть и другие его реализации, например, RAIN AI. Значит, можно было бы написать свой. Только, если это будет специальный 3д-навмэш по стенам и потолку, его не запечёшь просто так, думаю, придётся специально моделировать в 3д-редакторе. А там, может, можно будет его и использовать в какой-нибудь готовой реализации навмэша.

Могу ещё посоветовать времянку типа костыль для ну очень лёгкой реализации. Использовать основной навмэш Юнити, запечённый на полу, как и следует, для глобального поиска цели (игроки, враги, предметы). Чтобы знать, через какие нужно проползти комнаты, чтобы достичь цели. А кроме этого, пускать лучи в стены. Проверять лучами, есть ли стены или потолок в пределах навмэша. Если есть стена, то прилепить к этой стене бота, время от времени плавно менять его высоту, как бы он ползает по стенам наискосок. Или прочие хитрые эффекты. Если никаких стен нет, или какие-то мудрёные выступы, то можно всегда дать возможность боту проползти по полу. В зависимости от таланта левелдизайнера можно добиться интересного эффекта.

#3
0:09, 3 июля 2016

Такого с навмешом сейчас вообще не существует решения.
Передовая библиотека Recast, которая используется в Юнити, UE4, пока не способна на такое.

Можно сделать с waypoints.
Их можно куда угодно лепить.

#4
19:27, 4 июля 2016

LifeKILLED, гуглю RAIN AI
Костыль даже костылём не назвать, это будет выглядеть просто ужасно)
С потолком такое и думал замутить: создать "плановую" (от слова "планка") копию потолка, опустить чуть ниже самого потолка и запечь вместе со всем навмешем. Потом натыкать оффмешлинков между полом и этим "лжепотолком" и ловить беганье бота по оффмешлинкам - если собирается бежать наверх, на потолок, то проиграть анимацию "взбирания по чему-либо" а наверху попросту перевернуть вверх ногами (ну или в более адекватном ключе - проиграть анимацию перелезания со стены на потолок, где после всё равно использовать перевёрнутую модель - либо через бленд трис заморочиться)

AntonioModer
Waypoints пошёл гуглить. Но что-то подсказывает, что это будет немногим лучше выше описанного костыля)

Всем спасибо за инфу, если есть ещё идеи - пишите, пожалуйста

-——————————————————————————————————————————

LifeKILLED
Вне зависимости от того, поможет ли мне Rain AI решить проблему или нет, - спасибо тебе огроменное, чувак, эта бесплатная штуковина просто чудесна!:****

#5
22:23, 4 июля 2016

fearOfBeingFake
В RAIN AI есть waypoint система.
В Юнити маркете есть разные waypoint системы, ищи по слову pathfind: https://www.assetstore.unity3d.com/en/#!/search/page=1/sortby=relevance/query=pathfind

UnityФорумОбщее

Тема в архиве.