CSCI 441 - Computer Graphics

Fall 2016

|     Home   |   Syllabus  |   Assignments  |   Leaderboard  |   Schedule  |   Resources    |

Mr. Wiggles

Assignment 1

This is my Hero's banner, sporting his crest of the sword with a coiled snake. In this assignment, we were tasked with drawing the banner for our hero, requiring us to use solid OpenGL primitives such as GL_TRIANGLES, GL_QUADS, GL_TRIANGLE_STRIP, and more. In addition, transforms for translation, rotation, and scaling were utilized to write the letters, along with differing colors.

Lab 0

This is my Hero's Home world, Slither Isle! In this lab we were required to complete two objectives: a basic example of drawing in OpenGL, and a drawing our our hero's home world, using solid primitives and whatever creativity we brought as well.

Assignment 2

This is Mr. Wiggles, my hero! In this assignment, we were tasked with drawing our heros in OpenGL, and then add in animation and user interaction to have our hero's be idly moving around, and be able to move from homeworld to homeworld on the world map.

Side Quest 1

As a side assignment, I made a 2D game- play against your friend in a wild west duel! Players have to keep up with quick time events until a minute has passed, then they DRAW! and see who can keep up longer without getting shot.

Assignment 3

This is my hero's boat, rendered in full 3D! it can drive around in a 3D environment, and even has different camera positions, with the small screen in the top right being a 3rd person view, while the main camera is an arcball-camera. There are also first-person, top-down, and reverse views to choose from in this program.

Assignment 4

This is my hero's boat, now accompanied by his trusty familiar. In this assignment, we took in a list of control points, with which we constructed a set of Bezier curves for the familiar to follow constantly while also animating itself. A right click menu can quit the program, or also turn the control cage and bezier curve off if you don't want to see them.

Assignment 5

This is my hero, moving around in an environment with a textured skybox, along with some textured bushes in the vicinity. Alongside this, an object of your choice (the multi-colored statue in this picture) will be passed through custom vertex and fragment shaders that I have written, coloring each vertex based on its position, and making the whole statue grow and shrink in a sinusoidal pattern.

Assignment 6

This is a virtual fountain, implemented with a particle system to spawn, age, and kill off particles dynamically based on physical rules, such as gravity or wind. Each particle also has a custom vertex shader to shrink it as it ages, starting large and getting really small at the end of its life.

Assignment 7

This is a simple 3-D game, implementing collision detection, particle flocking, and even some gravity! Keep away from the brick balls, and try to collect all the coins!

Final Project

My final project was a solar system simulation (with a couple of simplifications, the planets are much closer than in real life) - that incorporates a range of different shaders, different lighting, and some particle effects , such as drawing planet trails and setting planets aflame. A smooth camera transition between planets allow you to explore from different perspectives, and see the orbital motion in action.