NavMesh

class in UnityEngine.AI

切换到手册

描述

用于访问烘焙导航网格的单例类。

NavMesh 是一个类,可用于执行空间查询(如寻路和步行性测试)、设置特定区域类型的寻路成本以及调整寻路和规避的整体行为。

为了使用空间查询,您需要先为场景烘焙导航网格。

See also:
Building a NavMesh – for more information on how to setup and bake NavMesh
Areas and Costs – to learn how to use different Area types.
NavMeshAgent – to learn how to control and move NavMesh Agents.
NavMeshObstacle – to learn how to control NavMesh Obstacles using scripting.
OffMeshLink – to learn how to control Off-Mesh Links using scripting.

静态变量

AllAreas包含所有导航网格区域的区域遮罩常量。
avoidancePredictionTime描述代理在未来多久后预测碰撞,以便进行规避。
onPreUpdate设置一个要在执行帧更新期间且在导航网格更新之前调用的函数。
pathfindingIterationsPerFrame异步寻路过程中每帧处理的最大节点数。

静态函数

AddLink向导航网格添加链接。此链接由 NavMeshLinkData 结构描述。
AddNavMeshData向游戏添加指定的导航网格数据。
CalculatePath计算两点之间的路径并存储生成的路径。
CalculateTriangulation计算当前导航网格的三角形剖分。
CreateSettings创建并返回可用于运行时导航网格构建操作的导航网格构建设置新条目。
FindClosestEdge从导航网格上的一点找到最近的导航网格边缘。
GetAreaCost获取区域类型几何体的寻路成本。
GetAreaFromName返回名为导航网格区域类型的区域索引。
GetSettingsByID返回导航网格构建设置的现有条目。
GetSettingsByIndex按其有序索引返回导航网格构建设置的现有条目。
GetSettingsCount返回已注册的导航网格构建设置的数量。
GetSettingsNameFromID返回与导航网格构建设置(与提供的代理类型 ID 匹配)关联的名称。
Raycast在导航网格上的两点之间找出一条线。
RemoveLink从导航网格中删除链接。
RemoveNavMeshData从游戏中删除指定的 NavMeshDataInstance,使其无法用于代理和查询。
RemoveSettings删除与代理类型 ID 匹配的构建设置。
SamplePosition在指定范围内找到导航网格上最近的点。
SetAreaCost设置所有代理上的区域类型几何体的寻路成本。

委托

OnNavMeshPreUpdate一种委托,用于注册在导航网格系统更新之前调用的回调方法。