Early Info - A Pre-Announcement for Spring 2026

CS559 will be offered in the Spring of 2026. Here is some basic information so that students can decide if this class is for them.

Online Modality

In the Spring of 2026, CS559 Computer Graphics will be taught in an online modality with a scheduled time slot (8:50-9:40 MWF).

All class meetings and required activities will be online. Lectures will be provided as video recordings or video conference (Zoom). All exams and quizzes will be delivered using online methods (e.g., on Canvas or other platforms). Assignments will be delivered over the web and handed in online (e.g., using GitLab or GitHub).

There will be required, synchronous participation. Student must be available (and have web access) during the class time periods and final exam period. We will hold quizzes online during the class time slot. We will hold the final exam online during the scheduled exam time slot. We may hold other required (online) class activities during the class time slot. These activities cannot be rescheduled: if students are unable to participate during the required activities, they will not receive credit for the activities.

There will be no required in person activities. There may be optional in person activities, such as help sessions or collaborative workshops.

While the exact schedule is still being created, we expect there to be a required online class activity (e.g., quiz or coding sprint) every Wednesday over the course of the semester. Other class days (Mondays and Fridays), there will be either optional activities, or activities that students can complete at other times (e.g., a help session that might be recorded).

We expect the class to operate in a “flipped classroom” model (details still being developed):

  • The primary activity in class is a series of Workbooks that combine reading, exercises, and programming assignments (including mini-projects).
  • The Workbooks will be accompanied by pre-recorded video lectures to help students learn the content.
  • There will be regular online quizzes (roughly every other Wednesday) that must be taken during the class time slot. students must take quizzes during the scheduled time slot
  • There will be some required online “interactive sessions” where students are asked to work in groups to complete assignments within the class periods.
  • There will be online help sessions, discussions, and other activities that will either be optional, or will be recorded so that students can watch them afterwards.

Students must be available for required activities during class time (8:50-9:40 MWF, Madison time).

This class will be similar to previous versions of the class (for example, CS559 was taught in an online modality in the Spring of 2023: https://pages.graphics.cs.wisc.edu/559-sp23/). However, previous online versions of the class were taught in a synchronous (unflipped) model: there were live (online) lectures, and no other online activities.

About CS559 Computer Graphics

CS559 is a introductory course in computer graphics.

Computer Graphics is how we use computers to make pictures. This class is about how to program computers to draw. It is not about what pictures you should draw (that’s art). The class is about how you program picture making, not how you use tools to make pictures. This class is how to write graphics programs not about how to use them. Although, you will have the opportunity to make pictures and animations (with the programs you write).

If you are wondering how computers draw the imagery you see in video games, or create the maps you see on your phone, or move visual elements around in a user interface, or how computers get involved in just about anything you see, Computer Graphics is your topic.

The class is intentionally API agnostic: we’ll learn about many different ways that computer graphics are programmed.

To practice the graphics ideas, we will implement them with web programming. So, along the way, you will learn the basics of web programming and JavaScript (if you don’t know it already).

The official description:

Survey of computer graphics. Image representation, formation, presentation, composition and manipulation. Modeling, transformation, and display of geometric objects in two and three dimensions. Representation of curves and surfaces. Rendering, animation, multi-media and visualization. Fluency with vector mathematics (e.g., from MATH 234 or a linear algebra class) is recommended.

The official Requisites: MATH 222 and (COMP SCI 367 or 400) or graduate/professional standing or declared in the Capstone Certificate in Computer Sciences for Professionals.

The hidden pre-requisites:

  1. The class does use web programming (Javascript, basic HTML). We try to teach you what you need to know, but having some experience with these technologies is useful.
  2. The description says that we recommend “fluency with vector mathematics.” We make use of very basic vector/matrix math (know what a vector is, how to multiply a matrix, etc). Most students have seen this (even in high school pre-calculus), and we provide a brief review. However, we recommend students take 559 after they have completed their linear algebra requirement for the CS major (this will become a pre-req in the future).
  3. The course requires writing non-trivial programs. Students should be able to read, write and debug programs.

For a sense of what is covered in class, we recommend looking at the web page of previous offererings. One of the best ways to get a sense of the class is to look at the Galleries of student assignments to see the kinds of things students make in class: https://pages.graphics.cs.wisc.edu/559-sp23/gallery/

The Official Learning Outcomes:

  1. Develop interactive graphical applications in 2D and 3D using different types of APIs
  2. Analyze and apply coordinate systems and transformations in 2D and 3D to model objects hierarchically and prepare them for viewing
  3. Explain and apply shape modeling techniques, including parametric curves and meshes, in 2D and 3D
  4. Select and apply appearance modeling techniques including texturing and lighting
  5. Explain the structure and operation of the graphics pipeline and hardware, and use this understanding to implement and optimize efficient graphical applications
  6. Identify the issues in discrete representations and select approaches to mitigate them
  7. Discuss how imagery is perceived and the impact of perception on computer generated imagery