CSE 40166 / 60166 - Computer Graphics

|    Home  |   Syllabus  |   Assignments  |   Schedule  |   Resources   |

John Quinn

Homework Assignment 1:

For the first homework assignment, I had to create and display my initials and the letters CSE. Below is a screenshot of the results.

I had some fun doing this assignment, and it was a good learning experience.

Homework Assignment 2:

For this homework assignment, I had to create a creature that interacted with the keyboard and mouse. I chose to make a robot.
The robot's arms are in constant animation, swinging back and forth. The keyboard can be used to move the robot left and right on the ground. When moving, the robot's legs move up and down. The eyes of the robot follow the mouse as the user moves it around the screen. By clicking the mouse, the user can fire a projectile toward the mouse's current location.

Homework Assignment 3:

For this assignment, I had to create a vehicle in 3D, allow the user to control that vehicle using the keyboard, and implement an arcball camera that followed the vehicle. The user can use the mouse to change the position of the camera, which is calculated in spherical coordinates.

The scenery consists of grey dodecahedrons. All objects were composed of GLUT objects and GLU quadrics.


Homework Assignment 4:

For the fourth assignment, I had to create a bezier curve based on a series of input control points. The curve was drawn in blue and a red sphere was animated to follow the curve.

Midterm Project

For the midterm project, a partner and I had to create a rollercoaster. The track was read in from and based on bezier curves. Two materials and two lights were implemented. The coaster was animated around the track, changing its heading as needed. OpenAL was used for sounds.



Homework Assignment5:

For the fifth assignment, I had to create a particle system, governed by the laws of physics. The first system I created was a fountain, shown below.

The second system I created was a rain cloud. This cloud could be moved by the user around the screen.

Homework Assignment6:

For the sixth homework assignment, I had to create a simple three dimension game that uses collision detection. The object of this game was go to visit every square of the board while avoiding enemies.
When you visit a square, it turns green. When you get hit by an enemy, you lose health. If you run out of health or fall off the map, you lose the game. Brick walls were added for scenery.

Homework Assignment7:

For the seventh homework assignment, I had to use some GLSL shaders. A fragment shader was used to give a lion object a cel shaded appearence.
In addition, a vertex shader was used to animate the lion between two poses that were read in from .obj files.

Final Project:

For the final project, a partner and I made a game called "Grand Theft Hotwheels." In it, the user controls a car that is on the run from the cops. They can collect powerups along the way and have to collect money crates to advance. If the user runs out of health, or falls off the map, they lose the game. Lights, shaders, materials, and textures were used to give the scene an interesting look.