首先選擇角色所在的地形,點擊window->Navigation打開Navigation窗口,在Navigation下的object選項卡中選「Navigation Static」其餘保持默認便可,而後點擊右下角「Bake」就能夠了; 若是有障礙物,且障礙物不屬於地形物體,須要對障礙物進行烘焙,方法是選擇障礙物,在Navigation下的Object選項卡中勾選「Navigation Static」,「Navigation Layer」選擇「Not Walkable」,打開Bake選項卡,根據須要修改相關參數,而後點擊右下角「Bake」烘焙便可。 對於自動尋路的角色,須要添加「NavMeshAgent」組件,方法是點擊菜單欄中「component->Naviga->NavMeshAgent」這樣自動尋路的相關設置就完成了; 還須要爲角色添加代碼是他可以自動尋路:
public PlayerControl:MonoBehavior
c#
{ide
private NavMeshAgent agent;
component
public float speed=6;
orm
void Start()
it
{io
agent=GetComponent<NavMeshAgent>();//獲取NavMeshAgent組件
ast
}
form
void Update()
class
{transform
if(Input.GetMouseButtonDown(0))
{
Ray ray=Camera.main.ScreenPointToRay(Input.mousePosition);
RayCastHit hitInfo;
if(Physics.RayCast(ray,out hitInfo))
{
if(!hitInfo.Collider.name.Equals("Terrain"))
return;
else
{
Vector3 point=hitInfo.point;
transform.LookAt(new Vector3(point.x,transform.position.y,point.z));
agent.speed=speed;
agent.SetDestination(point);
}
}
}
}
}