struct perspective { float xangle, yangle; float scale; float sensitivity; }; struct perspective glPerspective; void mousehandler(SDL_MouseMotionEvent mouseEvent) { if (moveperspective) { glPerspective.xangle += mouseEvent.xrel; glPerspective.yangle += mouseEvent.yrel; updatePerspective(); } } void updatePerspective(void) { glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glRotatef(glPerspective.yangle * glPerspective.sensitivity, 1, 0, 0); glRotatef(glPerspective.xangle * glPerspective.sensitivity, 0, 1, 0); }