Course Overview

What this class is about

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.

You can see the Learning Goals page for a discussion of what we want you to learn in this class, and a summary of the key topics. You can also see what we’re going to cover in class from the Calendar.

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). See the Javascript in CS559 page which explains why we use JavaScript, as well as how to learn it.

How the class will work

Each week will follow the same pattern: see Calendar.

This class will use a variety of different mechanism for communication. The are detailed on the Communications Policy page.

If you have questions, you can post on Piazza, come to Consulting Hours, or contact the Course Staff. See Getting Help.

Basic Info

Lectures: Will be given in person and recorded on Zoom. On Canvas, you will find the Zoom links under Zoom, Clouding Recordings. Recordings will be made available for 90 days. More details are available on the Lectures page.

Communication: See the Communications Policy policy page.

Office Hours: The course staff will hold regular “consulting hours” on many days (see Consulting Hours).

Course Mechanisms: See Communications Policy:

Grading: 50% workbooks, 20% projects, 20% exams, 10% in-class quizzes or weekly surveys. See Grading for details.

Exams: We will have two exams. One will be on Wednesday evening during the semester (3/6) and one during the University final exam period (currently scheduled for 5/8). Exams will be in person with the option to complete on Canvas with Honorlock. See Exams for more information.

Surveys: We will have weekly in-class quizzes on Tuesday and Thursday and surveys due on Friday. In-class quizzes are graded for participation and Surveys are graded for correctness and can be used in place of the in-class quiz for that week.

Books: You are not required to purchase any books. Chapters for required readings will be provided online, either through the course Canvas or the University Library. See the Books page for more information.

Late policy: Workbooks may be submitted up to a week late, subject to rules and penalties. Surveys must be submitted before the end of the week. Exams may not be taken late.

Class Topics

The main topics, in rough order of appearance (subject to change):

  • Basics of web programming
  • 2D graphics APIs
  • Coordinate Systems and Hierarchical Modeling
  • Transformations
  • Curves and Shape Representations
  • 3D programming with a high level API
  • Transformations in 3D
  • Meshes and Shapes in 3D
  • Local lighting
  • Texturing
  • How 3D drawing works
  • Graphics Pipelines and efficiency issues
  • Surfaces
  • Higher quality rendering

These roughly map to weeks in the Calendar.

Course Forms

  • Workbook Regrade Request Form
  • Online Exam Request Form