Вращение сцены в OpenGL при помощи мыши (Qt)

Для изучения материала заметки вращения сцены в OpenGL при помощи мыши сначала необходимо изучить материал этой заметки.

Идея очень проста - перехватить ивент мыши, определить скорость перемещения указатель мыши и, основываясь на этом, рассчитать угол поворота сцены. Фактически, то же, что и в предыдущем примере, но вращение осуществляется не по таймеру, а по ивенту мыши (движение мыши с нажатой кнопкой).

Вращение сцены в OpenGL (QT)

Итак, мы уже умеем инициализировать OpenGL-окно в QT. (/podklyuchenie-opengl-v-qt/) Теперь научимся вращать сцену. Сокращенно говоря, для поворота сцены в OpenGL  необходимо вызвать функцию void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z). Параметр angle задает угол поворота от текущего положения; x, y, z описывают вектор поворота, проще говоря - задают направление поворота. Можно так же изменить положение начала вектора.

Подключение OpenGL в QT

Рассмотрим пример подключения графической библиотеки OpenGL к QT проекту. Постараюсь выложить как можно доступнее, только самое необходимое для быстрого начала. Здесь мы рассмотрим только пример подключения и вывод простейшей сцены. В следующих заметках добавим поворот камеры и т. д.