Topics in Computer Graphics
CMPS 3120/6120 Fall 2015
A comprehensive introduction to the mathematics and algorithms that drive today's digital special effects, animation, and games. Designed as a hands-on course, students will gain experience in building 2D/3D interactive applications using OpenGL. Topics covered will include geometric transformations, projections, raster algorithms, 3D object models (surface and volume), visible surface algorithms, texture mapping, lighting/shading, ray-tracing, anti-aliasing, and compositing.
PrerequisitesSince this is a new course, timing and topics may be adjusted.
Date | Topic | Reading |
---|---|---|
Aug. 25 | Introduction to Graphics | Chapter 1 |
Aug. 27 | Color and Frame Buffer | |
Sept. 1 | Primitives, Windows, and OpenGL | Chapter 2 & 3 |
Sept. 3 | OpenGL Programming | |
Sept. 8 | Vectors, Matrices, and Transformations | Chapter 4 |
Sept. 10 | Geometry and Transformations cont. | |
Sept. 15 | Polygon Intersections and Clipping | Chapter 5 |
Sept. 17 | Views, Projections, and Cameras | |
Sept. 22 | Models | |
Sept. 24 | NO CLASS | |
Sept. 29 | Models cont. and Simple Texturing | git clone https://bsumma@bitbucket.org/bsumma/texturing_example.git |
Oct. 1 | Spatial Data Structures and Hidden Surface Removal | |
Oct. 6 | Shading | Chapter 6 |
Oct. 8 | Shading Cont. | |
Oct. 13 | ||
Oct. 15 | FALL BREAK | |
Oct. 20 | Chapter 9 | |
Oct. 22 | ||
Oct. 27 | NO CLASS | |
Oct. 29 | NO CLASS | |
Nov. 3 | Chapter 8 | |
Nov. 5 | ||
Nov. 10 | Chapter 11 | |
Nov. 12 | ||
Nov. 17 | ||
Nov. 19 | ||
Nov. 24 | ||
Nov. 26 | THANKSGIVING | |
Dec. 1 | ||
Dec. 3 |
![]() ![]() |
Project 1: 2D Game - Due Oct. 20
For this project, you'll use all of the topics covered so far in the course: drawing, primitives, transforms, texturing etc. to
build a simple 2D game. I'll give you a skeleton and guidance making a simple asteroids clone. The project will be open-ended:
you can improve upon the asteroids template or build something completely new. Asteroids: git clone https://bsumma@bitbucket.org/bsumma/asteroids.git
Things you need to show:
|
![]() ![]() | Project 2: Simple Ray Tracer - Due Dec. 15 For our final project, you'll construct a simple ray-tracer, the basic image creation technique for feature animation and special effects. You'll also be required to first build an interactive, 3D OpenGl application to preview your rendered scene. This will leverage all topics covered in the course including: 3D transformations, texture mapping, lighting, shading, reflection, refraction, and global illumination. |