Wierd World
by Ben Cervantes

CSC471-01 Winter 2003 - Professor Zoe J. Wood
California Polytechnic State University

Program Description:

My goal was to create a geometrically and aesthetically pleasing wierd world. This world would include various shapes branching off of one another to form interesting objects. Most of the objects were formed using either recursively defined algorithms or hierarchichal models.

All of the objects were originally thought to be placed in a giant sphere. However, this didn't look that interesting, so a giant cylinder was used with a top and bottom plate. Material properties and lighting were used on the different objects to create for a more appealing atmosphere.

Another goal of mine was to allow the user to rotate the camera around the scene as well as zoom in and out.

Sample Output:

User Guide:

When the program is first launched the camera is positioned facing the center sphere object straight on. The user can then press 'c' on the keyboard and subsequently click and drag with the left mouse button. This will allow the camera to be rotated around the scene.

The user can also press 'z' on the keyboard; this will enable the camera to zoom in and out. After pressing 'z', click and drag with the left mouse button to the right and up to zoom out. To zoom in click and drag down and to the left. Limits are put on the zooming so that the user doesn't zoom completely out of the scene or completely throught the center.

The user can exit the program by pressing 'q'.

Commands:

'c' or 'C' and mouse = rotate the camera
'z' or 'Z' and mouse = zoom in and out
'q' or 'Q' to quit the program

References:

D'Anglelo, Tree/Grass/Bush Generator http://www.soe.ucsc.edu/classes/cmps160/Spring01/projects/proj/alexz/web/final.html

Woo, M., Neider, J., Davis, T., Shreiner, D. OpenGl Programming Guide. 3rd Edition. New York: Silicon Graphics, Inc., 1999.

Angel, E. OpenGl: A Primer. Boston: Addison-Wesley, 2002