Моя проблема в том, что всякий раз, когда она пытается двигаться к текущей путевой точке, она сталкивается со странными направлениями и полностью не идет по пути.AI сталкивается с Weird Direction при использовании путевой точки UNITY
IEnumerator FollowPath() {
Vector3 currentWaypoint = path[0];
while (true) {
//transform.LookAt (currentWaypoint);
if (transform.position == currentWaypoint) {
PathRequestManager.RequestPath(transform.position,target.position,OnPathFound);
targetIndex=0;
targetIndex ++;
//Debug.Log(currentWaypoint);
if (targetIndex >= path.Length) {
targetIndex =0;
path = new Vector3[0];
//yield break;
}
currentWaypoint = path[targetIndex];
}
transform.LookAt (currentWaypoint);
transform.position = Vector3.MoveTowards(transform.position,currentWaypoint,speed * Time.deltaTime);
yield return null;
}
}
В настоящее время используется * поиск пути. Полный исходный код можно найти здесь: https://github.com/SebLague/Pathfinding
Когда он достигнет текущей путевой точки, он случайным образом изменяет свое направление или случайным образом сталкивается с направлением и не проходит через следующую путевую точку. (Screenshot)
Я забыл сказать, что он переходит на другую путевую точку, когда нет направления, или позиция статична. но когда я добавил направление туда, где он тоже смотрит, он сталкивается со странным направлением в течение примерно 10 секунд, затем переходит к следующей путевой точке или иногда не переходит к следующей путевой точке, потому что он STUCKED смотрит на эту текущую точку. –
избавиться от 'targetIndex = 0;' – maksymiuk
Я попробовал ваше предложение, но он по-прежнему сталкивается со странным направлением после достижения путевой точки. Хотя я как-то добрался туда, откуда исходит ошибка. Это происходит из анимации и этой строки кода «transform.LookAt (currentWaypoint);». Я попытался удалить анимацию и каким-то образом перейти к следующей путевой точке. Как я могу это исправить? анимация имеет только статический запуск. поэтому он не имеет простоя или что-то еще, только запустить анимацию. –