Навигационный меш (Navigation Mesh)
Navigation Mesh - это область навигации, которая расположена над поверхностью произвольной геометрии (меша). Фактически, Navigation Mesh - это область указанной высоты над полигонами меша, доступная для поиска пути.
В отличие от сектора навигации , Navigation Mesh позволяет следующее:
- В пределах Navigation Mesh могут быть рассчитаны только 2D-маршруты.
Поиск пути может выполняться только в пределах одного Navigation Mesh. Поиск пути в следующих областях не поддерживается:
- В пределах нескольких пересекающихся Navigation Meshe
- Внутри пересекающихся Navigation Mesh и сектора
Смотрите также#
- Класс NavigationMesh для управления навигационными мешами через API
- Статья Создание маршрутов чтобы узнать, как создавать маршруты внутри навигационного меша
- Набор примеров в папке <UnigineSDK>/data/samples/paths:
- mesh_00
- route_03
- Пример Navigation в наборе примеров C# Component Samples
Создание навигационного меша#
Перед добавлением Navigation Mesh вы должны подготовить меш, который будет использоваться в качестве основы. Такой меш создается отдельно и должен отвечать следующим требованиям:
- Любой многоугольник меша не должен иметь общий край с более чем 2 другими многоугольниками; в противном случае произойдет ошибка.
- Полигоны меша должны быть максимально широкими (в идеале они должны быть равносторонними). Слишком узкие и высокие многоугольники могут снизить точность расчета пути.
- Меш должна быть оптимизирован: он не должен содержать большого количества полигонов.
После подготовки меша, вы можете добавить Navigation Mesh в сцену через UnigineEditor:
- Запустите UnigineEditor.
В меню выберите Create -> Navigation -> Navigation Mesh.
В открывшемся диалоговом окне файла выберите необходимый меш, который будет использоваться в качестве основы для новой области навигации, и нажмите OK.
- Щелкните где-нибудь в мире, чтобы разместить файл Navigation Mesh. В UnigineEditor добавляется новый Navigation Mesh, и вы можете редактировать его через окно Parameters.
Пример#
Если у вас есть сцена с разными объектами и вам нужно рассчитать 2D-маршрут между ними, добавьте к этой сцене Navigation Mesh следующим образом:
Создайте плоский меш с отверстиями в местах расположения объектов.
СценаМеш, созданный для Navigation MeshУкажите этот меш как основу для Navigation Mesh, в пределах которой рассчитывается маршрут, и добавьте Navigation Mesh в мир. Он будет выделен зеленым цветом:
Navigation Mesh на основе плоского мешаПоместите Navigation Mesh над сценой.
Navigation Mesh расположенный над сценой
Редактирование навигационного меша#
На вкладке Node окна Parameters вы можете настроить следующие параметры Navigation Mesh:
Загрузка нового меша#
Чтобы загрузить новый меш, который будет использоваться в качестве основы для области навигации:
- На вкладке Navigation нажмите .
- В открывшемся диалоговом окне файла выберите нужный меш и нажмите OK.
Сохранение текущего меша#
Чтобы сохранить текущий меш, который используется в качестве основы для области навигации:
- На вкладке Navigation нажмите .
- В открывшемся диалоговом окне файла укажите имя меша и нажмите OK.