+ /*
+ * Check for pressed buttons and change view accordingly
+ */
+ if (btn_current_pressed == Button1)
+ {
+ double yaw_diff = (btn_current_pos_x - btn_reference_pos_x) / 24.0;
+ if (yaw_diff > 90.0)
+ yaw_diff = 90.0;
+ else if (yaw_diff < -90.0)
+ yaw_diff = -90.0;
+
+ yaw += yaw_diff;
+ if (yaw > 180.0)
+ yaw -= 360.0;
+ else if (yaw <= -180.0)
+ yaw += 360.0;
+
+ pitch -= (btn_current_pos_y - btn_reference_pos_y) / 24.0;
+ if (pitch > 90.0)
+ pitch = 90.0;
+ else if (pitch < -90.0)
+ pitch = -90.0;
+
+ isChanged = 1;
+ }
+ else if (btn_current_pressed == Button3)
+ {
+ double zoom_diff = (btn_current_pos_y - btn_reference_pos_y) / 64.0;
+ double zoom_ratio = pow (ZOOM_SPEED, zoom_diff);
+
+ fov *= zoom_ratio;
+ if (fov < 10.5)
+ fov = 10.5;
+ else if (fov > 165.0)
+ fov = 165.0;
+
+ isChanged = 1;
+ }
+