Суббота, 14 Декабря 2024, 09:35

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Маршрут для нпс
Supr_maksДата: Пятница, 17 Января 2020, 16:11 | Сообщение # 1
частый гость
Сейчас нет на сайте
Подскажите как кодом/кодами создать для нпс маршруты.

У всех в душе пустота...

Сообщение отредактировал Supr_maks - Пятница, 17 Января 2020, 16:14
SharpSolarisДата: Пятница, 17 Января 2020, 23:28 | Сообщение # 2
был не раз
Сейчас нет на сайте
Для своей игры придумал такой вариант:

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

Используемая структура данных - односвязный список. Каждый элемент списка содержит координаты "точки" (возможной позиции для нпс) и указатели на другие доступные "точки" из этой позиции - куда можно совершить переход.

А дальше только немного векторной алгебры (определить направление движения при переходе из одной точки в другую) и логика передвижений (зависит от особенностей игры).


Сообщение отредактировал SharpSolaris - Пятница, 17 Января 2020, 23:53
StormTДата: Суббота, 01 Февраля 2020, 20:05 | Сообщение # 3
участник
Сейчас нет на сайте
Что-то мне кажется, что этот вариант слишком сложный и хотелось чего-то проще)
Supr_maks, движение непесей (а именно AI ботов) - целая наука...
У каждого реализовано по-своему под условия игры.

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

С помощью путей

и там уже назначаем нужный путь для нужного объекта, но тут много "но" и больше для катсцен подойдёт, хотя я часто использую у себя пути

С помощью Google и запроса game maker studio pathfinding
Особенное внимание уделить A* pathfinding - очень положительно отзываются. Но сам я туда не макался ещё.

В каком-то старом проекте я использовал точки, к которым идёт бот. При прикосновении точка исчезает и он автоматом идёт ко следующей, а я заранее составил маршрут из таких точек, просто тыкнув на карте "туда, сюда". Но этот способ одноразовый (ну или смотря как прописать в условия).



  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг