Rendering Fake Soft Shadows with Smoothies Laboratory for Computer Science Massachusetts Institute of Technology Eric Chan Frédo Durand.

Slides:



Advertisements
Similar presentations
Exploration of advanced lighting and shading techniques
Advertisements

Ray Tracing Depth Maps Using Precomputed Edge Tables Kevin Egan Rhythm & Hues Studios.
An Optimized Soft Shadow Volume Algorithm with Real-Time Performance Ulf Assarsson 1, Michael Dougherty 2, Michael Mounier 2, and Tomas Akenine-Möller.
Parallax-Interpolated Shadow Map Occlusion
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Object Space EWA Surface Splatting: A Hardware Accelerated Approach to High Quality Point Rendering Liu Ren Hanspeter Pfister Matthias Zwicker CMU.
Optimized Stencil Shadow Volumes
CSL 859: Advanced Computer Graphics Dept of Computer Sc. & Engg. IIT Delhi.
Computer Graphics methods
Real-Time High Quality Rendering CSE 291 [Winter 2015], Lecture 3 Shadow and Environment Mapping
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
SIGGRAPH ASIA 2011 Preview seminar Shading and Shadows.
1 Dr. Scott Schaefer Shadows. 2/40 Shadows Shadows provide clues about depth Make scenes appear more realistic.
Real-Time, All-Frequency Shadows in Dynamic Scenes Thomas Annen * Zhao Dong * Tom Mertens † Philippe Bekaert † Hans-Peter Seidel * Jan Kautz ‡ *MPI Informatik.
A Survey of Real-time Soft Shadows Algorithms Speaker: Alvin Date: 2003/7/23 EUROGRAPHICS 2003 J.-M. Hasenfratz, M. Lapierre, N. Holzschuch and F.X. Sillion.
Efficient Image-Based Methods for Rendering Soft Shadows
Shadow Silhouette Maps Pradeep Sen, Mike Cammarano, Pat Hanrahan Stanford University.
A Real-Time Soft Shadow Volume Algorithm DTU Vision days Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology Sweden
Perspective Shadow Maps Marc Stamminger and George Drettakis Speaker: Alvin Date: 5/28/2003 SIGGRAPH 2002.
Shadow Algorithms Gerald Matzka Computer Science Seminar.
Real-Time High Quality Rendering COMS 6160 [Fall 2004], Lecture 4 Shadow and Environment Mapping
Approximate Soft Shadows on Arbitrary Surfaces using Penumbra Wedges Tomas Akenine-Möller Ulf Assarsson Department of Computer Engineering, Chalmers University.
Penumbra Maps: Approximate Soft Shadows in Real-Time Chris Wyman and Charles Hansen University of Utah Speaker: Alvin Date: 9/29/2003 EUROGRAPH 2003.
Copyright  Philipp Slusallek IBR: View Interpolation Philipp Slusallek.
CSCE 641 Computer Graphics: Image-based Rendering (cont.) Jinxiang Chai.
Real-Time High Quality Rendering COMS 6160 [Fall 2004], Lecture 3 Overview of Course Content
Creating soft shadows Computer Graphics methods Submitted by: Zusman Dimitry.
CSCE 641: Computer Graphics Image-based Rendering Jinxiang Chai.
© 2004 Tomas Akenine-Möller1 Shadow Generation Hardware Vision day at DTU 2004 Tomas Akenine-Möller Lund University.
Computer Graphics Shadows
1 A Hierarchical Shadow Volume Algorithm Timo Aila 1,2 Tomas Akenine-Möller 3 1 Helsinki University of Technology 2 Hybrid Graphics 3 Lund University.
Erdem Alpay Ala Nawaiseh. Why Shadows? Real world has shadows More control of the game’s feel  dramatic effects  spooky effects Without shadows the.
Computer Graphics Mirror and Shadows
Voxelized Shadow Volumes Chris Wyman Department of Computer Science University of Iowa High Performance Graphics 2011.
Ray Tracing and Photon Mapping on GPUs Tim PurcellStanford / NVIDIA.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Computer Graphics 2 Lecture 8: Visibility Benjamin Mora 1 University of Wales Swansea Pr. Min Chen Dr. Benjamin Mora.
MIT EECS 6.837, Durand and Cutler Real-Time Shadows.
Penumbra Deep Shadow Maps Jean-Francois St-Amour, LIGUM – Université de Montreal Eric Paquette, LESIA - ETS Pierre Poulin, LIGUM – Université de Montreal.
1 Shadows (2) ©Anthony Steed Overview n Shadows – Umbra Recap n Penumbra Analytical v. Sampling n Analytical Aspect graphs Discontinuity meshing.
Efficient Rendering of Local Subsurface Scattering Tom Mertens 1, Jan Kautz 2, Philippe Bekaert 1, Frank Van Reeth 1, Hans-Peter Seidel
Real-time Shading with Filtered Importance Sampling Jaroslav Křivánek Czech Technical University in Prague Mark Colbert University of Central Florida.
Perspective Shadow Maps Marc Stamminger REVES/INRIA, Sophia-Antipolis, France now at: Bauhaus-Universität, Weimar, Germany George Drettakis REVES/INRIA,
Computer Graphics 2 Lecture 7: Texture Mapping Benjamin Mora 1 University of Wales Swansea Pr. Min Chen Dr. Benjamin Mora.
Rendering Fake Soft Shadows with Smoothies Eric Chan Massachusetts Institute of Technology.
Hardware-accelerated Rendering of Antialiased Shadows With Shadow Maps Stefan Brabec and Hans-Peter Seidel Max-Planck-Institut für Informatik Saarbrücken,
Efficient Image-Based Methods for Rendering Soft Shadows SIGGRAPH 2001 Maneesh Agrawala Ravi Ramamoorthi Alan Heirich Laurent Moll Pixar Animation Studios.
Sample Based Visibility for Soft Shadows using Alias-free Shadow Maps Erik Sintorn – Ulf Assarsson – uffe.
Real-Time Relief Mapping on Arbitrary Polygonal Surfaces Fabio Policarpo Manuel M. Oliveira Joao L. D. Comba.
MIT EECS 6.837, Durand and Cutler Texture Mapping & Other Fun Stuff.
Real-Time Dynamic Shadow Algorithms Evan Closson CSE 528.
Shadows David Luebke University of Virginia. Shadows An important visual cue, traditionally hard to do in real-time rendering Outline: –Notation –Planar.
1 Shadow Rendering Techniques: Hard and Soft Author: Jamiur Rahman Supervisor: Mushfiqur Rouf Department of CSE BRAC University.
Non-Photorealistic Rendering FORMS. Model dependent Threshold dependent View dependent Outline form of the object Interior form of the object Boundary.
1 Georgia Tech, IIC, GVU, 2006 MAGIC Lab Rossignac Shadows & occlusion  Shadow - occlusion duality  Floor shadows.
09/23/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Reflections Shadows Part 1 Stage 1 is in.
Postmortem: Deferred Shading in Tabula Rasa Rusty Koonce NCsoft September 15, 2008.
Shadow Maps & Smoothies CS 446: Real-Time Rendering & Game Technology David Luebke University of Virginia.
SHADOW CASTER CULLING FOR EFFICIENT SHADOW MAPPING JIŘÍ BITTNER 1 OLIVER MATTAUSCH 2 ARI SILVENNOINEN 3 MICHAEL WIMMER 2 1 CZECH TECHNICAL UNIVERSITY IN.
Shuen-Huei Guan Seminar in CMLab, NTU
Real-Time Soft Shadows with Adaptive Light Source Sampling
Combining Edges and Points for Interactive High-Quality Rendering
Jim X. Chen George Mason University
Alias-Free Shadow Maps
Real-time Rendering Shadow Maps
Conservative Visibility Preprocessing using Extended Projections Frédo Durand, George Drettakis, Joëlle Thollot and Claude Puech iMAGIS-GRAVIR/IMAG-INRIA.
Real-Time Rendering Intro to Shadows
UMBC Graphics for Games
A Hierarchical Shadow Volume Algorithm
RADEON™ 9700 Architecture and 3D Performance
Presentation transcript:

Rendering Fake Soft Shadows with Smoothies Laboratory for Computer Science Massachusetts Institute of Technology Eric Chan Frédo Durand

Goals: Interactive framerates Hardware-accelerated Good image quality Dynamic environments Applications: Game engines (e.g. Doom 3) Interactive walkthroughs Challenge: balancing quality and performance Real-Time Shadows NVIDIA

Two Algorithms from the 1970’s Shadow volumes (Crow 1977) Object-space Accelerated by hardware stencil buffer Large fillrate consumption Shadow maps (Williams 1978) Image-space Fast and simple Supported in hardware Undersampling artifacts NVIDIA

Soft Shadow Volumes Penumbra wedges: Shadow polygons wedges Compute penumbra with pixel shaders Accurate approximation Papers: Assarsson et al. (EGRW 2002, SIGGRAPH 2003, HWWS 2003) But: much higher fillrate needed Assarsson and Akenine-Möller wedge

Soft Shadow Maps Ideas: Filtering Stochastic sampling Image warping Examples: Percentage closer filtering (Reeves et al., SIGGRAPH 1987) Deep shadow maps (Lokovic and Veach, SIGGRAPH 2000) Image-based soft shadows (Agrawala et al., SIGGRAPH 2000) Multisampling hard shadows (Heckbert and Herf, TR 1997) But: need dense sampling to minimize artifacts Agrawala et al.

Soft Shadow Maps (cont.) Approximations Examples: Convolution (Soler and Sillion, SIGGRAPH 1998) Linear lights (Heidrich et al., EGRW 2000) Outer surfaces (Parker et al., TR 1998) Plateaus (Haines, JGT 2001) Penumbra maps (Wyman and Hansen, EGSR 2003) Soler and Sillion

Overview Extend basic shadow map approach Use extra primitives (smoothies) to soften shadows light’s view (blockers only)light’s view (blockers + smoothies)

Fake Soft Shadows Shadows not geometrically correct Shadows appear qualitatively like soft shadows Hard shadowsFake soft shadows

Contributions Smoothie shadow algorithm: Creates soft shadow edges Hides aliasing artifacts Efficient (object / image space) Hardware-accelerated Supports dynamic scenes

1. Create Shadow Map Render blockers into depth map light’s view observer’s view

2. Identify Silhouette Edges Find blockers’ silhouette edges in object space object-space silhouettes observer’s view light’s view

3. Construct Smoothies Blocker only: silhouette vertex silhouette edges blocker exterior

3. Construct Smoothies (cont.) Blocker + smoothies: silhouette vertex silhouette edges smoothie edge smoothie corner t t blocker exterior

3. Construct Smoothies (cont.) Smoothie edges are rectangles in screen space with a fixed width Smoothie corners connect adjacent smoothie edges t t geometryshading

4. Render Smoothies Store depth and alpha values into smoothie buffer Smoothie Buffer (depth)Smoothie Buffer (alpha) light’s viewpoint

5. Compute Shadows Compute intensity using depth comparisons smoothie light source blocker receiver

5. Compute Shadows Image sample behind blocker (intensity = 0) smoothie light source blocker receiver completely in shadow

5. Compute Shadows Image sample behind smoothie (intensity =  ) partially in shadow smoothie light source blocker receiver

5. Compute Shadows Image sample illuminated (intensity = 1) illuminated smoothie light source blocker receiver

Computing Alpha Values Intuition: Alpha defines penumbra shape Should vary with ratio b/r blocker smoothie  receiver light source r b

Computing Alpha Values (cont.) 1. Linearly interpolate alpha 2. Remap alpha at each pixel using ratio b/r:  ’ =  / (1 – b/r) original  remapped  result

Multiple Blockers and Receivers

Multiple Receivers light’s view same thickness Smoothie buffer (linearly-interpolated  ) 1 2

Multiple Receivers (cont.) light’s view Smoothie buffer (remapped  ) different thickness 1 2

Multiple Receivers (cont.) Final image observer’s view different thickness

Multiple Blockers What happens when smoothies overlap? smoothie overlap

Multiple Blockers (cont.) Minimum blending: just keep minimum of alpha values smoothieray tracer

Comparison to Penumbra Maps Penumbra maps (Wyman and Hansen, EGSR 2003) Same idea, different details Smoothie depth: Extra storage + comparison Handles surfaces that act only as receivers cones and sheetsquads blockers onlyblockers + smoothies Geometry: Store depth: Penumbra MapsSmoothies

Results System information: 2.6 GHz Intel Pentium 4 NVIDIA Geforce FX 5800 Ultra

Video

Hiding Aliasing (256 x 256) shadow mapbicubic filter smoothie (t = 0.02)smoothie (t = 0.08) 16 ms129 ms 19 ms

Hiding Aliasing (1024 x 1024) shadow mapbicubic filter smoothie (t = 0.02)smoothie (t = 0.08) 17 ms142 ms 22 ms24 ms

Comparison to Ray Tracer smoothieray tracer increasing size of light source

Video original md2shader demo courtesy of Mark Kilgard

Discussion Shadow maps: Assumes directional light or spotlight Discrete buffer samples Shadow volumes: Assumes blockers are closed triangle meshes Silhouettes identified in object space Smoothies: Rendered from light’s viewpoint Occupy small screen area inexpensive

Summary Contribution: Simple extension to shadow maps Shadows edges are fake, but look like soft shadows Fast, maps well to graphics hardware

Trends in Real-Time Shadows Architectures and algorithms go together Currently, architectures algorithms: Store per-pixel data at full precision But also, algorithms architectures: Shadow maps Shadow volume depth bounds Aggressive early z and stencil reject

Acknowledgments Hardware, drivers, and bug fixes  Mark Kilgard, Cass Everitt, David Kirk, Matt Papakipos (NVIDIA)  Michael Doggett, Evan Hart, James Percy (ATI) Writing and code  Sylvain Lefebvre, George Drettakis, Janet Chen, Bill Mark  Xavier Décoret, Henrik Wann Jensen Funding  ASEE NDSEG Fellowship