Zelda: Breath of the Wild


Interactive Computer Graphics is about the techniques and technologies used to generate synthetic digital imagery in real-time. The main focus of the course will be 3D photorealistic rendering and the current, practical rendering methods used in games and other applications.

The topics we will cover include:

  • Geoemetric modeling
  • Mathematics for animation and rendering
  • Shading and programmable shaders
  • Rasterization
  • Physics simulation
  • Global illumination

We will learn how to implement 3D web applications using WebGL and JavaScript. WebGL shares many of the same characteristics as Vulkan, Direct3D, and other popular low-level graphics APIs, so the skills you learn should be transferable.

Office Hours

Every Thursday at 11am on ZOOM


We recommend the following courses and skills:

  • CS 225 - prior general programming experience
  • Math 225 or Math 415 - basic linear algebra, especially 3D transforms


Lecture is held in 1310 DCL on Tu Th 11-12:15

Discussion Sections

We will not use discussion sections this semester…you only need to attend lecture.

Programming Assignments

There will a series of four programming assignments. See the Assignments page for more details.

In-Class Work (or Homework)

Starting in Week 2 of the semester, each (or almost each) lecture will include in-class exercises. These exercises will be available online using the PrairieLearn system. You should bring a phone or laptop or tablet to lecture. If you are unable to bring a device, let the course staff know and we will make other arrangements.

In total the in-class work will be worth 5% of your total course grade. Each of the N assignments will be P=5/N points. Grading for the exercises will be as follows:

  • Exercise completed correctly in-class will be worth P points plus P points of Extra Credit
  • Exercise completed correctly outside of class within 1 week will be worth P points.
  • Exercise completed correctly after 1 week but before the end of the semester will be worth P/2 points.

These exercises can be done in groups and you can submit answers an unlimited number of times.

Attending class and completing the work is a chance to earn 5% extra credit for the semester

4 Credit Option

If you are taking the course for 4 credits, you will complete an extra project implelementing real-time transformation of web content for accessibility. The projects will be done in groups and we will release details by Week 3.


This class will have three midterm exams and no final exam. The third midterm will be just before finals. Each exam is 50 minutes long.

  • Midterm 1: Feb. 17 - Feb. 19
  • Midterm 2: April 7 (online, details to be announced on piazza)
  • Midterm 3: May 5 (online, details to be announced on piazza)

All exams are closed-everything (no book, notes, calculator, etc.). See the CBTF policies for more detail.You are responsible for all material covered in lectures and assignments.For DRES accommodations see CBTF DRES Students


We will post grades on Compass 2g.

We weight grades as follows:

  3 credits 4 credits
MP 1 10% 10%
MP 2 15% 10%
MP 3 15% 10%
MP 4 10% 10%
In-class Work 5% 5%
Midterm Exam 1 15% 15%
Midterm Exam 2 15% 15%
Midterm Exam 3 15% 15%
4 Credit Project   10%

You can expect the cutoffs to be approximately as follows 98 - 100: A+
93 - 98: A 90 - 93: A- 87 - 90: B+ 83 - 87: B 80 - 83: B- 77 - 80: C+ 73 - 77: C 70 - 73: C- 60 - 70: D Below 60: F


There is no book for the class. Notes and other materials will be posted online. We do have some suggested books if you need help figuring things out:

Fundamentals of Computer Graphics 4th Edition by Steve Marschner, Peter Shirley

Fundamentals of Computer Graphics 4th Edition by Steve Marschner, Peter Shirley
Deals with the theoretical and mathematical aspects of computer graphics. Very readable.
UIUC Library E-book link

WebGL Programming Guide: Interactive 3D Graphics Programming with WebGL by Kouichi Matsuda and Rodger Lea

WebGL Programming Guide: Interactive 3D Graphics Programming with WebGL
by Kouichi Matsuda and Rodger Lea
A bit old now, but pretty easy to read with decent example code.
UIUC Library E-book link


We will use Piazza for answering questions and administering the course.

Click the header to join/view the forum. You do not need a passcode.

Course Staff

See the schedule for office hours.

  • Professor Eric Shaffer, Siebel 2209
  • TA: Jason Liu jdliu2@illinois.edu
  • TA: Yichen Yang yy18@illinois.edu