A game developer's website

Computer Graphics Assignments

In 2016 I took the Aalto University Computer Graphics course, and obtained the best score of the whole  class for the assignments.

One course, one of the reason for my dedication is the GPU reward hahaha~ But I truly found graphic programming is interesting just as making games(and it is about making games!).

Here are some description and screenshots of what I’ve done in those assignments.

Assignment 1:

Assignment 1 is about some basic knowledge of computer graphics such as transforms, camera and basic shaders. I did most of the extra credits for camera/object transforms and simple vertex shader.

assignment1

Assignment 2:

This assignment is about Curves, Subdivision of models, and surface.

Curves:

I added mouse editor/save and load for the curves for extra credits:

assignment2 Curves.gif

 

Subdivision:

assignment2Subdivision.gif

Generalized Cylinder and Revolution of curve

assignment2cylinderand-rev

Assignment 3:

This assignment is about Hierarchical, Skeleton and Skinning.

The skinning uses SSD on GPU shader and Dual Quaternion  on CPU. I also added IK and mouse control for the movement of the character. Finally I integrated Kinect with our hierarchical model.assignment3.gif

Assignment 4:

This assignment is about physics simulation using different solvers.

I added cloth tear down simulation,some more advanced solvers and others for extra credits.

assignment4.gif

Assignment 5:

Assignment 5 is abouot Raytracing.

I added simple refraction, fog,blobby modeling, CSG, Fresnel term, transparency, soft shadow and perlin noise for extra credits.

Assignment 6:

This assignment is about real time shading using shaders.

Besides the regular Blinn-Phong shading, I also added point light, subsurface scattering, shadow maps, tangent space normal mapping and GGX micro surface model and so on for extra credits.

assignment 6_1.gif

Hopefully in the advanced computer graphics course I will be able to complete the assignments even better.

Leave a comment

Your email address will not be published. Required fields are marked *