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 rendering methods used in games and other interactive applications.

The topics we will cover include:

  • Geometric modeling
  • Mathematics for animation and rendering
  • Shading and programmable shaders
  • Rasterization
  • Physics simulation
  • Basic animation

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.



We will use Campuswire for answering questions. Use the code 7365 to join as a student.

  • For any question involving a grade you should select Post to instructors and TAs.
  • We will attempt to help debug upon request but ultimately debugging is your responsibility.
  • When you ask for help debugging, provide a clear statement of the bug behavior and how you attempted to debug so far.
  • You are allowed to post code snippets when asking for help debugging.

Office Hours

Eric 10am Thursdays Zoom Link

Instructional Content

The course will be taught using live and online lectures along with additional reading materials.

  • Lectures videos and notes will be available here.
  • Additional reading may be assigned from resources listed here.


You can attend live lecture/discussion at:
11am Central Time on Wednesdays in Room 103 Transportation Building 104 S. Mathews Ave.

  • We will focus on actively working through problems and doing code walkthroughs…
  • These lectures will be recorded and available on the course schedule.
  • Additional lectures will be available as asynchronous video links posted on the course schedule.

The current plan is not to have a live lecture on Fridays, but instead use it for synchronous exams and asynchronous quizzes.


Assigned work will include 10 Quizzes, 5 programming assignments and 3 exams.
There will be an additional project for students taking the course for 4 credits.


There will be short weekly quizzes on PrairieLearn.

  • Each quiz can be taken repeatedly..you can retake it till you get all the questions correct
  • They will be assigned on a Wednesday and due at 11:59PM on Wednesday of the following week.
  • After the due date, quizzes can still be completed late for 50% credit at any time before May 4.
  • These quizzes will be based on the lecture material and will serve as practice for the exams.

Programming Assignments

There will a series of five programming assignments.
Please read the Assignments page for details of how code development will be done.

4 Credit Project

If you are taking the course for 4 credits, you will complete an extra project implelementing a ray-tracer.


This class will have exams and no final exam. Each exam is on PrairieLearn.

  • Exam 1: 11am-12pm, Feb. 18, 2022
  • Exam 2: 11am-12pm, March 30, 2022
  • Exam 3: 11am-12pm, May 4, 2022

The exams will be online using Prairielearn. They will be synchronous and will last for 1 hour from 11am-12pm Central Time on the day of the exam They are open web - you can use any reference material you wish while taking the exam. You should not collaborate with other people. Any instances of collaboration will be considered a violation of academic integrity and will result in a 0 on the exam and a letter grade reduction in the final course grade. Also, the nature of the exam will make collaboration unhelpful - you will get a better grade working on your own rather than wasting time trying to work together.

Extra Credit

There will be one extra quiz, available April 27 through May 4, that you can use to raise your lowest exam score by up to 30%. Same rules as other quizzes…you get to take it repeatedly over the last week of class until you are happy with the score. It will be the same approximate length and level of difficulty as the other quizzes.


We will post grades on Canvas.

We weight grades as follows:

  3 credits 4 credits
MP 1 10% 10%
MP 2 10% 5%
MP 3 5% 5%
MP 4 10% 5%
MP 5 5% 5%
Quizzes 15% 15%
Exam Grade 45% 45%
4 Credit Project   10%

The course grade cutoffs can be expected to be:

Percentage lower bound Grade
99% A+
93% A
90% A-
87% B+
83% B
80% B-
77% C+
73% C
70% C-
67% D+
63% D
60% D-
0% F

Course Staff

See the schedule for office hours.

  • Professor Eric Shaffer, shaffer1@illinois.edu
  • TA: Linda Chang, lindac2@illinois.edu

Mental Health

Diminished mental health, including significant stress, mood changes, excessive worry, substance/alcohol abuse, or problems with eating and/or sleeping can interfere with optimal academic performance, social development, and emotional wellbeing. The University of Illinois offers a variety of confidential services including individual and group counseling, crisis intervention, psychiatric services, and specialized screenings at no additional cost. If you or someone you know experiences any of the above mental health concerns, it is strongly encouraged to contact or visit any of the University’s resources provided below. Getting help is a smart and courageous thing to do – for yourself and for those who care about you.

Counseling Center: 217-333-3704, 610 East John Street Champaign, IL 61820 McKinley Health Center:217-333-2700, 1109 South Lincoln Avenue, Urbana, Illinois 61801

Statement on anti-racism and inclusivity

The intent of this section is to raise student and instructor awareness of the ongoing threat of bias and racism and of the need to take personal responsibility in creating an inclusive learning environment.

The Grainger College of Engineering is committed to the creation of an anti-racist, inclusive community that welcomes diversity along a number of dimensions, including, but not limited to, race, ethnicity and national origins, gender and gender identity, sexuality, disability status, class, age, or religious beliefs. The College recognizes that we are learning together in the midst of the Black Lives Matter movement, that Black, Hispanic, and Indigenous voices and contributions have largely either been excluded from, or not recognized in, science and engineering, and that both overt racism and micro-aggressions threaten the well-being of our students and our university community.

The effectiveness of this course is dependent upon each of us to create a safe and encouraging learning environment that allows for the open exchange of ideas while also ensuring equitable opportunities and respect for all of us. Everyone is expected to help establish and maintain an environment where students, staff, and faculty can contribute without fear of personal ridicule, or intolerant or offensive language. If you witness or experience racism, discrimination, micro-aggressions, or other offensive behavior, you are encouraged to bring this to the attention of the course director if you feel comfortable. You can also report these behaviors to the Bias Assessment and Response Team (BART) (https://bart.illinois.edu/). Based on your report, BART members will follow up and reach out to students to make sure they have the support they need to be healthy and safe. If the reported behavior also violates university policy, staff in the Office for Student Conflict Resolution may respond as well and will take appropriate action.

Statement on CS CARES and CS Values and Code of Conduct (Approved by CS CARES Committee, January 13, 2022)

All members of the Illinois Computer Science department - faculty, staff, and students - are expected to adhere to the CS Values and Code of Conduct. The CS CARES Committee is available to serve as a resource to help people who are concerned about or experience a potential violation of the Code. If you experience such issues, please contact the CS CARES Committee. The Instructors of this course are also available for issues related to this class.