Review: Computer Graphics (CMU 15-462/662)

(Pictures from CMU 15-462 course site)

The Entertainment Technology Center (ETC) of CMU has a very unique curriculum policy, where the first semester is filled with 4 compulsory courses and the rest of 3 is filled with a project and an elective course respectively. Hence, when it came to the first “free elective semester”, I spent a lot of time deciding which course should I take. I decided to go for Computer Graphics at last, mainly because of the following reasons:

  1. CG has been one of the basic branches of video game since the first game was created, and is becoming more and more important for the whole entertainment industry. It brings a huge revolution of the visual experience and still has a great potential for delving;
  2. CG is closely linked to Virtual Reality and Augmented Reality, which are popularly viewed as the future of games;
  3. Many alumni of ETC highly recommended this course, saying that it explains the profound simply and is useful in their career;

So I took it. It gave me an extremely impressive semester – not only because of its intensity, but also what it left to me. I didn’t stay awake the whole night before the due day as many alumni did, but I did “suffer” a lot. There was even a time when I was super frustrated and wanted to drop off. Thankfully, I didn’t do so. Instead, I found myself learned a lot from the struggling. Hence, I would like to write a brief review of the course (mostly depends on my level) as a reference for any ETC students who will consider to take this course in the future.

Continue reading

Setting up OpenGL

The last assignment of CMU CG course is  a self-selected project (detail).

What I chose is Option F, SPH Fluid Simulation, cooperated with Sarvesh Subramanian. I implemented the SPH model, while he took charge of the Marching Cube algorithm and OpenGL part.

This post includes a tutorial of how to setup OpenGL project on Windows by Visual Studio 2015.

Continue reading

Final Project: SPH Fluid Simulation Reference


Particle-Based Fluid Simulation for Interactive Applications by Matthias Müller, David Charypar and Markus Gross

Fluid Simulation For Computer Graphics: A Tutorial in Grid Based and Particle Based Methods, Colin Braley and Adrian Sandu

Physically-Based Fluid Modeling using Smoothed Particle Hydrodynamics, Trina M. Roy

SPH survival kit

Particle-Based Fluids COMS6998 – Problem Solving for Physical Simulation

(Chinese) SPH算法简介

Continue reading

Starting up CMU 15-662: Computer Graphic

After struggling of trying to compile the original codes on Windows, I decided to transfer to Ubuntu. Since I had no experience on CG programming (I took the CG course in my undergraduate but it required no coding workload), I found a tutorial online to follow. After following the step of “Building on Linux”, when I start running “cmake ..”, the terminal threw out several errors:
Continue reading

Talking about time.deltaTime

For a long time, I didn’t quite understand what is Time.deltaTime, and why we have to use it when we want to move an object smoothly. I had used it for many times, but never understood its meaning.

Today, after I had a big trouble when writing a script of the player’s operation, I decided to find out what it is. I wrote a coroutine function to detect the input of the players. However, sometime the input may be missed in the function, while being able to be detected in the Update() function. To loop the coroutine function I used the line, which seemed like the core of the problem:
Continue reading

Shadow Project Report

This semester, we are required to choose a current project from the second-year students to follow. After browsing all websites of current projects, I decided to choose the project Emotionshop as my shadow project. I made my decision for several reasons: first, the team comes out with individual prototypes every week (there are 5 students in their teams, which means 5 prototypes every week). Second, they study the relationship between emotions and game mechanics while I am super interested in game development as well as user experience. Therefore, I follow this project in the hope of gaining useful inspiration for future game development.
Continue reading

400 Years


400 Years is a cross-boundary game published by Armor Game. Players play as a Colossus. Roused up for some reasons, the Colossus gets into his journey to stop a calamity. In the game, players can press SPACE to let the time fly. However, for some reason, there are only 400 years left for him.
Continue reading