Princeton University

Computer Science 598d


This course will focus on synthesis, analysis, and simulation of threedimensional
geometric models for use in computer graphics. Topics include geometric
representation and specification methods, procedural modeling, model capture,
simulation, visualization, and animation.
Several times during the semester, students will submit a short written
answer (at least a few sentences, and no more than one page) to an openended
and hopefully thoughtprovoking question. Example thought exercises
are: ``How can two triangle meshes be compared for similarity?,'' or ``Describe
an algorithm to construct a bounding box hierarchy,'' or ``How can we combine
multiple inputs (sound, light, infrared) to capture 3D models more robustly?''
For these questions, there are no right or wrong answers. It's the
thought that counts.
There will be a 34 programming assignments for which students will
implement an algorithm in 3D geometric modeling. Examples are: ``Implement
a program that eliminates small cracks from a polygonal model,'' or ``Implement
a program that adds, removes, or replaces nodes in a scene graph to optimize
performance.'' Often, some code (e.g., for parsing, etc.) will be
provided by the instructor for each assignment. Approximately
two weeks will be allowed for each programming assignment.
Each student will be asked to prepare a lecture on a specific topic
for this course. A list of papers on the topic will be provided by
the instructor. The student will read the papers, find other relevant
papers, and present a synthesized view of the problems, previous approaches,
and outstanding research issues. One week before the lecture, the
student will submit a draft version of ``overhead slides'' to the instructor
for discussion. Example lecture topics include: ``methods for mesh
simplification,'' ``uses of binary space partitions,'' ``construction of
image based representations,'' etc.
Students will complete a substantial course project related to 3D modeling
for interactive computer graphics. A list of
suggested course projects will be provided by the instructor.
Typical projects involve selection of a problem to solve, survey of previous
approaches, implementation of an algorithm, and collection of experimental
results. Projects should generally be individual efforts; however,
teams of two are possible for larger projects. Throughout the semester,
students will deliver written and oral descriptions of their projects.
Project reports will be due at the end of the semester, at which time we'll
have a ``project demo party'' so that everybody can show off what they've
done.
3/19: Spring Break
4/30: Computer Vision for Computer Graphics (Ingrid Carlbom)