Вращение кватернионов opengl

Если я сделаю quaternion, который представляет, например, направление игроков и угол вокруг этого поворота. Итак, для приложения я собираюсь сделать самолет летящим. Кватернион будет представлять направление игроков и угол вокруг этого направления.

Тогда мой вопрос: как мне повернуть объект в программе, преобразовать ли я кватернион игроков в матрицу, а затем glMultMatrix с этим?

Если все в порядке, может кто-нибудь опубликовать, верна ли моя теория, и если нет, отправьте мне исходный материал для чтения или какую-нибудь хорошую теорию о том, что мне следует делать.


person Chris Condy    schedule 27.11.2011    source источник
comment
Любой резон не просто использовать углы Эйлера / матрицу вращения непосредственно для этого?   -  person Michael Dorgan    schedule 27.11.2011
comment
@MichaelDorgan Замок карданного подвеса.   -  person sdasdadas    schedule 04.12.2013


Ответы (1)


Надеюсь, я правильно понял вопрос.

кватернион, который представляет, например, направление игроков и угол вокруг этого поворота

Да, кватернион единичной длины представляет ориентацию, которую можно интерпретировать как пару ось-угол. Сделать кватернион из угла оси просто.

как мне повернуть объект в программе, преобразовать ли я кватернион игроков в матрицу, а затем glMultMatrix это с этим?

Да, это один из способов сделать это.

Это хороший ресурс по математике (как объяснениям, так и уравнениям):

http://content.gpwiki.org/index.php/OpenGL:Tutorials:Using_Quaternions_to_present_rotation

person Kos    schedule 27.11.2011