欢迎大家来到我的博客http://unity.gopedu.com/home.php?mod=space&uid=3352&do=blog&view=me&from=space
自动寻径代码:
先自己搭建一个比较复杂的场景,然后测试自动寻径的功能
private NavMeshAgent agent;
private Animator anim;
void Start() {
agent = GetComponent<NavMeshAgent>();
anim = GetComponent<Animator>();
}
void Update() {
RaycastHit hit;
if (Input.GetMouseButtonDown(0)) {
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray, out hit)){
agent.SetDestination(hit.point);
}
}
//播放动画,判断是否到达了目的地,播放空闲或者跑步动画
if (agent.remainingDistance == 0)
{
AnimationToIdle();
}
else
{
AnimationToWalk();
}
}
public void AnimationToIdle(){
anim.SetFloat("idle", 1F);
anim.SetFloat("walk", 0.0F);
anim.SetFloat("run", 0F);
}
public void AnimationToWalk(){
anim.SetFloat("run", 0.0F);
anim.SetFloat("idle", 0F);
anim.SetFloat("walk", 1.0F);
}
请继续关注我的博客
http://unity.gopedu.com/home.php?mod=space&uid=3352&do=blog&view=me&from=space
更多精彩尽在http://www.gopedu.com/