Lusha Zhang

Degree Type

Honors Capstone Project

Date of Submission

Spring 5-1-2011

Capstone Advisor

Ernest Sibert

Honors Reader

Marjory Baruch

Capstone Major

Electrical Engineering and Computer Science

Capstone College

Engineering and Computer Science

Audio/Visual Component


Capstone Prize Winner


Won Capstone Funding


Honors Categories

Sciences and Engineering

Subject Categories

Computer Engineering


This is an interactive animation created using C language, with support from the OpenGL, GLUT and the SDL frameworks. The concept behind this animation is to utilize the functions provided by OpenGL to achieve visual effects involving lighting, texture, motion, modeling and interaction.

Based on experiment and research on various libraries, the Simple DirectMedia Layer (SDL) framework was chosen to implement an audio frame buffer to play background music. The animation involved significant mathematical calculation in terms of motion and modeling. The animation is an underwater scene that contains randomly generated bubbles, a dolphin and a whale. Textures were applied to surrounding surfaces that construct the underwater environment. Lighting was optimized to make all the objects in the scene visible and genuine. Timing was adjusted to obtain smooth rendering. The dolphin and the whale were constructed vertex-wise using display lists.

In terms of interaction, the animation allows users to traverse the scene using keyboard input. Users can also choose to play and stop background music, which was composed using GarageBand.

The animation has met the proposed requirements. The OpenGL application programming interface (API) provides a basic and easy-to-use library for 2D and 3D graphic development. It constitutes the foundation of higher-level platforms such as Blender and Autodesk Maya.

This report is presented as a “system requirements specification,” augmented with explanations of various technical issues and certain implementation consideration.

Creative Commons License

Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License.



To view the content in your browser, please download Adobe Reader or, alternately,
you may Download the file to your hard drive.

NOTE: The latest versions of Adobe Reader do not support viewing PDF files within Firefox on Mac OS and if you are using a modern (Intel) Mac, there is no official plugin for viewing PDF files within the browser window.