Real-Time High Quality Rendering
COMS 6160 Advanced Topics in Computer Graphics, Fall 2004,
Prof. Ravi Ramamoorthi Time Wed 6pm-8p Room 717 Hamilton
Overview
One of the perennial goals of computer graphics is creating high
quality images which are indistinguishable from photographs---a
goal referred to as photorealism. Another important goal is
interactivity for visualization, simulation and other
real-time applications. However, these two goals have
historically been at odds with each other. Photorealism
employing methods like ray tracing and radiosity has resulted in
beautiful pictures, but at the cost of slow algorithms taking
hours to days. Interactivity has been enabled through advances
in graphics architectures, from the earliest SGI machines to
today's powerful desktop GPUs, but the traditional focus has
been on rendering more polygons rather than high quality
images. However, in the last 5 years, as a result of improved
and programmable graphics hardware and new efficient image
synthesis algorithms, there has been an amazing
convergence of these ideas, enabling us to conceive of real-time
photorealistic rendering.
In this course, we will review some of the recent ideas that seek
to bridge the gap between realism and interactivity. Topics
include graphics hardware and modern programmable GPUs and
applications, the use of complex lighting and shading with
shadows and environment maps, image-based and real-time
rendering methods based on precomputed imagery, analysis and
signal-processing techniques including low-dimensional
lighting models and factored representations, and interactive global
illumination.
Below are some example images produced in real-time using the
systems we will be discussing.
Prerequisites
COMS 6160 is an advanced course concentrating on current research topics in
computer graphics. The content may change with every offering and the course
can be repeated for credit. It is targetted towards undergraduate and MS
students with a knowledge of and interest in computer graphics
(at the level of 4160 or equivalent), as well as PhD students working in
graphics, vision, and robotics.
Relationship to Other Courses
This academic year, 2004-05, we finally have a full plate of computer graphics
courses. I hope you will be enthusiastic about, and enrol in these
offerings. The future offering of these courses will depend on your
enthusiasm.
Specifically, the introductory course in computer graphics, COMS 4160
will be taught as usual by me this semester. It is strongly
recommended you take that if you are an undergraduate or MS student
without prior background in graphics. Next semester, I will be
teaching an advanced graphics course, COMS 4162, which will be a
continuation of COMS 4160 this fall.
Course Format and Requirements
The course will consist
of lectures on the relevant topics by the instructor, student
presentations of papers covering current research in the area, and
student projects. A syllabus/schedule is noted below. The grading
will be 30% for paper presentations, 60% for the project, and 10% for
class participation. In general, roughly (depends on the number of
students in the course), 2 paper presentations will be required for
those taking the course for a grade, and 1 for those taking the course
pass/fail. A project is not required for students taking the course
pass/fail. This is a good option for PhD students and others to read
papers on this exciting topic and learn about the area without
committing too much effort into a course project. Auditors, who
simply want to sit in on the course are also welcome; however, we
prefer if you sign up for the course pass/fail instead [this just
involves doing one paper presentation]. For those of you who took COMS 6998
(appearance models in graphics and vision) in fall 2002, the format of
this course will be very similar.
Students taking the course for a letter grade are required to do a
project [this may be in groups of 2-3], give a presentation in class
regarding their results, and also submit a final written report. Wide
flexibility is available with respect to project topics, provided they
relate loosely to the subject matter of the course. We expect that
most projects will implement one or more of the algorithms or papers
discussed in the course, showing an impressive real-time demo of high
quality rendering. We welcome suggestions from the students on
alternative project ideas. The best projects will go beyond the
published work in some way, such as trying out an alternative or
better approach or trying to develop some variant or more general
version of the technique. However, this is not essential; in general,
students who fulfil all course requirements including a well-executed
project will easily receive an A in the course.
As a potentially easier alternative to the project, we will also
accept a well-written summary or tutorial, covering 3 or 4 papers.
The best summaries will point out links between the papers not noticed
by the original authors and suggest improvements or directions for
future research. However, this option is recommended only as a last
resort and will generally receive a slightly lower score; we prefer
that you do a good project (which may involve understanding a few
papers in any case).
Topics
Topics to be covered include
- Basic preliminaries: The graphics pipeline and the reflection equation.
- Modern graphics hardware and programmable shaders; systems and applications
- Shadow and Environment Mapping
- Image-based modeling and Rendering
- Precomputed imagery
- Signal-processing and low-dimensional and factored methods
- Interactive Global Illumination
Resources
- Books: There are no books specifically required for this course.
The one optional text you may find useful is Real-Time Rendering (2nd
Edition) by Moller and Haines .
Chapters of books may be referenced as reading material and
will generally be handed out in class.
- Papers: I have downloaded many of these locally. Note that
SIGGRAPH papers are available directly from the ACM digital library.
TA
The TA for this course is Sebastian Enrique,
senrique@cs, 6LE4 CEPSR. He can help you with any logistical issues
like computer labs, getting setup etc. His office hours are on Wed from
4-5pm.
Outline
The (tentative) course schedule is as follows. In general, you will
likely benefit from doing the reading (i.e. the papers assigned for a
particular date) before class; it will at least make for more lively
discussion.
Sep. 8:
- Lectures:
Introduction and Overview ,
Graphics Hardware Pipeline and Reflection Equation
- Assignment: Sign up for paper presentations for next week.
- Reading: Books, notes and links
- M.F. Cohen and J.R. Wallace, 1993. Radiosity and Realistic Image
Synthesis, Chapter 2 by Pat Hanrahan. Rendering Concepts
[handed out in class; not available online]
- A. Moller and E. Haines, 2002. Real-Time Rendering (2nd ed),
Chapter 2 on Graphics Hardware Pipeline
[handed out in class; not available online]
Sep. 15:
- Brief Lecture giving
overview of papers presented.
- Student Presentations of classic papers on graphics hardware
(20 min each):
- Presentation: A framework for real-time shaders (Aner)
- Assignment: Sign up for paper presentations
Sep. 22:
- Student presentations of papers on using graphics hardware for
high quality rendering
- Part 1 of lecture on Shadow and Environment Mapping
- Assignment: e-mail brief description of proposed project(s) (by Thu
Midnight). Schedule meeting time to discuss projects on Friday/Monday
Sep. 29:
- Student presentations of papers on programmable shading systems:
- Part 2 of lecture on shadow and environment mapping
- Assignment: 1-2 page proposed project descriptions due
Resources on Shadow and Environment Mapping Shadow and
environment maps are key concepts that many of the papers in the
course make use of. Here are some more resources for learning more
about these ideas.
- Mark Kilgard's presentation at the Siggraph 2002 course on
shadow mapping
- Nvidia developer article
on shadow maps
- Articles on environment maps from the Real-Time Rendering text will be
handed out in class.
- For diffuse objects, my paper on irradiance environment maps along with
source code and datasets is available
here
- Paul Debevec has a historical retrospective on reflection mapping, along with a number of
great early articles including Miller and Hoffman's seminal paper.
Oct 6:
Oct. 13:
- Student Presentation of further papers on shadow mapping
- T. Lokovic and E. Veach. Deep shadow maps SIGGRAPH 00, pp 385-392. Presented by Ray
- R. Fernando, S. Fernandez, K. Bala and D. Greenberg. Adaptive shadow maps SIGGRAPH 01, pp 387-390. Presented by Cheryl
- M. Stamminger and G. Drettakis. Perspective Shadow maps SIGGRAPH 02, pp 557-562. Presented by Dmitriy
- P. Sen, M. Cammarano and P. Hanrahan. Shadow Silhouette Maps SIGGRAPH 03, pp 521-526. Presented by Hrvoje
Oct. 20:
- Student presentations of papers on environment mapping
- Lecture on Image-Based Rendering
- Reading on image-based modeling and rendering
(these papers are only for reading; they are not presented )
Oct. 27:
- Assignment: 2+ page report on project milestone due, along
with (scheduling) demos if required.
- Lecture on real-time rendering from
precomputed images
- Student presentations of papers on real-time rendering with factored
representations
Nov 3:
Nov. 10:
- Student presentations of papers on precomputed images
- P. Sloan, J. Kautz and J. Snyder
Precomputed Radiance Transfer for Real-Time Rendering in
Dynamic, Low-Frequency Lighting Environments
SIGGRAPH 02, pp 527-536.
Presented by Alejandro
- P. Sloan, J. Hall, J. Hart and J. Snyder
Clustered Principal Components for Precomputed Radiance Transfer
SIGGRAPH 03, pp 382-391. Presented by Brianne
- R. Ng, R. Ramamoorthi and P. Hanrahan
All-frequency shadows using non-linear wavelet lighting approximation
SIGGRAPH 03, pp 376-381. Presented by Dmitriy
- P. Sloan, X. Liu, H. Shum and J. Snyder
All-Frequency Precomputed Radiance Transfer for Glossy Objects EGSR 04
Presented by Vijay
Nov. 17:
- Student Presentations of papers on precomputed methods
- Student presentations of papers on interactive global illumination
Nov 24:
- Tentatively No Class, though we might have one if there is material
left over
- Sign up for project presentations on Dec 1 and Dec 8
Dec. 1:
Dec 8:
- Project Presentations
- Final reports (website with documentation also required)
due December 9, 11:59pm
Ravi Ramamoorthi
Last modified: Thu Sep 30 20:27:06 EDT 2004