Navigation Mesh

From Valve Developer Community
Jump to navigation Jump to search

A navigation mesh needs to be present to allow units to move around in a new map. This should be generated every time there are changes to the map that would change navigation data. The navigation mesh controls all movement in Dota 2 and defines where units can or cannot move to.

The navigation mesh in Dota 2 is a 2D plane generated from the top down. This implies certain limitations such as overhangs and bridges that cannot be traversed beneath. The mesh consists of a grid of 64x64 units that encompass the entire map. In order to generate a navigation mesh a material must be present on a surface in a custom map that is walkable. All of the "blend" materials have this attribute. Custom materials should specify a "User Material Attribute" of "dota.nav.walkable 1" to allow the navigation mesh to generate on top of it.

Note.pngПримечание:Props such as rocks or signs do not have collision in Dota. Most of the time this is preferred; however, if a rock of a certain size is placed, it may be desirable to clip that space off to prevent units from moving through it.

Сетка областей в Hammer

Navmesh button preview.png
Сетка областей в Hammer.

Сетка областей позволяет просматривать статусы областей. Чтобы её открыть, нажмите на кнопку navigation preview, которая находится на верхней панели инструментов. В игре сетку областей можно отобразить, если ввести "dota_gridnav_show 1" в консоль.

Значение цветов

  • Зеленый: Открытая область - Любой юнит может передвигаться по этой области.
  • Красный: Закрытая область- Наземные юниты не могут передвигаться в этой зоне. Кроме летающих юнитов (Пример: Winter Wiwern под 1 скилом "Arctic burn" может пройти в этой зоне).
  • Фиолетовый (Только в редакторе): Пока не сломают деревья в самой игре пройти тут нельзя.
  • Синий: Hero Clip - Герои не могут войти в эту область.
  • Желтый: Creature Clip - Юниты контролируемые AI не могут войти в эту область. Это не относится к героям которых контролирует AI, они подчиняются тем-же правилам, что и герои которых контролирует игрок.

Создание навигационной сетки

Навигационная сетка создается автоматически, когда карта компилируется.

  • Нажмите кнопку Run Map в верхней панели инструментов или F9
  • Build Physics поставить галочку
  • Build Grid Nav поставить галочку

Типы Clip материалов

Материалы могут быть применены для создания сетки поверхности, чтобы при компиляции карты движок мог создать навигацию по миру Чтобы узнать о строительной сетки и какой материал нужно наносить на сетку, посмотрите основные гайды. basic construction(en) tutorials.


Ниже находятся типы материалов clip, которые могут быть применены к mesh.

Skip
Блокирует зону для передвижения наземных юнитов. Для летающих юнитов данное пространство остается доступным для передвижения.
Clip
Этот материал позволяет пройти герою допустим через канаву или ров в игре. (допустим загрузили вы модель моста в редактор, но в игре герой не может по нему пройти. Тогда чуть ниже модели размещаете данный Clip и все).
Hero Clip
Герои не могут пройти в эту зону. Этот параметр влияет как на наземных юнитов, так и летающих(Примечание: в данную зону нельзя телепортироваться ни способностями героев, ни артефактами Blink dagger, force staff).
Creature Clip
Подобно Clip героев, но блокирует юнитов под контролем AI.


Tip.pngСовет:Совет В качестве тестирования различных зон используйте малые размеры карт для точной компиляции в редакторе желательно 32х32.

Консольные команды

dota_gridnav_show
  • "0" - Выключить
  • "1" - Basic Clip
  • "2" - Hero Clip
  • "3" - Creature Clip