NavigationSystemInUnity
Навигационная Система в Unity
Навигационная Система позволяет вам создавать персонажей, способных ориентироваться и перемещаться в игровом мире. Это дает вашим персонажам способность понимать, что например, чтобы попасть на второй этаж им нужно подняться по лестнице, а чтобы перебраться через канаву надо прыгнуть. Система Навигации в Unity состоит из следующих частей:
- NavMesh (сокращение от Navigation Mesh) это структура данных, которая описывает проходимые поверхности игрового мира, и позволяет найти путь из одного места в другое. Эта структура данных строится, или запекается, автоматически, исходя из геометрии вашего уровня.
- NavMesh Agent - этот компонент поможет создать персонажей, которые будут обходить друг друга, пока продвигаются в направлении своей цели. Агенты анализируют игровой мир, используя NavMesh, и понимают как избежать столкновения друг с другом , а также с двигающимися препятствиями.
- Off-Mesh Link - этот компонент позволяет вам включить в состав NavMesh сокращенный путь, который не может быть представлен, используя проходимые поверхности. Например, прыжок через канаву или забор, либо открывание двери перед тем как пройти через нее, все это должно быть описано как Off-mesh link.
- NavMesh Obstacle - этот компонент позволяет вам описать двигающиеся препятствия, которые агенты должны обходить во время передвижения по игровому миру. Бочка или ящик, контроллируемые физической системой - хороший пример таких препятствий. Пока препятствие двигается, агенты делают все возможное, чтобы уклониться от него, но рано или поздно препятствие станет неподвижным и вырежет дырку в навигационном меше, так что эти агенты могут изменить свои путь чтобы обогнуть его, или, если неподвижное препятствие блокирует проход, агенты смогут найти другой маршрут.