Course Syllabus,
CS 5721 Computer Graphics
Spring Semester 2017

Course Data:
Instructor: Doug Dunham
Web Site:
Office:333 Heller Hall
Office Hours: Tu, Th 11-noon, W 2:30-5:55, and by appointment
Lectures: Tu, Th 12:30-1:45 p.m. in HH 306
Lab: Tuesday 6 pm in MWAH 187
Course Web Site:

Teaching Assistant: Penghuan Ni
Web Site:
Consulting: Tuesday 5-6 pm in MWAH 187, Thursday 3-5 pm in HH 314

Bulletin Description:
Mathematics for computer graphics, basic raster algorithms, 2D and 3D transformations, viewing and shading. The graphics pipeline including visible surface determination, shading, ray-tracing, texture mapping, and clipping. Data structures including triangle meshes, scene graphs, bounding volume hierarchies. Real-time graphics applications using software systems such as Op.

Semester prerequisite: CS 2511, Math 1296 or #, (or the equivalent if you are a transfer student). A grade of C- or better is required in all prerequisite courses.

Course Objectives and Content:
This course provides an introduction to 2- and 3-dimensional computer graphics, including basic algorithms and the mathematics behind the transformations and viewing operations. The following is an outline of the material to be covered in the course. We will start with an introduction to computer graphics, followed by a simple (2D) raster graphics package and its algorithms. Then we will cover geometrical transformations and viewing in 3D, and use them with a 3D graphics package. Finally, we will cover material from solid modeling, the theory of colored light, visible-surface determination, and illumination and shading.

There will be weekly programming assignments that illustrate concepts in 2- and 3-dimensional computer graphics. The graphics software libraries used for this course require that the programs be written in C or C++.

Equal Opportunity:
The University of Minnesota is committed to the policy that all persons shall have equal access to its programs, facilities, and employment without regard to race, color, creed, religion, national origin, sex, age, marital status, disability, public assistance status, veteran status, or sexual orientation. As instructor, I am committed to upholding University of Minnesota's equal opportunity policy. I encourage you to talk to me in private about any concerns you have related to equal opportunity in the classroom. To inquire further about the University's policy on equal opportunity, contact the Department of Human Resources & Equal Opportunity 255 DAdB, (, phone: (218) 726-6827, email:

Students with Disabilities:
It is the policy and practice of the University of Minnesota Duluth to create inclusive learning environments for all students, including students with disabilities. If there are aspects of this course that result in barriers to your inclusion or your ability to meet course requirements - such as time limited exams, inaccessible web content, or the use of non-captioned videos - please notify the instructor as soon as possible. You are also encouraged to contact the Office of Disability Resources, 258 Kirby Student Center, to discuss and arrange reasonable accommodations. Please call 218-726-6130 or visit the DR website at ( for more information.

Mental Health Statement:
As a student you may experience a range of issues that can cause barriers to learning, such as strained relationships, increased anxiety, alcohol/drug problems, feeling down, difficulty concentrating and/or lack of motivation. These mental health concerns or stressful events may lead to diminished academic performance or reduce a student's ability to participate in daily activities. University of Minnesota services are available to assist you with addressing these and other concerns you may be experiencing. You can learn more about the broad range of confidential mental health services available on campus via the UMD Health Service Counseling website at

Student Conduct Code:
Appropriate classroom conduct promotes an environment of academic achievement and integrity. Disruptive classroom behavior that substantially or repeatedly interrupts either the instructor's ability to teach, or student learning, is prohibited. Student are expected adhere to Board of Regents Policy: Student Conduct Code: ( ).

Teaching and Learning: Instructor and Student Responsibilities:
UMD is committed to providing a positive, safe, and inclusive place for all who study and work here. Instructors and students have mutual responsibility to insure that the environment in all of these settings supports teaching and learning, is respectful of the rights and freedoms of all members, and promotes a civil and open exchange of ideas. To reference the full policy please see:

Student Academic Integrity Policy:
Academic dishonesty tarnishes UMD's reputation and discredits the accomplishments of students. Academic dishonesty is regarded as a serious offense by all members of the academic community. This course will adhere to UMD's Student Academic Integrity Policy, which can be found at

Final Exams:
All 1xxx-5xxx courses offered for undergraduate credit should include a final graded component or end of term evaluation that assesses the level of student achievement of one or more course objectives. All final graded components are to be administered or due at the time and place according to the final exam schedule and not during the last week of class. To reference the full policy please see:

Excused Absences:
Students are expected to attend all scheduled class meetings. It is the responsibility of students to plan their schedules to avoid excessive conflict with course requirements. However, there are legitimate and verifiable circumstances that lead to excused student absence from the classroom. These are subpoenas, jury duty, military duty, religious observances, illness, bereavement for immediate family, and NCAA varsity intercollegiate athletics. For complete information, please see:

Appropriate Student Use of Class Notes and Course Materials:
Taking notes is a means of recording information but more importantly of personally absorbing and integrating the educational experience. However, broadly disseminating class notes beyond the classroom community or accepting compensation for taking and distributing classroom notes undermines instructor interests in their intellectual work product while not substantially furthering instructor and student interests in effective learning. For additional information, please see:

Required Text:
Fundamentals of Computer Graphics, Fourth Edition, P. Shirley, A.K. Peters, 2009, ISBN-10: 1482229390; ISBN-13: 978-1482229394     Web site:

Course Requirements:
It is not directly required that you attend class, however attendance may be taken at class and lab meetings.

Also, you are responsible for reading assigned text material and for material covered in class, including:

  1. doing the reading assignments from the text
  2. the material covered in the lectures
  3. obtaining assignments and handouts
  4. turning in programming assignments and homework

If you are unable to attend a class meeting, it is your responsibility to obtain class notes, assignments, and extra copies of handouts from your study partner. Note: assignments are due at the beginning of class on the due date (unless otherwise specified) -- they will be docked 25% per day if turned in late.

Assignments: There will be 9 or 10 lab assignments, to be demonstrated during the lab sessions, and 6 or 7 homework programming assignments.

Getting Help with Programming Assignments: There are several things to be noted. First, all lab assignments are to be your own work -- there will be no group labs in this course. That doesn't mean that you can't get any help at all, but you should not copy code from other students. However, if you get stuck on some point in understanding the assignment, or get a bug that you can't figure out, then it is all right to ask your study partner.

Second, when you and your study partner get stuck on a bug that you can't figure out, bring copies of your files (.c/.cpp and .h files, and input and output files, if any) and the error messages to the TA or instructor.

Examinations and Grading:
There will be a midterm exam, worth 100 points and a final exam worth 200 points. These exams are closed book. The final exam will be comprehensive. Exams will not be given early, and makeups must be justified by serious circumstances described to the instructor before the time of the exam.

Exam Schedule:
ExamPointsDate and Time
Midterm Exam 100 points Thursday, March 2, 12:30-1:55 p.m. in HH 306
Final Exam 200 points Tuesday, May 2, 12-1:55 p.m. - in HH 306

It is Department of Computer Science policy not to return final exams, however they are kept and you can look at your exam in the instructor's office. The section Final Examination Conflicts on the Final Examination Policy web page explains the UMD policy about having more than two final exams on a single day.

Scores and total points will be maintained by the TA on eGradebook.

Grading Procedures: Final grades are based on total points distributed approximately as follows:

Grades are assigned based on a percentage of the total points. These percentages may be lowered slightly but they will not be raised.
Important note: In the past, students have tended to do better on the lab and homework assignments (average = 90%) than on the midterm (70%) and final (55%) exams. Thus class averages going into the final exam tend to be higher than after the final exam. This leads to the following two pieces of advice: (1) keep your average as high as possible by doing well on the lab/homework assignments, and (2) study carefully for the exams, using the review guide, so that your average isn't brought down by poor exam scores.
The views and opinions expressed in this page are strictly those of the page author. The contents of this page have not been reviewed or approved by the University of Minnesota.
Page URL: /~ddunham/cs5721s17/syllabus.html
Page Author: Doug Dunham
Last Modified: Monday, 20-Feb-2017 16:16:37 CST
Comments to: