CSCI 441 - Computer Graphics

Fall 2020

|     Home   |   Assignments  |   Leaderboard  |   Schedule  |   Resources    |

VLAD (Assignment 1)



This is my character's name and the crest, which is just the Romanian flag!

I figured that since my family itself does not have a crest,
this falg is an easy way for me to distinguish myself.

Assignment 2



This is my hero! He looks suspiciously similar to the Pokemon Voltorb!



When you click on the screen, he turns into a shiny Voltorb!

Overall, this program:
  • Draws the Voltorb with an idle animation
  • Allows you to move him around with the WASD keys
  • Loops around the sides of the screen if you try to push him out of bounds
  • Teleports Voltorb to where you clicked on the screen
  • Turns Voltorb shiny and then back to regular colors when screen is clicked

Assignment 3





I have sent Voltorb into the third dimmension. His mind is blown.

Overall, this program:
  • Draws the Voltorb poorly in 3D
  • Allows you to move him around with the W & S keys (but on the ground, he can't fly :c )
  • Allows you to turn him around with the A & D keys
  • Will stop you from proceeding if you try to push him out of bounds
  • Allows you to click and drag to move the camera around him
  • If you hold CTRL and click+drag, you will zoom in and out of Voltorb


Midterm Project





Voltorb now has 3 other friends, 3 different camera types, 3 different lighting types, and a new environment!





As my good friend Borat would say, VERY NICE!

Assignment 4



In this assignment, we were tasked with implementing two different point lights with two different colors!



In this image you can see one point light it providing the scene with a red light.



And here you can see a different green point light. Both of these lights count for attenuation! Stuff that is farther from the light is darker, as you can see.



Finally, here are all of the lights I have in this assignment implemented together, showing the lighting is additive. This assignment was easier than others because a lot of it was already done when me and two others implemented this functionality for the midterm project.

Assignment 5


This assignment was pretty rough. It involved drawing Bezier curves in order to set a path for a mascot to follow your character and adding a skybox into the world. Here is what I have been able to implement.



I have drawn the Bezier curves and their cages, but I was not able to figure out how to draw a control point or anything else in the Gourad shaders. This prevented me from making very much other progress in the lab, so I suppose Voltorb is mascot-less for now.

Assignment 6


I straight up had no time to do this assignment, so I changed the snowflakes from lab 10 to match my current mood more accurately.


Final Project


For this program we had to do a lot of new stuff, like creating custom shaders and advanced animations. Here are some screenshots from what we did!







There are no game-breaking bugs or anything, but our custom shader is a bit interesting. Our first custom shader simulates snow accumulation. Whenever a snowflake hits the ground, a point on the ground quad is raised up, and experiences a slight displacement. There is another base below it to prevent it from seeing through the floor when it is raised. This is always enabled. The second custom shader is dependent on point light attenuation. The attenuation quadratic and linear values are dependent on the position of the point light. The position values are altered in our cpp and checked against our shaders to determine the color attinuation. If you would like to see it, press the V key, but be careful because it contains flashing lights that are maybe bad enough to be dangerous to people with Epilepsy. Also, the tree toper is a point light that changes colors.