NavMeshBuildingComponentsAPI
API компонентов сборки NavMesh
Компоненты сборки NavMesh предоставляют вам дополнительный контроль над созданием (также известным как запекание) и использованием NavMesh в редакторе Unity и в самой игре.
NavMesh Modifiers не являются частью стандартной установки Unity; смотрите документацию по компонентам сборки NavMesh высокого уровня чтобы узнать, как получить к ним доступ.
NavMeshSurface
Свойства
agentTypeID
– ID, описывающий тип агента, для которого создаётся NavMesh.collectObjects
–определяет, как собирается из сцены входная геометрия, один из UnityEngine.AI.CollectObjects:
All
– используются все объекты в сцене.Volume
– используются все игровые объекты, которые касаются некоего ограниченного объёма (смотрите свойстваsize
иcenter
).Children
– используются все объекты, являющиеся потомками игрового объекта, к которому прикреплен NavMesh.
size
- размеры объёма сборки. Масштабирование не влияет на размер.center
– положение центра объёма сборки относительно центра компонента transform.layerMask
– бит-маска, определяющая слои, объекты из которых должны быть включены в запекание.useGeometry
– определяет геометрию, используемую при запекании, одно из значенийUnityEngine.NavMeshCollectGeometry
:RenderMeshes
– используется геометрия от визуализируемых мешей и местности.PhysicsColliders
– используется геометрия от коллайдеров и местности.
defaultArea
– тип области по умолчанию для всех входных геометрией, если не указано иное.ignoreNavMeshAgent
– значение True, если игровой объект с компонентом NavMesh Agent должен быть проигнорирован как входной.ignoreNavMeshObstacle
– значение True, если игровой объект с компонентом NavMesh Obstacle должен быть проигнорирован как входной.overrideTileSize
– значение True, если установлен размер плитки.tileSize
– размер в вокселях (описание компонента включает информацию о том, как выбрать размер плитки).overrideVoxelSize
– значение True, если установлен размер вокселя.voxelSize -
размер вокселя в мировых единицах (описание компонента содержит информацию о том, как выбрать размер вокселя).buildHeightMesh
– не реализовано.bakedNavMeshData
– ссылка на NavMeshData, которую использует поверхность, или null, если не установлена.activeSurfaces
– список всех активных NavMeshSurfaces.
Примечание: Вышеуказанные значения оказывают влияние на запекание, этому вы должны вызвать Bake()
чтобы задействовать их.
Открытые функции
void Bake ()
Запекает новый NavMeshData на основании параметров, установленных в NavMesh Surface. К данным можно получить доступ через bakedNavMeshData
.
NavMesh Modifier
Свойства
overrideArea
– True, если модификатор переопределяет тип области.area
– Новый тип области для применения.ignoreFromBuild
– True, если игровой объект, содержащий модификатор, и его потомки не должны быть использован ы при запекании NavMesh.activeModifiers
– список всех активных NavMeshModifiers.
Открытые функции
bool AffectsAgentType(int agentTypeID)
Возвращает true, если модификатор применяется к указанному типу агента, иначе false.
NavMesh Modifier Volume
Свойства
size
– Размер ограниченного объёма в единицах локального пространства. Компонент transform влияет на размер.center
– Центр ограниченного объёма в единицах локального пространства. Transform влияет на центр.area
– тип области для применения к областям NavMesh, находящимся внутри ограниченного объёма.
Открытые функции
bool AffectsAgentType(int agentTypeID)
Возвращает true, если модификатор применяется для указанного типа агента.
NavMesh Link
Свойства
agentTypeID
– тип агента, который может использовать этот переход.startPoint
– положение начальной точки перехода в единицах локального пространства. Transform влияет на положение.endPoint
– положение конечной точки в единицах локального пространства. Transform влияет на положение.width
– ширина перехода в мировых единицах длины.bidirectional
– если true, то через переход можно перемещаться в обоих направлениях. Если false, то только от начальной точки до конечнойautoUpdate
– если true, то переход обновляет конечные точки, чтобы следовать за преобразованием игрового объекта каждый кадр.area
– тип области перехода (используется для стоимости поиска пути).
Открытые функции
void UpdateLink()
Обновляет Link в соответствии со связанным Transform. Это полезно при обновлении link, например, после изменения позиции Transform, но это необязательно если включено свойство autoUpdate
. Однако вызов UpdateLink
может значительно ослабить влияние на производительность если вы редко изменяете Transform у Link.