CSCI 441 - Computer Graphics

Fall 2020

|     Home   |   Assignments  |   Leaderboard  |   Schedule  |   Resources    |

Wytawik

Lab01

Lab 00a image of two triforce symbols
This is an image of the triforces from lab00a.

Lab 00b image of forest with sign and blue leaves
This is an image of the scene I built for lab00b.

A1


A1 Image of Wytawik name and logo

This is my name sign with my crest on the far right from assignment A1.


A2


A2 image of character in upper left, green shirt, triforce background, and arms down

This is an image of the A2 project character. In this program, the character is designed to move around the window when the user presses arrow keys or wasd keys. The character also has an idle animation of his arms moving up and down. The character's shirt also changes colors based on the mouse's relative postion. It turns red when the mouse is close and green when it is far.


A2 image of character in lower left, red shirt, on a new background, and with his arms up

This is also an image of the A2 project character. Here he is in a new position. The character can move with arrow keys, or he can teleport to the mouse with a shift + T input or shift + click. The character's shirt is also red in this photo since the mouse was closer to the character. There is a new background since the character moves outside the window and transitioned to a new background. Lastly, the character's arms are in a different position as before since the image was taken at a different point in the idle animation.


A3


A3 image of a character on a grid surrounded by colored buildings

Here is an image of my A3 assignment. In this assignment, we were tasked with constructing a 3D character, placing them within a world of objects, then programming both an arcball camera format for the user and movement systems to allow the user to move the character around the map.


A3 image of character from the front perspective with a red coned nose peeking out from its head

Here is another image of the character I constructed from a different angle. I can't demonstrate it in images, but the character has a movement animation when moving where its legs move front to back. This assignment was definitely a challenge as I had to figure out how to properly animate, move objects, and manage a arcball camera. There is even a key combination of left-clicking and holding the control key to enable the user to zoom in and out, increasing or decreasing their radius to the character.


Midterm Project


Midterm Project image of three character model

Here is an image of our midterm project. We have three character models that the user can switch between using the number keys. Each character has movement capabilities and animations. Each character also has an implemented arcball style camera that can be controlled around them. As shown in the below image, each character can toggle have a first person camera that displays in a smaller box in the upper right corner of the window.


Midterm Project image of the whole world with lighting as well as a first-person camera

Above is an overhead image of our entire world. Our world contains three different types of buildings randomly generated. In the upper right corner you can see the first person camera of one of the character objects. From this overhead view, you can see the three different types of lights we used: directional, spot light, and point lights. On the left, we have our directional light only illuminating objects in that left quadrant. In the center, the spot light shows how it is additive to the directional light in the quadrant. On the right, the point light is in a quadrant also showing its attenuation or the dimness of objects as they are further away from the point light.


A4


A4 image of character inbetween two different colored point lights

Above is an image of my character within a slightly modified A3 world. Here, two point lights have been added, each a different color and placed in different positions. The character is standing inbetween a red point light and a green one behind him. The colors are additive and have attenuation meaning the closer an object is to the point light, the more it will be lit up. The ground is also no longer a grid so that it may also be lit up.


A5


A5 image of character surrounded by a bezier curve system and cage with a sphere floating around the system

Above is an image of my character surrounded by a bezier curve system. This system includes a bezier cage, bezier control points, a bezier curve, and a mascot that moves along this curve. The program creates this system that follows my character wherever it goes. The mascot or sphere going around the curve also rotates/spins in its own animation. There are button implementations to toggle the display of the curve system in the event that the user just wants to see the mascot by itself. I did not get around to implementing a functioning textured skybox, but if I did, it would have a sky texture all around the world my character is in. This would give more depth to the world instead of being in a black void. The mascot is the orange sphere, the curve is in blue, the control points are red, and the control cage is yellow.


A6


A6 image of character within the world with flame particles on the side with a skybox of the sky in the background

Above is an image of my character within the normal world, but this time the character is next to a fountain of flame particles. These particles are spawned at a point, then fall due to gravity. The longer they exist the smaller the particles become. Once they touch the ground or shrink completely/die due to time, they are moved back to the spawn of the fountain and reset. This program reads in a file for the parameters of a particle system and creates it within the world. The particles have changing velocities. There is also a sky skybox on the outside of the world.


Final Project


Starting image of a character in a maze with static filter

Above is the starting image of our final project. The user in controlling a character model from an arcball camera. The character is within a maze that is loaded from an external file. There is a static post processed filter across the screen that gets less static the closer the character gets to the center of the maze. The goal of the game is to control two characters and get them both to the center of the game. There are walls in the way for both of them, so each character will have to trigger switches that will delete walls for the other character.


Blue screen with character hitting a switch from behind a wall

Above is an image of the character when they hit a certain color switch. When a switch is stepped on, the screen will flash the switch color to alert the player which switch they hit. Each switch is bound to a wall in the maze with the same color. This wall will be deleted when the corresponding switch is hit. Each switch is indicated with a different color floor tile.


Screen of two character separated by a red wall with the goal and a red switch in the background

Above is an image of both characters in the maze separated by a red wall. This red wall is an example of a wall that is controlled by a switch. There is a red switch in the background that one of the characters can trigger and allow the other character through. The black switch tile in the background is the goal that both characters need to get to. The player can switch between characters by hitting the 'z' and 'x' keys. Each character also emits a light from each of their positions to help light up the world as they move through the maze.


Overhead view of the maze

Above is an image of an overhead view of the maze. The player can switch to this overhead view by hitting the 'z' key. This can be used to help the player figure out which path to follow to complete the game. There is also a night sky skybox in the background of the world.


Both characters at the finish goal

This final image shows both characters standing on the goal platform. This provides a good image to show the particles coming off of each character and the goal. The particles from the goal only get triggered when both characters are standing on it. Each particle experiences random transformations that alter their dimensions so they seem more distorted. Different systems create different particle images, such as sparks, confetti, and coffee cups.