Quaternion.LookRotation(targetPosition - projectile.transform.position)
означает «Дайте мне кватернион, представляющий поворот вектора от к targetPosition - projectile.transform.position
».eulerAngles
- это просто еще одно представление о вращении, и вы не получите ничего значимого из его величины.
Я подозреваю, что вы этого не хотите.Вместо этого я подозреваю, что вы хотите знать, должен ли снаряд поворачиваться более чем на 60 градусов от его текущего прямого направления . В этом случае вы, вероятно, захотите проверить угол наклона.между передним вектором снаряда и вектором его направления к цели.
У меня нет открытого Unity, поэтому я не знаю, компилируется ли он, но он должен выглядеть примерно так:
var directionToTarget = targetPosition - projectile.transform.position;
var angleToTarget = Vector3.Angle(projectile.transform.forward, directionToTarget);
if (angleToTarget < 60) ...
Вы упомянули, что хотите более «реалистичный» поворот.Что вы хотите сделать от снаряда, если он больше 60 градусов?