场景中有 Capsule,Cube,Plan
给Plane添加组件NavMesh Surface
给Capsule添加组件NavMesh Agent
给Cube添加组件NavMesh Obstacle
在Plane的Inspctor中点击Bake
添加脚本
using UnityEngine;
using UnityEngine.Events;
public class Manager : MonoBehaviour
{
//inspctor中出现OnClickEnv事件,该事件是基于Vector3的
public EventVecter3 OnClickEnv;
RaycastHit hit;
// Update is called once per frame
void Update()
{
Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit);
if (Input.GetMouseButtonDown(0))
{
//触发在inspctor绑定的内容
OnClickEnv.Invoke(hit.point);
}
}
}
[System.Serializable]
public class EventVecter3 : UnityEvent<Vector3> { }
在unity中添加一个empyt object,添加脚本后,在Inspctor中绑定事件
完成后Capsule可自动寻路了