CSE190: Computer Graphics  Rendering Algorithms 
Office hours, Fridays 2:303:30pm
Lab. hours, Wed/Fri 1:305:30pm in the APE lab.
cse190(at)graphics.ucsd.edu
Peter Shirley, "Fundamentals of Computer Graphics", AK Peters 2002 [Errata]
Optional
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
Henrik Wann Jensen, "Ray Tracing", unpublished document (UCSD only)
Tuesdays and Thursdays: 3:30pm  4:50pm
HSS 2305A
This course will cover the basic algorithms used for computer graphics rendering. The course will have three 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 three programming exercises including a final project.
Miro ray tracing source code v0.2 (UCSD only)
Geometry for assignment 2 (UCSD only)
Final test images and test scenes for assignment 2
Programming assignment I [PDF] Due
11:59pm, Monday, April 28
Programming assignment 2 [PDF] Due
11:59pm, Wednedsday, May 21
Final project [PDF] Due
11:59pm, Thursday, June 12
Efficiency issues for ray tracing
Automatic Creation of Object Hierarchies for Ray Tracing
Date  Topic  Reading  Slides 
Week 1  
April 1  Topics overview, ray tracing concepts  Chapter 15 (should be known material)  
April 3  Camera models, transformations  Chapter 6 and pages 151153  
Week 2  
April 8  Intersection algorithms I Handout of assignment 1 
Pages 154159  
April 10  Intersection algorithms II    
Week 3  
April 15  Shading Models I  Chapter 8 + pages 159165  
April 17  Shading Models II    
Week 4  
April 22  Texturing and Bumpmapping  Chapter 10  
April 24  Acceleration Structures I  Pages 167174  
Week 5  
Monday, April 28  Programming assignment 1 due  
April 29  Acceleration Structures II Handout of assignment 2 
Pages 174180, grid paper  
May 1  Acceleration Structures III  BSP tree paper  
Week 6  
May 6  Acceleration Structures IV + Advanced Geometry  Chapter 13  
May 8  Procedural Texturing  Noise paper and Cellular noise paper  
Week 7  
May 13  Sampling and AntiAliasing  Chapter 14  
May 15  Monte Carlo Ray Tracing  MCRT course Chapters 2 and 3  
Week 8  
May 20  Global Illumination I Final Project Specification 
The rendering equation  
Wednesday, May 21  Programming assignment 2 due  
May 22  Global Illumination II  Hemicube paper Ray traced radiosity 

Week 9  
May 27  Photon Mapping I  Photon mapping material 

May 29  Photon Mapping II    
Week 10  
June 3  Rendering & Lighting for Games Invited lecture by Steve Rotenberg 
  
June 5  Rendering Translucent Materials    
June 12, 36pm  Rendering Competition 
Sameer Agarwal
John Paul Cheng
Anson Chu
Greg Chun
Matthew Clothier
Craig Donner
Frank Du
Morgan Gebiie
Cyrus Jam
Arash Keshmirian
Jinsu Kim
Kuowen Lo
Satya Mallick
Gregory Maxey
Nathaniel Parrish
John Rapp
Daryl Sterling
Joshua Swafford
Robert Tibayan
John Wang
Xin Wang
Joshua Wills
Jessica Winblad