Dual-Paraboloid Shadow Mapping. A paper by Stefan Brabec, Thomas Annen, Hans-Peter Seidel Presented By Patrick Wouterse, Selmar Kok

Similar documents
Shadow Mapping for Hemispherical and Omnidirectional Light Sources

High-quality Shadows with Improved Paraboloid Mapping

Soft Shadow Maps. Soft Shadow Maps for Linear Lights

Rasterization Overview

CS 354R: Computer Game Technology

03 RENDERING PART TWO

Shadow Mapping. Marc Stamminger, University of Erlangen-Nuremberg

Practical Shadow Mapping

A Survey on Methods for Omnidirectional Shadow Rendering

Getting fancy with texture mapping (Part 2) CS559 Spring Apr 2017

Computer Graphics Shadow Algorithms

Real-time Shadow Mapping

The Graphics Pipeline

Computergrafik. Matthias Zwicker. Herbst 2010

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Real-time Shadows in CG

Texture Mapping. Michael Kazhdan ( /467) HB Ch. 14.8,14.9 FvDFH Ch. 16.3, , 16.6

TSBK03 Screen-Space Ambient Occlusion

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

Pipeline Operations. CS 4620 Lecture 10

CS451Real-time Rendering Pipeline

Moving Mobile Graphics Advanced Real-time Shadowing. Marius Bjørge ARM

Direct Rendering of Trimmed NURBS Surfaces

Models and Architectures. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Robust Stencil Shadow Volumes. CEDEC 2001 Tokyo, Japan

CSE528 Computer Graphics: Theory, Algorithms, and Applications

Introduction to Computer Graphics with WebGL

Shadow Techniques. Sim Dietrich NVIDIA Corporation

Models and Architectures

What for? Shadows tell us about the relative locations. Vienna University of Technology 2

Last Time. Why are Shadows Important? Today. Graphics Pipeline. Clipping. Rasterization. Why are Shadows Important?

COMP environment mapping Mar. 12, r = 2n(n v) v

x ~ Hemispheric Lighting

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

3D Graphics and OpenGl. First Steps

For Intuition about Scene Lighting. Today. Limitations of Planar Shadows. Cast Shadows on Planar Surfaces. Shadow/View Duality.

Z-Buffer hold pixel's distance from camera. Z buffer

Exponential Shadow Maps

Pipeline Operations. CS 4620 Lecture 14

Rendering Objects. Need to transform all geometry then

Real - Time Rendering. Graphics pipeline. Michal Červeňanský Juraj Starinský

Shadow Algorithms. CSE 781 Winter Han-Wei Shen

Shadows. COMP 575/770 Spring 2013

Last Time. Reading for Today: Graphics Pipeline. Clipping. Rasterization

3D Rasterization II COS 426

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

Computer Graphics. Lecture 9 Environment mapping, Mirroring

Game Architecture. 2/19/16: Rasterization

CS4620/5620: Lecture 14 Pipeline

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)

Bringing Hollywood to Real Time. Abe Wiley 3D Artist 3-D Application Research Group

CHAPTER 1 Graphics Systems and Models 3

TEXTURE MAPPING. DVA338 Computer Graphics Thomas Larsson, Afshin Ameri

Today. Texture mapping in OpenGL. Texture mapping. Basic shaders for texturing. Today. Computergrafik

Texture. Texture Mapping. Texture Mapping. CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture

CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture

Real Time Reflections Han-Wei Shen

Ambien Occlusion. Lighting: Ambient Light Sources. Lighting: Ambient Light Sources. Summary

CS354R: Computer Game Technology

Computer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping

Screen Space Ambient Occlusion TSBK03: Advanced Game Programming

CSE 167: Lecture #4: Vertex Transformation. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

The Rasterization Pipeline

Computer Graphics with OpenGL ES (J. Han) Chapter VII Rasterizer

Ciril Bohak. - INTRODUCTION TO WEBGL

CS 498 VR. Lecture 18-4/4/18. go.illinois.edu/vrlect18

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Chapter 5. Projections and Rendering

CS Exam 1 Review Problems Fall 2017

Texture mapping. Computer Graphics CSE 167 Lecture 9

Many rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters.

A Novel Multithreaded Rendering System based on a Deferred Approach

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

Fast Non-Linear Projections using Graphics Hardware

Real-Time Rendering (Echtzeitgraphik) Michael Wimmer

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

Einführung in Visual Computing

Point based global illumination is now a standard tool for film quality renderers. Since it started out as a real time technique it is only natural

Rendering Algorithms: Real-time indirect illumination. Spring 2010 Matthias Zwicker

Enabling immersive gaming experiences Intro to Ray Tracing

Real-Time Shadows. Last Time? Today. Why are Shadows Important? Shadows as a Depth Cue. For Intuition about Scene Lighting

Image or Object? Is this real?

Acknowledgement: Images and many slides from presentations by Mark J. Kilgard and other Nvidia folks, from slides on developer.nvidia.

Real-Time Shadows. Computer Graphics. MIT EECS Durand 1

Computer Graphics. Lecture 14 Bump-mapping, Global Illumination (1)

Summed-Area Tables. And Their Application to Dynamic Glossy Environment Reflections Thorsten Scheuermann 3D Application Research Group

Additional Material (electronic only)

CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015


RASTERISED RENDERING

CSC Graphics Programming. Budditha Hettige Department of Statistics and Computer Science

DEFERRED RENDERING STEFAN MÜLLER ARISONA, ETH ZURICH SMA/

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT

EECS 487: Interactive Computer Graphics

Graphics and Interaction Rendering pipeline & object modelling

Visualisatie BMT. Rendering. Arjan Kok

Next-Generation Graphics on Larrabee. Tim Foley Intel Corp

Computer Graphics 1. Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2010

Local Illumination physics. Law of reflection and Snell s law of refraction

3D Rendering Pipeline

Transcription:

A paper by Stefan Brabec, Thomas Annen, Hans-Peter Seidel Presented By Patrick Wouterse, Selmar Kok

Introduction and Background An improved perspective shadow mapping technique Less memory and render passes required Paper was written in 2002

Shadow Mapping Very fast to compute Acceptable quality Requires multiple passes for hemispherical and omnidirectional light sources

Simple Shadow Mapping Most basic form of shadow mapping Draw scene from light s perspective Store depth buffer Compare when drawing shadows

Mapping for hemispherical and omnidirectional lights Spherical mapping Single map, but heavy distortion Blinn/Newell Mapping Different parameterization, but expensive Cube Mapping Six maps, very expensive Dual-Paraboloid Mapping Two maps, little distortion

Similar to traditional shadow mapping Needs only one pass per hemisphere

Analogy: the image obtained by an orthographic camera viewing a perfectly reflecting paraboloid.

Generating the Shadow Map. From 3D to texture coordinates: we need the point P on the paraboloid that reflects a given direction v towards the direction d. v d P

Generating the Shadow Map. From 3D to texture coordinates: we need the point P on the paraboloid that reflects a given direction v towards the direction d. For convenience we use the inverted direction. v d P

Generating the Shadow Map. From 3D to texture coordinates: we need the point P on the paraboloid that reflects a given direction v towards the direction d. For convenience we use the inverted direction. And transform everything to light coordinate space. v P d

Generating the Shadow Map. Using the formula for the paraboloid: Normal vector at P(x, y, z): Halfway vector at P(x, y, z): d v P

Generating the Shadow Map. Halfway vectors for two connected paraboloids h = d 0 + v v z 0 h = d 1 + v v z < 0 where v is the direction from the light to the point in light coordinate space and d 0 = (0, 0, 1) d 1 = (0, 0, -1)

Generating the Shadow Map. To get texture coordinates from halfway vector: Divide x and y by the z-component Map from [-1, 1] to [0, 1] Store distance [0,1] using near and far distances

Shadow Test Do the same calculations for shadow testing Sample correct paraboloid texture using z comparison Compare point depth to stored value

Advantages: What does it offer? Less artifacts due to parabolic map One map covers one hemisphere Easy to implement Low computational cost Easily combined with usual shadow mapping techniques Disadvantages: Still reduced precision around perimeter Fails for very large polygons because of rasterization

Improvements Further improvements have been made: Practical Implementation of Dual Parabloid Shadow Maps B. Osman et al. (2006) Original implementation needs sufficient geometry in both shadow caster and shadow receiver Eliminates need for shadow receivers to be tesselated

Improvements Original DPSM needs tesselation because vertex shader performs linear interpolation Solution suggests sending world-coordinates These interpolate correctly and can be transformed in the pixel shader afterwards

Improvements Variance Shadow Mapping (VSM) can be applied to DPSM to achieve soft shadows Regular method for VSM can be applied, no difference compared to applying VSM to SSM.

Questions