Выяснить разницу углов - PullRequest
0 голосов
/ 22 февраля 2019

Камера вращается вокруг точки, и я могу перемещать ее вверх и вниз относительно камеры.Я пытаюсь выяснить разницу углов, чтобы ограничить пользовательский ввод для перемещения камеры вверх и вниз.Меня не волнует ось Z, поэтому я убираю ее из требуемого поворота.

Проблема в том, что когда она вращается только вокруг, а не движется вверх и вниз, изменяется angleDifference.

camTransform.RotateAround(target.position, transform.forward, 5);

Quaternion desiredRotation = Quaternion.Euler(camTransform.eulerAngles.x + (-rotation.y), camTransform.eulerAngles.y, 0);

float angleDifference = Quaternion.Angle(desiredRotation, Quaternion.identity);

// I haven't set up any check to see if angleDifference is valid yet
camTransform.Rotate(-rotation.y, 0, 0, Space.Self);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...