@Malis

От чего MeshAgentPath даёт не верные результаты?

Мне всего-то нужно получить массив векторов пути продвижения от А до В
Vector3[] MeshCorners = new Vector3[]{};
MeshAgentPath = new NavMeshPath();
NavMesh.CalculatePath(TargetA.transform.position, TargetB.transform.position, NavMesh.AllAreas, MeshAgentPath);
if(MeshAgentPath.status == NavMeshPathStatus.PathComplete){
  MeshCorners = MeshAgentPath.corners;
  Debug.Log(TargetA.transform.position + " =====> " + TargetB.transform.position);
  foreach(Vector3 vc in MeshCorners){ Debug.Log(vc); }
  }

В итоге мне выдаёт такой путь
(-0.2, -1.2, 0.0) =====> (-0.3, 0.6, 0.0)

(-0.2, -1.2, 0.0)
(0.0, 0.0, 0.0)
(-0.3, 0.6, 0.0)

координаты (0.0, 0.0, 0.0) явно здесь лишние, с чего они от туда берутся, как это поправить?
Из-за этого "бага" у меня неправильно двигается объект что влияет на игровой процесс...
Сразу скажу что все это находится на ровной плоскости и никаких преград нет, более того между остальными объектами правильно вычисляются координаты, подскажите в чём может быть причина, куда копать?
  • Вопрос задан
  • 26 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы