NavMesh

class in UnityEngine.AI

切换到手册

描述

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

The NavMesh is a class that can be used to do spatial queries, like pathfinding and walkability tests, set the pathfinding cost for specific area types, and to tweak global behavior of pathfinding and avoidance.

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

另请参阅:\ • 构建导航网格 – 了解有关如何设置和烘焙导航网格的更多信息\ • 区域和成本 – 了解如何使用不同的区域类型。\ • NavMeshAgent – 了解如何控制和移动导航网格代理。\ • NavMeshObstacle – 了解如何使用脚本控制导航网格障碍物。\ • OffMeshLink – 了解如何使用脚本控制网格外链接。\

静态变量

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

静态函数

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

委托

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