Unity3d中的寻路,可以使用AStarPath 寻路插件。现在也可以使用Unity自带的 Navigation 功能来做。
来做一个例子:
上面的图片中,Cube 是阻碍物体,球 是代表玩家,要寻路。
设置Cube为不可通过物体
首先我们点击Window – Navigation 窗口,然后选中4个Cube,按照下图设置这4个Cube为不可通过,然后烘培
设置地面为可通过,,然后烘培
我们给圆球也就是我们的主角加上控制脚本
using UnityEngine;using System.Collections;public class findpath : MonoBehaviour {public NavMeshAgent agent;Vector3 point;Ray aray;RaycastHit ahit;// Use this for initializationvoid Start () {}// Update is called once per framevoid Update () {if (Input.GetMouseButtonDown(0)){aray = Camera.main.ScreenPointToRay(Input.mousePosition);if (Physics.Raycast(aray,out ahit)){point = ahit.point;}agent.SetDestination(point);}}}达到圆球朝鼠标点击的地方寻路效果
人生就像爬坡,要一步一步来。