Задать вопрос
Alexeee
@Alexeee
Разработчик игр

Как поворачивать 2D объект?

Всем привет. Пишу с банальным вопросом. Видел кучу примеров по данному вопросу, но никак они не хотят работать.
Что нужно: 2D объект поворачивать по направлению джойстика.
Пробовал LookAt(), Rotate(), и многое другое. Большинство примеров были для указателя мыши, прошу помочь именно с джойстиком.

public float angleBetween;
transform.rotation = Quemertion.AngleAxes(angleBetween, Vector3.forward);

В данном случае объект поворачивается на angleBetween, который указываем в инспекторе.
Но я не могу вычислить угол джойстика.
  • Вопрос задан
  • 2002 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 2
    1 неделя
    Далее
Решения вопроса 1
BasmanovDaniil
@BasmanovDaniil
Геймдизайнер-телепат
Сначала через Input.GetAxis достаёте горизонтальное и вертикальное положение джойстика, получаете вектор в плоскости XY. Потом с помощью Quaternion.FromToRotation получаете вращение вокруг оси Z.
float horizontal = Input.GetAxis("Horizontal");
float vertical = Input.GetAxis("Vertical");
var vector = new Vector3(horizontal, vertical , 0);
transform.rotation = Quaternion.FromToRotation(Vector3.up, vector);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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