| CSE168: Rendering Algorithms |
Office hours, Fridays 2:30-3:30pm
CENTER 216, Tuesdays and Thursdays: 3:30pm - 4:50pm
Craig Donner
Lab. hours:
Monday 3pm - 6pm
Tuesday 10pm - 1pm
Wednesday 3pm - 6pm
Thursday 10pm - 1pm
AP&M 2444
cse168(at)graphics.ucsd.edu
Peter Shirley, "Fundamentals of Computer Graphics", AK Peters 2002
[Errata]
Useful book on geometry, ray intersections, transformations etc.
Philip Schneider and David Eberly, "Geometric Tools for Computer Graphics",
Morgan Kaufmann 2002
More advanced text on global illumination and photon mapping
Henrik Wann Jensen, "Realistic Image Synthesis Using Photon Mapping,
AK Peters, 2001
Slightly dated, but still a very comprehensive overview of image synthesis
Andrew Glassner, "Principles of digital image synthesis", Morgan Kaufmann, 1995
This course will cover the basic algorithms used for computer graphics rendering. The course will have four programming assignments in which the students will implemeent a ray tracer with acceleration structures, and advanced rendering capabilities such as Monte Carlo ray tracing and photon mapping. At the end of the course the students should be able to write a ray tracer, able to handle different types of geometry efficiently, capable of choosing good acceleration structures, have basic knowledge of shading models such as the Lambert and Phong models, knowledge of texture and bump mapping techniques (possibly mipmap filtering), basic knowledge of sampling and filtering, global illumination and photon mapping, and an idea of more advanced topics such as programmable graphics hardware.
The ray tracing algorithm, camera models, geometry intersection, geometry tessellation, acceleration structures, shading models, texturing, bump mapping, sampling and filtering, and a brief introduction to advanced topics such as Monte Carlo ray tracing and/or programmable graphics hardware.
This is class is for 4 units. It will be graded based on four programming exercises (including a final project) and a midterm. The grading for the projects are: 1 (15%), 2 (20%), 3 (20%), 4 final project (30%), midterm (15%)
The miro base code is available for Windows and OSX/Linux. It includes a README.pdf that should help answer most questions you might have. If there's still something confounding, email Craig.
Programming assignment 1 [PDF]
Due 11:59pm, Wednesday, April 14
Programming assignment 2 [PDF]
Due 11:59pm, Wednesday, April 28
Programming assignment 3 [PDF]
Due 11:59pm, Wednesday, May 19
Final Project [PDF]
Due 11:59pm, Thursday, June 10
Here are the three test scenes for Assignment 3:
Here are three test scenes for Assignment 1:
You can get a bunny.obj without the big triangle here.
You can now download the modified files for Assignment 2 for Windows and others. A new example scene file is also available.
Photon Map implementation from Realistic Image Synthesis Using Photon Mapping.
| Date | Topic | Reading | Slides |
| Week 1 | |||
| March 30 | Topics overview, transformations and triangles | Chapter 1-5 (should be known material) | |
| April 1 | Line and Triangle Rasterization Handout of assignment 1 |
Section 2.5, 3.5, and 3.6 | |
| Week 2 | |||
| April 6 | Perspective corrected interpolation Ray Tracing (Camera model) |
Chapter 6 and Pages 154-159 | |
| April 8 | Intersection algorithms I | - | No slides |
| Week 3 | |||
| April 13 | Shading Models I Handout of assignment 2 |
Chapter 8 + pages 159-165 | No slides |
| Wednesday, April 14 | Programming assignment 1 due | ||
| April 15 | Shading Models II | - | |
| Week 4 | |||
| April 20 | Textures, Environments, and Bumps | Chapter 10 | |
| April 22 | Acceleration Structures I | Pages 167-174, BVH paper | |
| Week 5 | |||
| April 27 | Acceleration Structures II Handout of assignment 3 |
Pages 174-180, adaptive grid paper | |
| Wednesday, April 28 | Programming assignment 2 due | ||
| April 29 | Acceleration Structures III | BSP tree paper | |
| Week 6 | |||
| May 4 | Advanced Geometry | Chapter 13 | |
| May 6 | Procedural Texturing | Noise paper and Cellular noise paper | |
| Week 7 | |||
| May 11 | Monte Carlo Ray Tracing + Questions | - | |
| May 13 | Midterm | Slides + previous readings | - |
| Week 8 | |||
| May 18 | Global Illumination I | The Rendering Equation | |
| Wednesday, May 19 | Programming assignment 3 due | ||
| May 20 | Photon Mapping I Handout of the final project assignment |
- | |
| Week 9 | |||
| May 25 | Photon Mapping II + Radiosity | - | |
| May 27 | Sampling and Anti-Aliasing | Chapter 14 | |
| Week 10 | |||
| June 1 | Realtime rendering for games Steve Rotenberg |
- | - |
| June 3 | Subdivision Surfaces at Disney Rasmus Tamstorf and Carlos Gonzales |
- | - | June 10, 3-6pm | Rendering Competition Final project due in AP&M 4882 |
- | - |
Mike Caloud
Kajun Cheng
Joseph Chow
Sunny Chow
Cameron Chrisman
Tak Chu
Sonny Diao
Thomas Hsieh
Linda Ip
Wojciech Jarosz
Alex Kulungowski
Henry Mitchell
Jefferson Ng
Ivan Ospina
Dana Qu
Jack Quinn
Geoffrey Romer
Siddartha Saha
Brandon Schwartz
Mara Silva
Stephan Steinbach
Diem Vu
Timothy Wernette
Brian Yu
Neil Alldin
Peter Byeon
Jeremy Carver
Cliff Chan
Ashwin Chandra
Hui-Chun Chang
Andrew Chen
Eddie Chu
Dennis Chun
Patrick Dwyer
Armen Gregorian
Joey Hammer
Bekki Hui
Arash Keshmirian
Allen Lam
Wade Roberts
Ariel Roldan
Nathan Schad
Haixia Shi
Siu-Cheong Tam
David Tanguilig
Phuong Vo
Justin Wallace
Xin Wang
Hubert Wong