(1) Implement some kind of interesting interaction, like a basic game. There
must be motion involved, such as moving (and rotating) the camera and/or
moving objects in the scene. There must also be interaction beyond just
movement – some kind of point to the game.
(2) Implement diffuse and glossy rendering in GLSL shaders. See the files
ending in .glsl for more instructions.