CSE 3541:
Computer Game and Animation Techniques

Instructor: Huamin Wang
Spring 2015
Office hour: MWF 2:50 to 3:30PM (DL 0583)
Section 1: MWF 11:30 to 12:25PM (Caldwell 0137)
Section 2: MWF 01:50 to 02:45PM (Caldwell 0177)

Grader:
Section 1: Xiaoyin Ge (xiaoyingeosu at gmail.com)
Office hour: 3:30PM to 4:30PM Tuesday and Thursday, DL474
Section 2: Kevin Smearsoll (3541Smearsoll at gmail.com)

Course Description


Syllabus in PDF
Fundamental algorithms and mathematics in production of computer animation and video games, emphasizing control and rendering of animated characters. Prereq: 3901 or 3902 or 3903 (560). Not open to students with credit for 5541 (683).



Textbook

Reference books

Computer Animation
(online version on Safari)
Interactive Computer Graphics: A Top-Down Approach Using OpenGL Mathematics for 3D Game Programming and Computer Graphics
(online version on Safari)
Essential Mathematics for Games and Interactive Applications
(online version on Safari)

Policies

Six labs (9%+9%+9%+9%+9%+15%) + Midterm exam (25%) + Three written assignments (5%+5%+5%)

Each lab assignment will be announced approximately two weeks before the deadline, and the assignment is due at 11:59PM on each specified due date. Late submissions will be subject to 10% penalty after each day. No submission will be accepted after five days.


Lab assignments, resources, and examples

Set up the Unity Engine on your machine first.

Online Manual
Scripting Reference
Official tutorial and documenation
Unity UI video tutorial

Catlikecoding - tutorials (C#)
Unity3Dstudent - video tutorials (javascript)
UnityMagic - video tutorials (unity tools)
Other tutorials
Unity 3.x Game Development Essentials (safari ebook)
Game Development Essentials with Unity 4 LiveLessons (Video Training)

General Unity Help
C# examples
More C# Unity resource
The difference between Javascript and C# in Unity
Java to C# reference: MSDN, 25hoursaday, ondotnet
C++ to C# reference: MSDN, stackoverflow tips
Javascript reference: w3schools javascript tutorial,

Lab 1: The solar system
Due: Feb 04, 2015
Lab 2: Rigid body dynamics
Due: Feb 16, 2015
Example Package
Lab 3: Cloth Animation
Due: March 02, 2015
Example Package
Lab 4: Shallow Wave
Due: Mar 13, 2015
Example Package
Lab 5: Motion Graph
Due: April 03, 2015
Example Package
Lab 6: Final Project
Due: May 01, 2015



Tentative Schedule

Topic titles are linked to lecture slides.
Date Topic Reading Handout
01/12/2015
Course overview
 
 
01/14/2015
Introduction to Game and Animation
 
 
01/16/2015
Introduction to Computer Animation
 
 
01/21/2015
Math for CG (The slides are incomplete)
 
 
01/23/2015
Math for CG (The slides are incomplete)
 
Lab 1 Assignment
01/26/2015
Transformation
 
 
01/28/2015
Transformation
Textbook 2.1
 
01/30/2015
Transformation
 
 
02/02/2015
Hierarchical Modeling
 
Robot Unity demo
02/04/2015
Rigid Body Dynamics , Pixar's Tutorial
Textbook 7.4
Lab 2 Assignment
02/06/2015
Rigid Body Dynamics , Pixar's Tutorial
Textbook 7.4
 
02/09/2015
Rigid Body Dynamics , Pixar's Tutorial
Textbook 7.4
 
02/11/2015
Linear Interpolation and Curves
 
 
02/13/2015
Rotational Interpolation
Textbook 2.2.4
Written homework 1
02/16/2015
Particle Systems Example 1
Textbook 7.3
 
02/18/2015
Particle Collision and Friction Example 2
 
 
02/20/2015
Strain Limiting
 
 
02/23/2015
The Mass Spring System
 
 
02/25/2015
Fluid Animation: SPH
 
 
02/27/2015
Basic Rendering
 
 
03/02/2015
Numerical Integration
 
Written homework 2
03/04/2015
Shallow Waves
 
 
03/06/2015
Fluids
 
 
03/09/2015
Collision Handling
 
 
03/11/2015
Deformation
 
 
03/13/2015
Pathfinding
 
 
03/16/2015
Spring Break
 
 
03/18/2015
Spring Break
 
 
03/20/2015
Spring Break
 
 
03/23/2015
Character Animation
 
Written homework 3
03/25/2015
Human Figure Modeling and Animation
 
 
03/27/2015
Crowd and Traffic Simulation
 
 
03/30/2015
Behavior Animation
 
 
04/01/2015
Videos
 
 
04/03/2015
Review
 
 
04/06/2015
Exam!
 
 



Final Projects

Proposal Team Final Report
Billiards
Spencer Eardley and Yujun Huo
 
BMX Bike
Paul Breuler
 
Boat Racing
Stephen George and Nathan Litwinowicz
 
Boom Dots
Tyler Schultz and Danny White
 
Breakout (3D)
Brandon Stone
 
Car Racing
Xiaowen Sun
 
Car Racing
Ziyu Li, Yunan He, and Yuzhen Liu
 
Car Racing
Joseph Hunt and Johns Gresham
 
Car Racing
Drew Rochowiak
 
Car Racing
Chris_Carlson, Isaac Post, and Myles Nicholson
 
Car Racing (Breaking Bad)
Max Buck
 
Car Racing (Monza)
Ryan Thomas
 
Carnival
Austen Madden, Blaine Morbitzer, and Devin Patel
 
Deformable bodies
Caitlin Van Gundy and Ryan Hipps
 
Disney Crowds
Spencer Rudolph and Michael McGaha
 
Flappy Bird (3D)
Thanh Trinh
 
Flatboard and maze
Christan Winterhalter
 
Foot Racing
Nicholas Markopoulos
 
Galaga
Frank Patrizio
 
Gravity
Taumer Anabtawi and James Lowrey
 
Maze
Ian Kropp
 
Maze
RichardKochert and Clement Lu
 
Maze
BrandonWalz
 
Maze
Aaron Ebbinghaus
 
Maze
Gregory Rogers
 
Maze Horror
Thomas Hofferberth
 
Minecraft
Branden Ten Brink
 
Minecraft
Zach Studer and Torri Miller
 
Pinball 3D
Katherine Finley
 
Plants vs. Zombies
Jonathan Ruben and Manlan Li
 
RPG
Logan Wilson
 
RPG
Timothy Schiefer and Zijiang Yang
 
Save the Bunny!
Anh-Minh Nguyen
 
Shooting (First-Person)
Hiroki Witt
 
Shooting (Third-Person)
Austin Grosel
 
Shooting (Third-Person)
Congrong Guan and Qing Liu
 
Shooting (Third Person)
Trong Le
 
Shoot em up
Cameron_Schmidt and Nate Wakefield
 
Sky Fighter
Christopher Menart
 
Smoothed Particle Hydrodynamics
Lewis Sandoval
 
Spider
Kevin Kesicki
 
Super Meat Boy 3D
Nicholas Ramage
 
Teleportal
Matt Kujawinski
 
Temple Run (3D)
Alexander Bollas
 
Temple Run (3D)
Brandon Dahl and Leah Duello
 
ZigZag
David Bielewicz and Brindan Jackson
 


Useful tools

You may find free 3D models, textures and motion capture data at: http://www.turbosquid.com.


Statement on Academic Misdemeanor and Disability Services

You are allowed to discuss your lab assignments with other students. However, the assignment must be completed by yourself and you are NOT allowed to use other's work in your submission. It is NOT allowed to discuss any exam with others either. Refer to the University's Code of Student Conduct for details.

Please contact the instructor if you want to request disability accommodations.