CSE 40166 / 60166 - Computer Graphics

|    Home  |   Syllabus  |   Assignments  |   Schedule  |   Resources   |

TAYLOR SEALE

Homework 1

Homework assignment was to use OpenGL and simple primitives to write out my initials and CSE onto the screen, the ND monogram was added for some extra flair. I found that drawing lines was fairly easy, while implementing curves required a little bit of know how. To implement the curves in the 'C' and the 'S' I drew circles which at each angle alternated between a larger radius and a smaller radius. I was able to fill in the area by using the GL_TRIANGLE_STRIP primitive. The assignment also required use of the transformations glScalef(), glTranslatef(), and glRotatef(). Overall, I thought the assignment was a good intro to the the basics of 2D OpenGL.


Homework 2

Homework 2 was to create a "creature" which was animated and responded to mouse and keyboard actions. I choose to create one of Notre Dames fabled monster squirrels.

The squirrel leisurely follows the users mouse which is holding food. The user can press keys to change the type of food they feed the squirrel. If the user clicks the food is dropped to the ground and the squirrel feverishly scampers to feast upon it.

The squirrel gets fatter as he eats more and more food. Until, of course, he meets his demise.


Homework 3

Homework 3 was to create a 3D vehicle which could be driven within a boundary and viewed with a zoomable arcball camera. This homework was a good expansion on Homework 2 with the addition of 3D elements. In 'Sweet Ride Bro' the user takes control of a new sports car and drives it around a parking lot weaving and winding though traffic cones.


Homework 4

Homework 4 was to create a program which read in a file from the command line, parsed it and determined the control points for a Bezier curve. It then drew the control cage as well as the Bezier splines necessary to compose the complete Bezier curve. A solid red sphere moved along the curve as well. The user was able to navigate an arcball camera to get different views of the curve. In addition, they could toggle the control cage on and off using a menu triggered by a right click on the mouse.


Midterm Project

The midterm project was to animate a roller coaster along a path determined by a bezier curve. The project made use of: bezier curves, 3D drawing, lighting & materials, cameras & viewports, user-interactions, object-oriented programming, and OpenAL. The project was a good way to bring all of the concepts learned up until midterms together


Homework 5

Homework 5 was to model and draw a particle system for a fountain and a raincloud. The assignment also required that we implement skyboxing and billboarding as well as File I/O.


Homework 6

Homework 6 was to create a game using collisions. I created Grand Theft Hotwheels: Carpet City, as an homage to a staple of my child hood.

In GTHW: Carpet City, you play as a criminal roaming around Carpet City picking up packages (containing money I assume) while avoiding cops. The game gets progressively more difficult as the player completes stages.


Homework 7

Homework 7 was to create a fragment and vertex shader to manipulate an object model. My vertex shader animated my catzilla between two frightening poses. My fragment shader implemented a cel-lighting onto the catzilla which exposed its green shiny scales. This along with the nuclear wasteland skybox created a scene where an innocent town was being held captive by the vicious catzilla.


Final Project

As my final project John Quinn and I revamped my game GTA:Carpet City. We added shader functionality to fade to black and white on a user death, and to flash the car when health gets low. We also added lighting in the form of a spotlight shining down from a helicopter onto our character. Sound was also a huge area for enhancement. We added a radio as well as 3D sound for sirens on cop cars and effects for powerups/crates. We also added gameplay functionality through powerups for guns, speed, and health.