Version: 2021.3

NavMesh.GetAreaFromName

切换到手册
public static int GetAreaFromName (string areaName);

参数

areaName 要查找的区域的名称。

返回

int 如果已找到指定区域,则返回其索引;如果未找到区域,则为 -1。

描述

返回名为导航网格区域类型的区域索引。

// NearestPointOnWater
using UnityEngine;
using UnityEngine.AI;

public class NearestPointOnWater : MonoBehaviour { void Update() { // Find the nearest point on water. int waterMask = 1 << NavMesh.GetAreaFromName("water"); NavMeshHit hit; if (NavMesh.SamplePosition(transform.position, out hit, 2.0f, waterMask)) { Debug.DrawRay(hit.position, Vector3.up, Color.blue); } } }

另请参阅:Areas and Costs,了解如何使用不同的区域类型。