Version: 2022.3
Experimental: this API is experimental and might be changed or removed in the future.

NavMeshQuery.MoveLocation

切换到手册
public Experimental.AI.NavMeshLocation MoveLocation (Experimental.AI.NavMeshLocation location, Vector3 target, int areaMask);

参数

location 要在导航网格表面上移动的位置。
target 您需要将代理移动到的世界位置。
areaMask 位掩码,在与可遍历区域对应的索引处,值设置为 1,对于不应遍历的区域,值设置为 0。此参数可以忽略,在这种情况下,默认为 NavMesh.AllAreas。另请参阅:Areas and Costs

返回

NavMeshLocation NavMesh 上的新位置,与指定 target 位置尽可能接近。
当起点位于 areaMask 不允许的区域内时,返回起点 /location/。

描述

将导航网格位置移动到另一个位置,且不会与表面失去接触。

返回导航网格上最接近 target 位置的位置,并且通过允许的区域类型在导航网格表面建立持续连接,一直到 location 参数指定的起始位置。如果 target 位置位于表面边缘或其允许的区域之外,则返回位于边缘上的位置。

此移动不会跨越 NavMeshLinksOff-mesh Links

如果 NavMeshQuery 初始化中的 pathNodePoolSize 值不足以容纳需要遍历的所有节点以便在 location.positiontarget 之间找到连接,则结果可能不准确(最接近)。

另请参阅:NavMeshQuery.MoveLocationsNavMeshQuery.MoveLocationsInSameAreas

Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961