помочь?
Есть 20 ботов на сцене, управляемых BT. Иногда они не могут дойти до нужной точки (нода MoveTo), потому что мешают друг другу, при этом FindPath to Location, вызываемый в тике, находит точки, и TestPathSync возвращает True, то есть путь от текущей точки до целевой точки существует. Использую DetourCrowdAIController
С чем может быть связана такая проблема?
проблема явно кроется в хитбоксах пацанов. Когда они толпятся и жмутся, игра смотрит что они не могут добраться до точки и выкатывает фейл до рич. вариантов решения несколько: править левелдизайн, чтобы могли дойти при любом раскладе, править хитбоксы, чтобы они могли либо проходить друг сквозь друга, либо просто чтобы были достаточно небольшие, чтобы проблема не замечалась.
Спасибо за отзывчивость😌 Хотелось бы прояснить немного: "Фейл до рич"? Имеете в виду в ноде MoveTo?? А почему тогда он в принципе может найти путь до точки, а не возвращает false в TestPathSync или FindPath?
А как они не могут дойти? Застревают? Или же MoveTo проваливается (результат работы этого нода = fail)? Эта информация может помочь в поиске решения.
потому что поиск пути и процесс пути - разные процессы)
Интересно Выходит, MoveTo не гарантирует, что, даже если путь существует, павн дойдет до точки?
ну так он может быть прегражден динамическими обстаклами например.
Просто я ищу на застрявшем павне путь каждый тик... TestPathSync и другие функции не учитывают те же обстаклы ?) Потому что возвращают они true - путь найден
Звучит слишком сложно. В норме они и застревать особо не должны. Обычно Detour довольно хорошо работает. Большинство игр вообще совсем примитивный RVO используют, а не Detour, многие вообще без любого avoidance обходятся.
мои пацаны ваще из коробки друг друга обходят) но правда там и толп больше 3х человечков на места нет
Из коробки = без авойданса?
Обсуждают сегодня