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 поставить галочку

Clipping

Example of clipping an area off from units.

Unlike other Source games where clipping can affect the collision of a model against a surface, in Dota 2 a clip mesh only affects the navigation grid square it contacts. Texturing a mesh in one of the clip textures will cause it to influence navigation grid it contacts. Clip materials applied to meshes are invisible and will not render.

Once a navigation mesh has been generated for a map it will be made up of a large grid of squares. Each one of these squares contains clipping data for any unit trying to pass through that location. Player controlled heroes are still units.

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

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


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

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


Template:Совет

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

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