Nav3DObstacleLoader - Nav3D Doc

Docy Child

Nav3DObstacleLoader

Для использования возможности предзапекания препятствий на сцене в режиме редактора и последующей их загрузки из бинарного файла используется компонент Nav3DObstacleLoader. Вы можете создать его на сцене, используя следующую кнопку верхнего меню:

 

На сцене появится следующий игровой объект:

 

Для всех препятствий на сцене, которые вы хотите запечь, выберите режим обработки Load from binary

 

Далее в инспекторе компонента Nav3DObstacleLoader вы сможете увидеть список всех игровых объектов с компонентом Nav3DObstacle, подлежащих запеканию.

 

Нажмите кнопку “Bake and serialize obstacles” и выберите папку в проекте для сохранения бинарного файла с запеченными данными о препятствиях на сцене.

После успешного запекания инспектор компонента Nav3DObstacleLoader примет такой вид:

 

Инспектор успешно сериализованных Nav3DObstacle будет иметь такой вид:

Теперь в игровом режиме при инициализации Nav3D навигационные графы всех запеченных препятствиях на сцене будут загружены из бинарного файла.

Есть важная особенность касающееся игровых объектов для которых включен статический батчинг. При загрузке навигационного графа из бинарного файла, Nav3DObstacleLoader пытается проверить соответствие данных в бинарном файле и текущих параметров препятствия на сцене (структура иерархии transform, поля transform компонентов, наличие валидного меша в MeshFilter, и прочее). Данная проверка нужна чтобы выкинуть исключение и тем самым уведомить пользователя, что запеченный навигационный файл стал неактуальным, поскольку препятствие было изменено после сохранения бинарного файла. В случае включенного статического батчинга для группы препятствий, валидация никогда не будет успешной, поскольку нельзя получить доступ к мешу препятствия. Так что мы добавили возможность отключения валидации. Для этого в инспекторе Nav3DObstacleLoader снимите галочку “Validate serialized data”.

Nav3DSphereShell

Represents a spherical shell that is perceived by other agents as an object to a...

Nav3DEvader

There is also a separate controller, whose behavior consists of just avoiding ne...

Nav3DAgentManager

This class implements several methods to get a list of all Nav3DAgents located i...

Nav3DPathTester

We implemented a useful component (Nav3DPathTester), which can be used while bui...

PathfindingResult

Contains the pathfinding data and time statistics. Time statistics: public TimeS...

Nav3DPath: События

For the convenience of notification when the pathfinding finished, the following...

Лог агента

Here you can copy the contents of the agent log to the clipboard by clicking the...

Debug drawing

In this section, you can visualize the agent and his nearest environment. This s...

Создание и настройка конфига из кода

All Nav3DAgentConfig parameters can be configured through the code as well. To ...

Nav3DManager

Nav3DManager is a helper static class. Can be useful for checking whether Nav3D ...

Nav3DInitializer

To use Nav3D in playmode, you need to initialize it. The Nav3DInitializer compon...

Nav3DObstacleLoader

To use the possibility of pre-baking obstacles on the scene in editor mode and t...

Chat Icon Close Icon
ru_RURussian