Я пытаюсь вычислить единичный вектор, который указывает на мою камеру opengl. Учитывая ротационный кватернион (w, x, y, z), как бы я вычислил поворот единичного вектора вокруг этого кватерниона?Поверните вектор объекта по данному кватерниту
В этом случае единичный вектор может быть ограничен (0,0, -1).
EDIT: Окончательное решение
Для вращения (0,0,1):
vec.x=2*x*z - 2*y*w;
vec.y=2*y*z + 2*x*w;
vec.z=1 - 2*x*x - 2*y*y;
Заметим, что матрица должна быть перенесена для использования с OpenGL.
Вы читали http://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation? –
Я читал мили текста, пытаясь найти эффективное решение. Если я найду это, прежде чем я получу здесь ответ, я отправлю его. – Kent