Навигационная сетка кратко

Лекция



навигационная сетка , англ. navmesh или navigation mesh , это абстрактная структура данных, которая используется в программах искусственного интеллекта для помощи агентам в поиске путей через сложные пространства. Этот подход был известен по крайней мере с середины 1980-х годов в робототехнике , где его называли " картой лугов" (meadow map) , и был популяризирован в игровом ИИ в 2000 году.

Описание

Навигационная сетка – это совокупность двухмерных выпуклых многоугольников ( полигональная сетка ), определяющих, какие участки среды проходят агенты. Другими словами, персонаж в игре может свободно ходить по этим участкам без помех дерева, скамьи или других преград, являющихся частью окружающей среды. Смежные многоугольники соединены между собой в графе .

Определение контуров в пределах одного из этих многоугольников можно выполнять тривиально по прямой , т.к. многоугольник выпуклый и проходной . окружающей среды.

Представление проходных областей в 2D-образной форме упрощает вычисления, которые в противном случае нужно было бы делать в "настоящей" 3D-среде, однако, в отличие от 2D-сетки, оно позволяет проходимым участкам, которые накладываются сверху и снизу на разной высоте. Полигоны разных размеров и форм в навигационных сетях могут представлять произвольные среды с большей точностью, чем обычные сетки.

Навигационная сетка в игре (часто называемая navigation mesh или navmesh) — это упрощенная геометрическая структура, которая указывает, где персонажи могут перемещаться. Она выглядит как сеть многоугольников (обычно треугольников или четырехугольников), натянутых по поверхности уровней. Вот как ее можно представить:

  • Плоские или рельефные полигоны, покрывающие проходимые области;

  • Яркие границы, отделяющие зоны, где движение возможно, от препятствий;

  • Иногда — стрелки или направления движения, если навмеш использует потоковые данные;

  • Разрывы или «дыры» в местах, где ходить нельзя (например, вода, стены, обрывы).

Визуально это похоже на упрощенную карту уровня, разлинованную на кусочки, где каждый кусочек — потенциальная точка для перемещения NPC. В редакторах или дебаг-режимах она обычно отображается полупрозрачной сеткой поверх сцены.

Преимущества навигационной сети по сравнению с навигационными точками

По сравнению с навигационными точками навигационные сетки имеют следующие преимущества:

  • Умение находить реальный кратчайший путь (не граф)
  • Сокращение времени вычислений и объема памяти в открытых средах
  • Более простое управление различными шаблонами виртуальных агентов
  • Более легкое управление динамическими препятствиями

Создание

Навигационные сетки можно создавать вручную, автоматически или с помощью определенной комбинации. В видеоиграх дизайнер уровней может вручную определить полигоны navmesh в редакторе уровней .

Обычно принято считать, что среда, представленная в navmesh, является статичной - она ​​не меняется со временем - и, следовательно, navmesh может быть создана в офлайн-режиме и оставлена ​​без изменений. Однако было проведено некоторое исследование онлайн-обновления навигационных сеток для динамических сред.

Как работает NavMesh

  1. Создается навигационная карта на основе геометрии уровня (вручную или автоматически).

  2. Навигационные агенты (NPC, враги, союзники) используют NavMesh для поиска пути.

  3. В связке с алгоритмом (чаще всего A*), агент рассчитывает кратчайший маршрут до цели.

Навигационная сетка

История

В робототехнике использование связанных выпуклых многоугольников таким образом было названо «маппингом щелочей» придуманным в техническом отчете Рональда К. Аркина в 1986 году.

Навигационные сетки в искусственном интеллекте видеоигр, как правило, причисляются к статье Грега Снука от 2000 года "Упрощенное движение и поиск путей с помощью навигационных сетей" в " Game Programming Gems" . «Система осведомленности о местности» (Area Awareness System ) , используемая для ботов на Quake III Arena .

Навигационные сетки на практике

Реализация навигационной сетки на самом деле представляет собой три алгоритма:

  1. Алгоритм навигации по графу
  2. Алгоритм вытягивания нити
  3. И алгоритм рулевого управления/сглаживания траектории

Для поиска оптимального пути чаще всего используется A*

Области применения

Игровой жанр Применение NavMesh
3D Action/RPG Враги ищут путь к игроку
2D платформеры Прыжки по платформам и избегание обрывов
Стратегии Группы юнитов обходят здания и объекты
Симуляторы толпы Люди избегают столкновений друг с другом

Вау!! 😲 Ты еще не читал? Это зря!

  • A* (A-Star) Алгоритм поиска кратчайшего пути по сетке или графу
  • Алгоритм Дейктрисы Более универсальный алгоритм поиска пути (медленнее A*)
  • Graph Представление NavMesh как набора узлов и связей
  • Waypoint Graph Граф путевых точек, альтернатива NavMesh
  • Flood Fill / BFS Простые способы оценки доступности территорий
создано: 2025-06-21
обновлено: 2025-06-21
4



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей

Комментарии


Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Алгоритмы и теория алгоритмов

Термины: Алгоритмы и теория алгоритмов