The project similate a roller coaster ride consists of a Helix tubes and quarters of torus. User can get on the ride or watch the ride outside. User can also change the floor texture. When choosing getting on the ride, user can change the perspective so that they can experience the ride from different angle. When in the wireframe mode, user can adjust the number of wrap and number per wrap without affecting the height or the width of the components. The helix are drawn by rotating circles. The path of the ride (ride mode) requires lots of effort to find out. It is seperated in to several parts : helix, torus, tube and slope. The ball also rotate in more realistic angles. Enjoy!! Controls: Arrow keys control viewpoint. Press \"w\" to toggle wireframe mode Press \"c\" to toggle culling of back faces Press \"M\" or \"m\" to increase or decrease resolution of mushroom cap Press \"R\" or \"r\" to increase or decrease rate of movement (respectively) Press \"F\" or \"f\" to increase or decrease the animation speed Press \"1\" to turn light 1 on Press \"2\" to turn light 2 on Press \"3\" to turn light 3 on Press \"0\" to ride on the helix\ Press \" \" (space) to change floor\ Press \"w\" (space) to switch between WireFrameOn or glPolygonMode Press \"s\" to switch between smooth and flat shading Press \"h\" to switch to directional light mode Press \"+\" or \"-\" to increase or decrease the wrap Press \"N\" or \"n\" to increase or decrease the num per wrap Press \"j\" or \"l\" to rotate left or right for perspective Press \"i\" or \"k\" to zoom in or out Press \"p\" or \";\" to move up and down