Я надеюсь, что вы знакомы с математикой GL ( GLM ), потому что у меня есть проблема, я не могу сломать:
У меня есть набор углов Эйлера, и мне нужно выполнить плавную интерполяцию между ними. Лучший способ - преобразовать их в кватернионы и применить алгоритм SLERP.
У меня вопрос, как инициализировать glm :: quaternion с помощью углов Эйлера, пожалуйста?
Я читаю документацию GLM снова и снова, но не могу найти уместного Quaternion constructor signature
, что бы взять три угла Эйлера. Самым близким, который я нашел, является
функция angleAxis () , принимающая значение угла и ось для этого угла. Обратите внимание, что я ищу способ, как разобрать RotX, RotY, RotZ
.
К вашему сведению, это подпись функции metNioned angleAxis () :
detail::tquat< valType > angleAxis (valType const &angle, valType const &x, valType const &y, valType const &z)