CMSC 435/634: Introduction to Computer Graphics

Fall 2020, M/W 1:00-2:15, Zoom

Instructor: Dr. Adam Bargteil <> (Avoid sending email)
Office Hours: Mon/Wed 4:00-5:00; Zoom

TA: Alex Dahl
Office Hours:

Piazza Discussion Site

Prerequisite: MATH 221 (Linear Algebra), CMSC 313 (or other class covering C or C++), CMSC 341 (Data Structures)
(Yes, we will make heavy use of the prerequisites)


Lectures will be held live/synchronously using zoom. Recordings will be available in Boxx (fill out and return this form to get access). Expectations for attending lecture include:


Official Required Text
Other useful graphics resources

Description: Introduction to graphics systems, rasterization, clipping, transformations, modeling, viewing, hidden surface removal, illumination, and shading. Emphasis on realistic, 3D image synthesis.


  1. Understand the foundations of computer graphics: hardware systems, math basis, light and color.
  2. Implement key components of the rendering pipeline. Understand the issues involved in implementing other components.
  3. Come to appreciate the complexities of modeling realistic objects through modeling complex scenes using a high-level scene description language.
  4. Become acquainted with some advanced topics in computer graphics; these might include texturing, animation, physically-based modeling, procedural modeling, curves and surfaces, global illumination, interaction, visualization, and virtual reality.

Grades: Grades will be based on programming assignments (75%) and midterm and final exams (25%). More specifically, there will be six (6) programming assignments and two (2) take home exams, all worth 125 points, extra credit options will be provided. Students in 435 will be graded out of 1000 points, students in 634 will be graded out of 1200 points. So, to get an "A" students in 634 will have to do some of the extra credit options (corresponding to roughly 20% more work).

Assignments: Programming assignments require the use of the C/C++ programming language. These assignments may be time-consuming. START EARLY! A tentative list is given below:

Assignment Description Due Date
Assignment 1 Ray Tracing I September 18
Assignment 2 Ray Tracing II October 1
Assignment 3 Rendering Pipeline October 13
Assignment 4 Modeling November 3
Assignment 5 Animation November 17
Assignment 6 Digital Photography December 8

Late Policy

Assignments are to be submitted electronically by 11:59 PM on the date listed. Late assignments will penalized with a multiplier in the range [0,1) depending on how late they are. Assignments received before the deadline have a multiplier of 1. For each hour late (or portion thereof) in the first 24 hours, the multiplier is decremented by 0.005. For hours 24-48, the multiplier is decremented by .01 for each hour. For hours 48-72, the multiplier is decremented by .02 per hour. After 72 hours, the multiplier is decremented by .04 per hour. After 76 hours, the multiplier reaches 0.

Academic Honesty

By enrolling in this course, each student assumes the responsibilities of an active participant in UMBC's scholarly community in which everyone's academic work and behavior are held to the highest standards of honesty. Cheating, fabrication, plagiarism, and helping others to commit these acts are all forms of academic dishonesty, and they are wrong.

All assignments and exams in the course are expected to be your INDIVIDUAL work. You area allowed to discuss programming assignments, but must do the coding yourself: words and math are OK, code is not. Any help you receive must be documented. At the beginning of the readme.txt submitted with each assignment, you must include a statement indicating the sources you used while working on it (excluding course staff and text) and the type of help you received from each. If you received no help, say so. Failure to include this statement with your assignment will result in your program being returned ungraded. For example, "I discussed the algorithms for this project with my study group, including student X and student Y. I also found some helpful descriptions on"

If it is determined that you have violated the academic dishonesty policy, you will receive a grade of -125 or -150 (for students in 435 or 634, respectively) for that assignment or exam.

Tentative Schedule

Required reading from the book should be completed BEFORE the first date listed below for maximum benefit

Date Topic FoCG Due
Aug 31 / Sep 2 Overview / Ray Tracing 1, 2, 3, 4  
Sep 7/9 Labor Day / More Ray Tracing 4, 13
Sep 14/16 Transformations 5, 6 Assignment 1
Sep 21/23 Viewing 7  
Sep 28 / Oct 30 Graphics Pipeline 8 Assignment 2
Oct 5/11 OpenGL / Shading / Texture 10,11
Oct 12/14 Signal Processing / Sampling 9,14 Assignment 3
Oct 19/21 MIDTERM Midterm due in class 10/23
Oct 26/28 Modeling 15,16
Nov 2/4 Animation/Mocap 17 Assignment 4
Nov 9/11 Data Structures 12
Nov 16/18 Digital Photography Assignment 5
Nov 23/25 Light / Color 20,21
Nov 30 / Dec 2 Global Illumination 24
Dec 7 Final handed out Assignment 6
Dec 16 FINAL EXAM 1:00-3:00


There is a class web page, (or 634), where you will find this syllabus online, except you can follow all of the links. Important announcements and updates will be made to this class web page throughout the semester. I will announce at the beginning of class if I make a significant change or addition.

There is a class piazza site for this class. Everyone will be added to this site. Announcements will be made there, and you can also use it for public communication with your classmates, the TA and instructor. You should either check this site periodically, or make sure it is set to send you messages by email. Please only post messages appropriate for the entire class to see. Be sure to send messages about grades or other private matters directly to the instructor or TA.

Dr. Rheingans has some online notes from previous offerings of this course.

OpenGL Resources

Accessibility and Disability Accommodations, Guidance and Resources;
Hate, Bias, Discrimination and Harassment;
Sexual Assault, Sexual Harassment, Gender Based Violence and Discrimination

Accessibility and Disability Accommodations, Guidance and Resources

Accommodations for students with disabilities are provided for all students with a qualified disability under the Americans with Disabilities Act (ADA & ADAAA) and Section 504 of the Rehabilitation Act who request and are eligible for accommodations. The Office of Student Disability Services (SDS) is the UMBC department designated to coordinate accommodations that would create equal access for students when barriers to participation exist in University courses, programs, or activities.

If you have a documented disability and need to request academic accommodations in your courses, please refer to the SDS website at for registration information and office procedures.

SDS email:
SDS phone: (410) 455-2459

If you will be using SDS approved accommodations in this class, please contact me (instructor) to discuss implementation of the accommodations. During remote instruction requirements due to COVID, communication and flexibility will be essential for success.

Sexual Assault, Sexual Harassment, and Gender Based Violence and Discrimination

UMBC’s Policy on Sexual Misconduct, Sexual Harassment and Gender Discrimination and Federal Title IX law prohibit discrimination and harassment on the basis of sex in University programs and activities.  Any student who is impacted by sexual harassment, sexual assault, domestic violence, dating violence, stalking, sexual exploitation, gender discrimination, pregnancy discrimination, gender-based harassment or retaliation should contact the University’s Title IX Coordinator to make a report and/or access support and resources:

Mikhel A. Kushner, Title IX Coordinator (she/her/hers)
410-455-1250 (direct line),

You can access support and resources even if you do not want to take any further action. You will not be forced to file a formal complaint or police report. Please be aware that the University may take action on its own if essential to protect the safety of the community.

If you are interested in or thinking about making a report, please see the Online Reporting Form. Please note that, while University options to respond may be limited, there is an anonymous reporting option via the online form and every effort will be made to address concerns reported anonymously.

Notice that Faculty are Responsible Employees with Mandatory Reporting Obligations:

All faculty members are considered Responsible Employees, per UMBC’s Policy on Sexual Misconduct, Sexual Harassment, and Gender Discrimination. Faculty are therefore required to report possible violations of the Policy to the Title IX Coordinator, even if a student discloses something they experienced before attending UMBC.

While faculty members want you to be able to share information related to your life experiences through discussion and written work, students should understand that faculty are required to report Sexual Misconduct to the Title IX Coordinator so that the University can inform students of their rights, resources and support.

If you need to speak with someone in confidence, who does not have an obligation to report to the Title IX Coordinator, UMBC has a number of Confidential Resources available to support you: 

Other Resources:

Child Abuse and Neglect:

Please note that Maryland law and UMBC policy require that I report all disclosures or suspicions of child abuse or neglect to the Department of Social Services and/or the police.


UMBC’s Policy on Sexual Misconduct, Sexual Harassment and Gender Discrimination expressly prohibits all forms of Discrimination and Harassment on the basis of sex, including pregnancy. Resources for pregnant students are available through the University’s Office of Equity and Inclusion.  Pregnant and parenting students are encouraged to contact the Title IX Coordinator to discuss plans and assure ongoing access to their academic program with respect to a leave of absence or return following leave related to pregnancy, delivery, or the early months of parenting.

In addition, students who are pregnant may be entitled to accommodations under the ADA through the Student Disability Service Office, and/or under Title IX through the Office of Equity and Inclusion.

Religious Observances & Accommodations

UMBC Policy provides that students should not be penalized because of observances of their religious beliefs, students shall be given an opportunity, whenever feasible, to make up within a reasonable time any academic assignment that is missed due to individual participation in religious observances. It is the responsibility of the student to inform the instructor of any intended absences for religious observances in advance, and as early as possible.  For questions or guidance or to request an accommodation, please contact the Office of Equity and Inclusion at

Hate, Bias, Discrimination and Harassment

UMBC values safety, cultural and ethnic diversity, social responsibility, lifelong learning, equity, and civic engagement.

Consistent with these principles, UMBC Policy prohibits discrimination and harassment in its educational programs and activities or with respect to employment terms and conditions based on race, creed, color, religion, sex, gender, pregnancy, ancestry, age, gender identity or expression, national origin, veterans status, marital status, sexual orientation, physical or mental disability, or genetic information.

Students (and faculty and staff) who experience discrimination, harassment, hate or bias or who have such matters reported to them should use the online reporting form to report discrimination, hate or bias incidents; reporting may be anonymous.

Additional Policies and Resources

Please see this Google doc for UMBC Policies and Resources during COVID-19.