2010-03-09 5 views
2

Я хочу, чтобы мой твитер ИИ бежал прямо от игрока, когда игрок его ударяет, и я не знаю математики или синтаксиса для вычисления этого угла. Это два персонажа, движущихся независимо через мировое пространство.Нахождение угла бегущего додо

Вот что я получил до сих пор:

waypoint = (fleeWP.transform.position); 

transform.LookAt(Vector3(waypoint.x, transform.position.y, waypoint.z));  
transform.Translate (Vector3.forward * speed * Time.deltaTime); 

Это в настоящее время делает криттера движение к путевой точке, а не в сторону. Я мог бы напасть на все это неправильно. Пожалуйста, накажите меня.

ответ

2

Просто инвертировать перевод:

transform.Translate (Vector3.forward * speed * Time.deltaTime * -1); 
+0

Я попытался это, но это делает дронт работать в обратном направлении. Я бы хотел, чтобы он посмотрел в направлении его работы. – donthackmyacc

+0

Использование кода Ignacio должно исправить направление додо для вас. Теперь просто инвертируйте LookAt. transform.LookAt (Vector3 (waypoint.x * -1, transform.position.y * -1, waypoint.z)); – Vladislav

+0

Lookat использует координаты worldlspace, поэтому их отрицательные значения задают путевую точку на отрицательной стороне origo. Таким образом, он больше не смотрит на игрока, а на позицию игроков в отрицательном пространстве. – donthackmyacc