In Fall 2023, CS 418 Interactive Computer Graphics
is being
offered in a way designed specifically to cater to our online MCS
program. As such, both in-person and online students will be expected to
consume course material in an asynchronous digital form. Office hours
will also be held online, are optional, and will be the only synchronous
component of the course.
The course consists of the following components:
Available on the course content site, these have roughly the same content as the videos, but often differ in level of detail. Some video content (such as coding demonstrations) have no corresponding notes.
Please make notes of questions as you read them and post those questions on CampusWire. I may answer them there or write up longer explanations and post them as supplementary content.
Lecture material is split into modules, each with a quiz. These quizzes are intended primarily as a self-assessment of learning and may be retaken as often as desired.
I understand that some students find quizzes annoying, but experience has shown me they they do help students find and fix gaps in understanding.
These quizzes are administereed on Coursera. You can activate your Illinois Coursera account as described in https://online.illinois.edu/online-courses/moocs/private and then visit https://www.coursera.org/learn/cs418-interactive-computer-graphics/home to access quizzes.
There are five primary MPs, plus a sixth one required for 4-credit students but not required for 3-credit students. There are also two low-weight warm-ups intended primarily to smooth the way for subsequent MPs.
Machine problems are submitted on a custom course submission site
that provides some limited automated feedback (mostly of the form did
it run on our server
); they are graded primarily by hand.
I expect each MP to take the average student between 10 and 20 hours to complete.
The 4cr MP typically takes a bit longer than the others, so 4cr students may wish to begin it early by viewing the raytracing videos and notes earlier than the 3cr schedule recommends.
Computer graphics studies how computers can create images. Interactive computer graphics creates images quickly enough that a new image can be created in response to every user action. In principle any image-creation algorithm could be interactive, given adequate hardware, but in practice it usually refers to a specific family of workflows involving the interaction of the CPU and GPU. That family of workflows will be our primary topic in this class.
This course teaches the following in enough detail to implement them yourself:
This course teaches various other topics at a lower level of detail, including:
This course does not teach
My goal in this class is that you learn. As it is an elective, I hope most of you are taking it for the same reason. But I do have a duty to assign grades, so here’s how we’ll do it.
Weight | Assessment |
---|---|
70% | MPs |
30% | Quizzes |
Numbers are converted to letters linearly with the A−/B+ cut-off at 90% and the C−/D+ cutoff at 70%; more precisely
const letter_grade = (percentage_earned) => {
if (percentage_earned <= 60) return 'F'
let letter = 'DCBA'[Math.floor(percentage_earned/10 - 6)]
if (letter != 'A' && percentage_earned % 10 > 20/3) letter += '+'
if (percentage_earned % 10 < 10/3) letter += '-'
return letter
}
MP points come in two groups: core and elective. Core MP components are mostly things that every graphics students should know, with some additions that are prerequisite for many other tasks. Elective MP components go beyond the minimum, and you’ll get to pick and chose which ones you do. The number of MP points of each type you will need, together with a list of MPs, can be found on the MPs overview page
I already know the answers to all the quiz questions and have already implemented all the MPs. It’s the learning you gain by doing MPs and by realizing what wasn’t as clear as you thought by doing quizzes that matter to me. As such, not doing your own work is the primary way of cheating.
Module quizzes are open-book and retakable, but do not use live or interactive help on the module quizzes and do not share answers with anyone.
The MPs require you to write all of your own code, with some
exceptions called out explicitly in the MP descriptions. Write your
own code
also means design and understand it: simply writing what
someone else tells you to write does not contribute to you learning and
is cheating. Within this constraint you may use any source to assist
you, but cite all such sources in comments in your code
to avoid plagiarism. As an exception, you do not need to cite course
content provided as part of this course this semester, nor do you need
to cite interactions with this semester’s official CS 418 course
staff.
Listed prereqs in the course catalog are
Needed for
Needed for
We will discuss using large sparse matrices to represent systems of equations and variants of conjugate gradient to solve them. That is rarely usable at interactive speeds, so we won’t talk about then in much detail in this class.
Needed for
There is some calculus in graphics, but mostly as theoretic background for algorithms that do not themselves use the calculus. We’ll not need any integral-solving or related by-hand calculus computations in this course.
Name | Luther Tychonievich |
Office | 2340 Siebel |
Phone | +1 217 333 8609 |
luthert@... Include 418or graphicsin the subject line |
Schedule | |
Location | Zoom meeting 854 0421 4284 passcode 418 |
Readings are hosted for free on https://cs418.cs.illinois.edu. There is no other textbook required.