CSC 471-02 Final Project Interactive Rubik's Cube Brett Tsudama |
|
OVERVIEW
For my final project I have implemented an interactive Rubik's Cube. The program was written entirely in C++ using the OpenGL and GLUT API's.
USER'S GUIDE
To play with the Rubik's Cube, download and execute the binary file found here.
To rotate the entire cube as a whole, click the left mouse button anywhere outside the cube and drag the mouse. The cube will rotate in the direction of the mouse movement using a 'virtual trackball' effect. To stop the rotation, let go of the left mouse button.
To rotate individual slices (a slice consists of 9 small cubelets arranged along a single plane), click anywhere on the cube. Drag the mouse in the direction you wish to rotate the slice. Slices can only be rotated 90 degrees at a time.
To reset the cube, hit the 'r' key.
To scramble the cube, hit the 's' key. Each press
of the 's' key will apply 5 random moves to the current cube.
To turn off the axes, hit the 'a' key. The axes can sometimes get in the way of slice rotations.
To quit, hit the 'q' key.
SOURCE
The C++ source can be found here and the header file can be found here.