Instructor: Dr. Jian Chen (jichen@); ITE 357;
Office hours: TuTh : 1:00 - 2:00pm or by appointment.
TA: Alisa Burdeyny (alburde1@); ITE 353; Office hours: MW 2:30-3:30 pm or by appointment;
Prerequisite: MATH 221 (Linear Algebra), CMSC 313 (or other class covering C), CMSC 341 (Data Structures) (We will make heavy use of the prerequisites.)
Texts:
(Required):
Fundamentals of Computer Graphics, 3rd editor, Peter Shirley, AK Peters, 2005
.
(errata)
(Recommended):
OpenGL Programming Guide, M. Woo, J. Neider, T. Davis, and D. Shreiner, Addison Wesley.
Description: Introduction to graphics systems, rasterization, clipping, transformations, modeling, viewing, hidden surface removal, illumination, and shading. Emphasis on realistic, 3D image synthesis.
Objectives:
- Understand the foundations of computer graphics: hardware systems, math basis, light and color.
-
Implement key components of the rendering pipeline. Understand the issues involved in implementing other components.
-
Come to appreciate the complexities of modeling realistic objects through modeling complex scenes using a high-level scene description language.
-
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.
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:
Projs |
Weight |
Description |
P1 | 5% | Simple Scene |
P2 | 8% | Viewing |
P3 | 8% | Modeling
|
P4 | 8% | Interactive Graphics
|
P5 | 8% | Ray Tracing
|
P6 | 8% | Adv. Ray Tracing
|
Students taking the course for graduate credit (i.e. CMSC 634) will be expected to do extra readings and extra parts on each assignment.
Homeworks be assigned at intervals. There will be five such assignments and will typically be due a week after
the assignment is made. Homeworks are due before class on the Thursdays of the week listed. Homeworks will account for a total of 10% of the grade.
Tentative sets are listed in the table below.
Homework |
Weight |
Description |
Hw1 | 2% | Viewing
|
Hw2 | 2% | Modeling
|
Hw3 | 2% | Interaction
|
Hw4 | 2% | Basic ray tracing
|
Hw5 | 2% | Enhanced ray tracing |
Late Policy
Both programming and homework assignments are due on Thursdays.
Programming assignments are to be submitted electronically by 11:00 PM on
Thursdays of the week listed and homework assignments are due by class time
at 11:30 AM on Thursdays of the week listed.
Programming and homework submitted for each late day
will be penalized 10 percent of the possible
score for that assignment.
No more than 4 days is allowed for each programming assignment and no more
than 2 days is allowed for each homework assignment.
Each student gets two free "late" days
without penalty for the entire semester,
to be applied to any of the assignments by the end of the semester to optimize
your score by the TA. Your free late days must be
claimed in writing or by email on or before the due date.
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 may discuss assignments with anyone.
Any help you receive, however, 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 site.xyz."
Grades
Grades will be based on programming assignments (45%),
homework problems (10%), midterm exam (15%), final exam (25%),
and participation (5%). The letter grades follow the
tradition: A: [90-100]; B: [80-90) C: [70-80); D: [60-70); F: <60
Tentative Schedule
Required reading should be completed BEFORE the first date listed
below for maximum benefit. A tentative schedule is listed below.
The Lecture tab above has the most recent schedule and slides.
Date |
Topic |
Required Reading (S=Shirley) |
Assignments |
Aug 29 | Sept 3 |
Overview; Math review; Display |
S 1-3 |
P1 out |
Sept 5 | 10 |
Transforms |
S 5-6 |
|
Sept 12 | 17 |
Viewing |
S 7 |
P1 due on Sept 12, 11:00 pm. Hw1 & P2 out |
Sept 19 | 24 |
Pipeline; Antialiasing |
S 8-10,12.4 |
Hw1 due on Sept 19, before class. |
Sept 26 | Oct 1 |
Texture |
S 11 |
P2 due on Sept 26, 11:00 pm |
Oct 3 | 8 |
Modeling |
S 16 |
Hw2, P3 out |
Oct 10 | 15 |
Interactive Graphics and MIDTERM |
S18, 19, 26 |
Hw2 due |
Oct 17 |
TBD: Jian out of town |
|
P3 due, 11pm |
Oct 22 |
Interactive Graphics and Games |
S 18, 19, 26 |
Hw3, P4 out |
Oct 24 | 29 |
Animation |
S 17 |
Hw3 due Oct 24, before class. |
Oct 31 | Nov 5 |
Basic Raytracing |
S 4 |
P4 due Oct 31, 11:00 pm |
Nov 7 | 12 |
Increased Realism |
S 13, 20, 24, 25 |
Hw4, P5 out |
Nov 14 | 19 |
Advanced Topics |
papers |
Hw4 due Nov 14, before class |
Nov 21 | 26 |
Perception Issues |
papers |
P5 due Nov 21, 11:00 pm, Hw5, P6 out |
Nov 28 |
Happy Thanksgiving! |
|
|
Dec 3 | 5 |
Visualization and Future Directions |
S 27-28 |
Hw5 due Dec 3 before clas, P6 due Dec 5 11pm |
Dec 10 |
Wrap Up and Review |
link to the review. |
|
Dec 19 |
10:30-12:30 FINAL EXAM |
(this room!) |
|
Other Graphics Resources
Please click the Resources tab for additional resources.
Come join us in this exciting adventure!