Photon Mapping on Programmable Graphics Hardware

Slides:



Advertisements
Similar presentations
Sven Woop Computer Graphics Lab Saarland University
Advertisements

Photon Mapping on Programmable Graphics Hardware Timothy J. Purcell Mike Cammarano Pat Hanrahan Stanford University Craig Donner Henrik Wann Jensen University.
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Computer graphics & visualization Global Illumination Effects.
CAP4730: Computational Structures in Computer Graphics Visible Surface Determination.
ATEC Procedural Animation Introduction to Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa.
Paper Presentation - An Efficient GPU-based Approach for Interactive Global Illumination- Rui Wang, Rui Wang, Kun Zhou, Minghao Pan, Hujun Bao Presenter.
Efficient Simulation of Light Transport in Scenes with Participating Media using Photon Maps Paper by Henrik Wann Jensen, Per H. Christensen Presented.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lectures 18, 19: Monte Carlo Integration Ravi Ramamoorthi Acknowledgements.
CSCE 641: Photon Mapping Jinxiang Chai. Outline Rendering equation Photon mapping.
Photon Tracing with Arbitrary Materials Patrick Yau.
Shadow Silhouette Maps Pradeep Sen, Mike Cammarano, Pat Hanrahan Stanford University.
3D Graphics Processor Architecture Victor Moya. PhD Project Research on architecture improvements for future Graphic Processor Units (GPUs). Research.
Final Gathering on GPU Toshiya Hachisuka University of Tokyo Introduction Producing global illumination image without any noise.
Shadow Algorithms Gerald Matzka Computer Science Seminar.
Sorting and Searching Timothy J. PurcellStanford / NVIDIA Updated Gary J. Katz based on GPUTeraSort (MSR TR )U. of Pennsylvania.
Optimizing Photon Mapping Using Multiple Photon Maps for Irradiance Estimates Bent Dalgaard Larsen
Precomputed Radiance Transfer Harrison McKenzie Chapter.
Time-Dependent Photon Mapping Mike Cammarano Henrik Wann Jensen EGWR ‘02.
Paper by Alexander Keller
Interactive k-D Tree GPU Raytracing Daniel Reiter Horn, Jeremy Sugerman, Mike Houston and Pat Hanrahan.
RAY TRACING WITH DISPERSION CSS552 – Topics in Rendering Winter 2011 Final Project by: Kohei Ueda Shivani Srikanteshwara Mary Ann Chiramattel Kunjachan.
Computer Graphics Shadows
Computer Graphics Mirror and Shadows
Ray Tracing and Photon Mapping on GPUs Tim PurcellStanford / NVIDIA.
Realtime Caustics using Distributed Photon Mapping Johannes Günther Ingo Wald * Philipp Slusallek Computer Graphics Group Saarland University ( * now at.
Today More raytracing stuff –Soft shadows and anti-aliasing More rendering methods –The text book is good on this –I’ll be using images from the CDROM.
Interactive Time-Dependent Tone Mapping Using Programmable Graphics Hardware Nolan GoodnightGreg HumphreysCliff WoolleyRui Wang University of Virginia.
-Global Illumination Techniques
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
Computer graphics & visualization Photon Mapping.
Stream Processing Main References: “Comparing Reyes and OpenGL on a Stream Architecture”, 2002 “Polygon Rendering on a Stream Architecture”, 2000 Department.
Computer Graphics Global Illumination: Photon Mapping, Participating Media Lecture 12 Taku Komura.
Global Illumination with a Virtual Light Field Mel Slater Jesper Mortensen Pankaj Khanna Insu Yu Dept of Computer Science University College London
2 COEN Computer Graphics I Evening’s Goals n Discuss application bottleneck determination n Discuss various optimizations for making programs execute.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
04/30/02(c) 2002 University of Wisconsin Last Time Subdivision techniques for modeling We are now all done with modeling, the standard hardware pipeline.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Monte-Carlo Ray Tracing and
A SEMINAR ON 1 CONTENT 2  The Stream Programming Model  The Stream Programming Model-II  Advantage of Stream Processor  Imagine’s.
Pure Path Tracing: the Good and the Bad Path tracing concentrates on important paths only –Those that hit the eye –Those from bright emitters/reflectors.
02/12/03© 2003 University of Wisconsin Last Time Intro to Monte-Carlo methods Probability.
Where We Stand At this point we know how to: –Convert points from local to window coordinates –Clip polygons and lines to the view volume –Determine which.
In the name of God Computer Graphics. Last Time Some techniques for modeling Today Global illumination and raytracing.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
Global Illumination (3) Photon Mapping (1). Overview Light Transport Notation Path Tracing Photon Mapping –Photon Tracing –The Photon Map.
RENDERING : Global Illumination
Radiance Cache Splatting: A GPU-Friendly Global Illumination Algorithm P. Gautron J. Křivánek K. Bouatouch S. Pattanaik.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
Path/Ray Tracing Examples. Path/Ray Tracing Rendering algorithms that trace photon rays Trace from eye – Where does this photon come from? Trace from.
11/29/01CS 559, Fall 2001 Today Photorealistic rendering Algorithms for producing high-quality images Ways of deciding which algorithm for use.
Fabianowski · DinglianaInteractive Global Photon Mapping1 / 22 Interactive Global Photon Mapping Bartosz Fabianowski · John Dingliana Trinity College Dublin.
COMPUTER GRAPHICS CHAPTER 38 CS 482 – Fall 2017 GRAPHICS HARDWARE
Shading Revisited Some applications are intended to produce pictures that look photorealistic, or close to it The image should look like a photograph A.
Hybrid Ray Tracing and Path Tracing of Bezier Surfaces using a mixed hierarchy Rohit Nigam, P. J. Narayanan CVIT, IIIT Hyderabad, Hyderabad, India.
Welcome to Introduction to Computer Graphics
Graphics Processing Unit
Timothy J. Purcell Stanford / NVIDIA
Jim X. Chen George Mason University
(c) 2002 University of Wisconsin
Path Tracing (some material from University of Wisconsin)
Graphics Processing Unit
Sorting and Searching Tim Purcell NVIDIA.
(c) 2002 University of Wisconsin
Efficient Importance Sampling Techniques for the Photon Map
Progressive Photon Mapping Toshiya Hachisuka Henrik Wann Jensen
Ray Tracing on Programmable Graphics Hardware
CENG 351 Data Management and File Structures
Photon Density Estimation using Multiple Importance Sampling
Presentation transcript:

Photon Mapping on Programmable Graphics Hardware Timothy J. Purcell, Craig Donner, Mike Cammarano, Henrik Wann Jensen, and Path Hanrahan Presented by Jason Stredwick

Photon Mapping Overview Global illumination model Every surface will have an extra texture associated with it, called a photon map Photon mapping is a two stage process Simulating the movement of photons and recording their interactions with each surface During rendering, using the photon density around a point on a surface to determine its radiance All the stages are performed on hardware

Process of Recording Photons Recording photons occurs during the simulation phase A predetermined number of photons are used All photons begin on the light sources with a random direction When released each photon bounces a specified number of times Each bounce is recorded in the photon map

Photon Map Data Structure Original structure was a balance k-d tree k-d trees are not feasible on the GPU due to the need for random access writes Proposed a uniform grid to divide the map Each photon hit has its surface location and cell location recorded

Building the Grid Two methods were proposed Photon cell sorting Pseudo rendering algorithm

Bitonic Merge Sort Uses bitonic merge sort Doesn’t require extra memory Reuses the photon map memory Each step performs n comparisons and swaps Sorting step run time of O(log2n) Binary search is used to locate the first photon for each cell

Stencil Routing The GPU vertex programs provide a special glPoint mechanism for drawing to a location in memory Memory must be allocated for the grid on the card The grid is subdivided into mxm pixels The cell number is computed when the photon hits the surface

Stencil Routing Cont. Using glPointSize set to m, the pixel width of a cell Draw a point at the cell location Using a stencil buffer, the photon is routed to a specific location in the cell The power of a photon is distributed to all the photons in the cell if there is no more room in the cell

Stencil Routing Cont.

Stencil Routing Cont. Disadvantages Advantages Potential for many empty cells Need to read from the texture memory to get photon location and other information Advantages Fast Easy to implement Still faster than the bitonic merge sort

Radiance Estimate Once all the photons have been mapped, it is ready for the rendering phase The photon map is used to estimate the radiance at a surface location kNN-grid algorithm is used to determine the photon density Using statistics, the density and other photon information is converted into a radiance value

kNN Grid Selection

Test Scenes Glass ball Flat metal ring Cornell Box

Bitonic Stencil Routing Software

Results

Conclusions Demonstrated an approach to GPU bound photon mapping Uniform grid based photon map Fast design Approximation for global illumination