Мне уже доводилось сталкиваться с pathfinding'ом, в частности я знаком с алгоритмами A* и Dijkstra. Но проблема в том, что большинство подобных решений, будь то grid, graph или navmesh, все они подразумевают движение по плоскости (если совсем уж упростить, то они отлично работают для вида сверху). Но у меня платформер с видом сбоку, который подразумевает прыжки, падения, в общем физику и, в частности, гравитацию.
Комментарий недоступен
Я думаю, что если бы на то была воля разрабов, то так было во всех AAA играх.
Комментарий недоступен
Не много рейкастов одновременно пускается? Рейкаст - штука напряжная
Ну и стоит немного поменять сами возможности уровней, например добавить дверей или наклонных поверхностей - и придётся патчить.
Поиск пути более универсальная штука, которая работает независимо от топологии уровня. Её можно адаптировать к нетайловой системе и сделать более экономичной (а ещё точки присобачивать к платформам, чтобы те двигались вместе с движением платформ и ничего не приходилось переставлять), но придётся немного подумать
Ну и стоит немного поменять сами возможности уровней, например добавить дверей или наклонных поверхностей - и придётся патчить.Не придётся ;)
Всё уже протестировано на наклонных поверхностях и с дверьми. Благо всё это уже реализовано в игре.
Не настолько много, чтобы это заметно аффектило производительность. Ну и плюс не каждый кадр они кастуются.
Верно, куда эффективнее переделать систему поиска пути встроенную, тем более она довольно гибкая сейчас. Можно было бы даже под каждое состояние свою карту путей использовать (в обычном режиме бот например ямы преодолевает спускаясь в них и вылезая с другой стороны, а в агрессивном бы перепрыгивал). В случае с картой путей вовсе не понадобится каст лучей, достаточно у точки, в которую идет персонаж спросить как к ней добраться, а она вернет нужный набор кнопок:)
Есть еще хорошая вероятность, что с 10 врагами фпс не станет проседать, а с 11-ю уже начнет, а заметить это будет довольно сложно