Advertisement

[Unity][NavMeshAgent]计算角色走过的路程长度

阅读量:

要明确路径的距离,需获取两个坐标位置,即出发点与目的地。

复制代码
    float f = Vector3.Distance(a,b);
    

2.对已行走的总路程进行统计与累加

复制代码
    float distance += f;
    

在何种具体情境下,需要对行走的总距离进行计算?

当角色开始行进,并且其移动速率处于0至1之间的区间时,只有在抵达目标位置之后,才会对行走的距离进行累加。

复制代码
    player_go.transform.GetComponent<NavMeshAgent>().path.corners
    

在NavMeshAgent组件持续移动的过程中,将路径上所有节点的坐标信息进行收集并存储。

提取NavMeshAgent导航所获取的坐标数据,形成Vector3类型的数组

复制代码
    player_go.transform.GetComponent<NavMeshAgent>().path.corners;
    

这三项数值彼此之间保持一致。

复制代码
 player_go.transform.position;//玩家控制的角色的世界坐标点

    
 player_go.transform.GetComponent<NavMeshAgent>().nextPosit

全部评论 (0)

还没有任何评论哟~