@delphikettle
Программирую в свободное от учёбы время

Как получить вращение между вращениями?

Имеются два Quaternion. Необходимо получить такой Quaternion, при умножении которого на первый Quaternion, можно полчуить второй Quaternion.
  • Вопрос задан
  • 264 просмотра
Решения вопроса 2
gbg
@gbg
Любые ответы на любые вопросы
Кватернион - вполне русское слово.

Итого, имеем кватернионы A и B, хотим найти такой C, что
AC=B
значит, умножив справа обе части на кватернион, обратный к A, можем получить
C=invert(A)B.

Обращение кватерниона - взять сопряженный кватернион и поделить на квадрат нормы. Это все есть там же в википедии.
Ответ написан
BasmanovDaniil
@BasmanovDaniil
Геймдизайнер-телепат
Quaternion a = Random.rotation;
Quaternion b = Random.rotation;
Quaternion fromAToB = Quaternion.Inverse(a)*b;
Debug.Log(a*fromAToB == b); // True
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы