利用Unity自带寻路组件NavMeshAgent
-
首先建立一个场景,并且将场景中不动的物体选中,勾选static中的Navigation static。如下  -
然后选中刚刚不动的物体,点击window -> AI -> Navigation

-
查看右侧Navigation, 选择Bake -> Bake 进行烘焙,这时会发现地图中选中的物体被分成了网格状  -
给需要自动寻路的物体加Nav Mesh Agent 组件

- 建立脚本,脚本代码如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;
public class Findpath : MonoBehaviour
{
public NavMeshAgent m_agent;
public Transform m_destination;
void Start()
{
m_agent = this.GetComponent<NavMeshAgent>();
}
void Update()
{
m_agent.destination = m_destination.position;
}
}
- 实例化上述脚本中的参数,其中m_agent为需要寻路的物体,m_destination为目的地
|