Version: 2023.2

NavMesh.AddNavMeshData

切换到手册
public static AI.NavMeshDataInstance AddNavMeshData (AI.NavMeshData navMeshData);

参数

navMeshData 包含导航网格数据。

返回

NavMeshDataInstance 表示已添加的导航网格。

描述

向游戏添加指定的导航网格数据。

这样,导航网格数据可用于代理和导航网格查询。返回用于稍后在运行时删除导航网格数据的实例。

除非无法添加导航网格数据(例如,由于内存不足或从损坏的文件加载导航网格数据),否则返回的实例将是有效的。

Additional resources: NavMeshDataInstance, RemoveNavMeshData.


public static AI.NavMeshDataInstance AddNavMeshData (AI.NavMeshData navMeshData, Vector3 position, Quaternion rotation);

参数

navMeshData 包含导航网格数据。
position 将导航网格转换至此位置。
rotation 将导航网格旋转至此方向。

返回

NavMeshDataInstance 表示已添加的导航网格。

描述

向游戏添加指定的导航网格数据。

此函数类似于上方的 AddNavMeshData,但除已从中烘培导航网格数据的位置和旋转之外,还会应用指定的位置和旋转。

using UnityEngine;
using UnityEngine.AI;

class Example : MonoBehaviour { public NavMeshData data; NavMeshDataInstance[] instances = new NavMeshDataInstance[2];

public void OnEnable() { // Add an instance of navmesh data instances[0] = NavMesh.AddNavMeshData(data);

// Add another instance of the same navmesh data - displaced and rotated instances[1] = NavMesh.AddNavMeshData(data, new Vector3(0, 5, 0), Quaternion.AngleAxis(90, Vector3.up)); }

public void OnDisable() { instances[0].Remove(); instances[1].Remove(); } }