Computer Graphics and Visualization Lab
Department of Computer Science at Purdue University

Differences

This shows you the differences between the selected revision and the current version of the page.

projects:reflected_impostors 2008/09/15 20:13 projects:reflected_impostors 2008/09/15 21:28 current
Line 1: Line 1:
====== Reflected-Scene Impostors for Realistic Reflections at Interactive Rates ====== ====== Reflected-Scene Impostors for Realistic Reflections at Interactive Rates ======
-^ Overview ^+^ **Overview**  ^
| The [[projects:sample_camera|sample-based camera]] (SBC) is a method for rendering curved reflectors  based on projecting reflected vertices. The SBC is a set of BSP trees with simple cameras at their leafs. When the reflector geometry is complex, the viewing volumes of the simple cameras intersect and they cannot be efficiently separated by the BSP tree, which leads to inefficient projection. In order to support complex reflectors we developed a reflection rendering technique based on simplifying the reflected scene, which is approximated with billboard and depth map impostors. The intersection between a ray and a billboard is inexpensive. For depth maps we developed an intersection algorithm that leverages epipolar constraints to efficiently compute a quality approximation for the first intersection with a ray. Like environment mapping, our technique does not pose any restriction on the geometry of the reflectors, it supports dynamic scenes, and it runs at interactive rates with the help of graphics hardware. Unlike environment mapping, reflected-scene impostors produce realistic reflections by correctly conveying the distance to the reflector surface and by providing motion parallax.  | | The [[projects:sample_camera|sample-based camera]] (SBC) is a method for rendering curved reflectors  based on projecting reflected vertices. The SBC is a set of BSP trees with simple cameras at their leafs. When the reflector geometry is complex, the viewing volumes of the simple cameras intersect and they cannot be efficiently separated by the BSP tree, which leads to inefficient projection. In order to support complex reflectors we developed a reflection rendering technique based on simplifying the reflected scene, which is approximated with billboard and depth map impostors. The intersection between a ray and a billboard is inexpensive. For depth maps we developed an intersection algorithm that leverages epipolar constraints to efficiently compute a quality approximation for the first intersection with a ray. Like environment mapping, our technique does not pose any restriction on the geometry of the reflectors, it supports dynamic scenes, and it runs at interactive rates with the help of graphics hardware. Unlike environment mapping, reflected-scene impostors produce realistic reflections by correctly conveying the distance to the reflector surface and by providing motion parallax.  |
| {{:wiki:projects:reflected_impostors:teapotscloseup.jpg|}} {{:wiki:projects:reflected_impostors:materialeffects.jpg|}} \\ \\ Four inter-reflecting teapots, 40fps (left) and reflection attenuation with distance and Fresnel effects, 66fps (right). Both images were rendered with billboard impostors. | | {{:wiki:projects:reflected_impostors:teapotscloseup.jpg|}} {{:wiki:projects:reflected_impostors:materialeffects.jpg|}} \\ \\ Four inter-reflecting teapots, 40fps (left) and reflection attenuation with distance and Fresnel effects, 66fps (right). Both images were rendered with billboard impostors. |
Line 10: Line 10:
-^ Publications ^+^ **Publications**  ^
| <HTML><script language="JavaScript" src="http://wiki.cs.purdue.edu/cgvlab/pubs/publication_js.php?project=8"></script></HTML>  | | <HTML><script language="JavaScript" src="http://wiki.cs.purdue.edu/cgvlab/pubs/publication_js.php?project=8"></script></HTML>  |
-^People ^+^ **People**  ^
| <HTML><script language="JavaScript" src="http://wiki.cs.purdue.edu/cgvlab/pubs/people_js.php?project=8"></script></HTML>  | | <HTML><script language="JavaScript" src="http://wiki.cs.purdue.edu/cgvlab/pubs/people_js.php?project=8"></script></HTML>  |
 

projects/reflected_impostors.txt · Last modified: 2008/09/15 21:28 by rosenpa
  [Main Page]   [Projects]   [Publications]   [People]   [Courses]   [Talks]