CSE 557: Computer Graphics
Winter Quarter 1997
Syllabus
Administrivia:
Prerequisites:
- Knowledge of data structures
- A good working knowledge of C (and hopefully C++) programming
- Some linear algebra
- Some mathematical sophistication
- (No prior knowledge of graphics is assumed.)
Optional texts:
- Foley, van Dam, Feiner, Hughes. Computer
Graphics Principles and Practice, Second Edition in C. Addison Wesley, 1996.
- OpenGL Reference Manual. Addison-Wesley, 1992.
- Jackie Neider, Tom Davis, and Mason Woo. OpenGL Programming
Guide. Addison-Wesley, 1993.
- Josie Wernecke, The Inventor Mentor. Addison-Wesley, 1994.
Topics:
- Week 1: Introduction and Overview
- Week 2: Geometric Transformations
- Week 3: Curves and Surfaces
- Week 4: Sampling Theory
- Week 5: Color Theory
- Week 6: Numerical Methods
- Week 7: Global Illumination
- Week 8: Extracting Geometry
- Week 9: Image-Based Rendering
Philosophy:
We plan to experiment this quarter with active learning.
Our goal is to promote active student
engagement with the course material and active student participation
in the teaching process. Hopefully, this will encourage
greater creativity, deeper and more individualized learning,
and all-around more fun!
A pragmatic effect is that there will be very little
required work in the course.
You will earn a certain number of points for each unit
of work you do, but you will have a great deal of
freedom to choose to work on the projects that interest and excite
you most.
Grading:
Points may be earned for each of the following activities:
- Lecture notes (required): 100 points
- Quizzes (7): 25 points each
- Project 0: 45 points
- Projects 1-3: 150 points each
- Project artifacts (3): 20 points each
- Final project: 200-800 points (est.)
Extra credit may be earned on all activities. The only required part
of the course is doing one set of lecture notes; all other activities
are optional. The lecture notes, projects 1-3, and the final project
may all be done collaboratively. More details about the final
project can be found here.
We will use a non-linear mapping of points to grades.
Here are the points you'll need for the following grades:
- 4.0: 1500
- 3.9: 1212
- 3.8: 1092
- 3.7: 1000
- 3.6: 923
- 3.5: 855
- 3.4: 793
- 3.3: 737
- 3.2: 684
- 3.1: 634
- 3.0: 588
- 2.9: 543
- 2.8: 501
- 2.7: 460
- 2.6: 420
- 2.5: 382
Projects:
Projects are implemented in the graphics
instructional lab, which consists of 14 Silicon Graphics Indy
R4400s. The lab is located in Sieg 228.
There are four optional "canned" projects, and one final project.
You'll work indvidually only on the first project (Project #0). For
the next three projects, you'll work with a team of 2 to 3 students.
Each project will require you and your teammate to make substantial
extensions to an existing interactive graphical application. The
projects we have in mind are:
- Project 0: Mandelbrot:
- A simple program to create pictures of a Mandelbrot set.
- Project 1: Sweeper:
- A program to create complex surfaces by extruding (sweeping) a
curve along a path in three dimensions.
- Project 2: Morph:
- A program to create video animations by ``morphing'' (blending)
between a pair of images.
- Project 3: Trace:
- A program to create beautiful raytraced images, complete with
shadows, reflections, and transparent effects.
Projects will be graded during in-person sessions with the TA. During the grading session, the TA will
run the project to make sure that it conforms to the project
guidelines. The TA will then quiz individual members of the team to
determine how well they understand the structure of the code, the
design trade-offs, and the implemented algorithms.
One grade will be assigned for all members of the team for the
project's implementation. Separate grades will be recorded for each
team member's "knowledge of the project." The last component of the
grade involves using your project to create an artifact,
hopefully, of some artistic merit. Extra credit will be given for the
nicest artifacts, as determined by class vote. Click here for more information on
project grading.
Project Turn-in & Late Policy:
Assignments are due at the beginning of lecture on the due date.
This means that the modification stamp on the project executable
must be earlier than the start of lecture on the due date. Late
assignments are marked down at a rate of 33% per day (not per
lecture), meaning that if you fail to turn in an assignment on time
it is worth 66% for the first 24 hours after the deadline, 33%
for the next 24 hours, and it is worth nothing after that. In
addition, no extra credit for bells and whistles will be awarded
for any late assignment.
Exceptions will be given only in extreme circumstances and only
in advance.
CSE/557 Catalog description:
Introduction to computer image synthesis, with an emphasis on the
underlying theoretical principles in preparation for undertaking
computer graphics research. Topics vary from year to year, but may
include color perception; radiometry, photometry, and radiative
transport; geometric fundamentals, including affine and projective
geometry; data structures and algorithms from computational geometry;
curve and surface design; numerical methods, including wavelets,
optimization, and root finding; sampling theory and its relation to
image and volume processing; and physical dynamics for modeling and
animation. Laboratory project required.