Create an OpengGL program that uses quaternions to allow the user to control the camera orientation.
Details
The program should function identically to the previous assignment.
The program should use quaternions such that:
the mouse location is converted into two axis angles.
the two axis angles are converted into two quaternions.
the two quaternions are multiplied together to create a single quaternion.
the quaternion is converted to a matrix.
the model-view matrix is modified using
glMultMatrixf
. Note that this requires getting a pointer to theglm::mat4
object’s data using the functionglm::value_ptr
.
See quaternions.cpp for an example of how to use the glm library to manipulate quaternions.