CSE168: Rendering Algorithms |

Henrik Wann Jensen

Office hours: Tuesdays noon-1pm

None

Tuesday and Thursday 9:30-10:50am, CSE 4140

Peter Shirley et al., "Fundamentals of Computer Graphics", 2nd or later edition, AK Peters 2005 [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 covers algorithms for computer graphics rendering of photorealistic images. We will cover the ray tracing algorithm, shading models, acceleration structures, and global illumination algorithms. There will be a number of assignments focusing on implementing a ray tracer capable of rendering realistic images of fairly complex scenes.

The ray tracing algorithm, camera models, geometry intersection, geometry tessellation, acceleration structures, shading models, texturing, bump mapping, sampling and filtering, and advanced topics such as Monte Carlo ray tracing.

This is class is for 4 units.

The programming assignments use the Miro base code. You may need these files if you compile miro on windows. You need OpenGL and GLUT to compile Miro. To download the base code, you will need to use the UCSD Proxy Server, or one of the ACS managed PCs.

Assignment 2Assignment 3

Models for the assignments

sphere.objbunny.zip (contains bunny.obj)

bunny_smooth.zip (contains bunny_smooth.obj with normals)

teapot.obj

cornell_box.obj

sponza.zip (contains sponza.obj)

Ray Tracing News

Ray Tracing Document (raytrace.pdf)

Date |
Topic |
Reading |
Slides |

Week 1 |
|||

April 2 | Topics Overview, Introduction to Ray Tracing |
Chapter 2,5,6,7 (should be known material), Section 10.1, 10.2 | slides |

April 4 | Introduction to Miro and How to Render spheres | Section 10.3, 10.4 | slides |

Week 2 |
|||

April 9 | Shading 1 |
slides | |

April 11 | Intersection algorithms 2 |
No slides | |

Week 3 |
|||

April 16 | Intersection algorithms 3 | No slides | |

April 18 | Procedural texturing | slides | |

Week 4 |
|||

April 23 | Textures, Environments, and Bumps | slides | |

April 25 | Acceleration Structures 1 | BVH paper | slides |

Week 5 |
|||

April 30 | Acceleration Structures 2 | Surface area heuristic | slides |

May 2 | Acceleration Structures 3 | slides | |

Week 6 |
|||

May 7 | Monte Carlo Ray Tracing 1 | slides | |

May 9 | Monte Carlo Ray Tracing 2 | Chapter on Sampling | slides |

Week 7 |
|||

May 14 | Photon Mapping 1 | Chapter on Global Illumination | slides |

May 16 | Photon Mapping and Irradiance Caching | slides 1 | slides 2 |

Week 8 |
|||

May 21 | Tone Mapping | slides | |

May 23 | Midterm | 2010 midterm | |

Week 9 |
|||

May 28 | Sampling | slides | |

May 30 | Non Photorealistic Rendering | slides | |

Week 10 |
|||

June 4 | Advanced Geometry | slides | |

June 6 | Final project presentations |

Last update: June 4, 2013