Final Gathering on GPU Toshiya Hachisuka University of Tokyo Introduction Producing global illumination image without any noise.

Slides:



Advertisements
Similar presentations
SI31 Advanced Computer Graphics AGR
Advertisements

Exploration of advanced lighting and shading techniques
Parallax-Interpolated Shadow Map Occlusion
Photon Mapping on Programmable Graphics Hardware Timothy J. Purcell Mike Cammarano Pat Hanrahan Stanford University Craig Donner Henrik Wann Jensen University.
Computer graphics & visualization Global Illumination Effects.
Interactive Rendering using the Render Cache Bruce Walter, George Drettakis iMAGIS*-GRAVIR/IMAG-INRIA Steven Parker University of Utah *iMAGIS is a joint.
Chunhui Yao 1 Bin Wang 1 Bin Chan 2 Junhai Yong 1 Jean-Claude Paul 3,1 1 Tsinghua University, China 2 The University of Hong Kong, China 3 INRIA, France.
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
ATEC Procedural Animation Introduction to Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa.
December 5, 2013Computer Vision Lecture 20: Hidden Markov Models/Depth 1 Stereo Vision Due to the limited resolution of images, increasing the baseline.
Paper Presentation - An Efficient GPU-based Approach for Interactive Global Illumination- Rui Wang, Rui Wang, Kun Zhou, Minghao Pan, Hujun Bao Presenter.
Real-Time Rendering Paper Presentation Imperfect Shadow Maps for Efficient Computation of Indirect Illumination T. Ritschel T. Grosch M. H. Kim H.-P. Seidel.
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
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.
3D Graphics Processor Architecture Victor Moya. PhD Project Research on architecture improvements for future Graphic Processor Units (GPUs). Research.
Everything on Global Illumination Xavier Granier - IMAGER/UBC.
Global Illumination May 7, Global Effects translucent surface shadow multiple reflection.
GPUGI: Global Illumination Effects on the GPU
CSCE 641 Computer Graphics: Radiosity Jinxiang Chai.
Paper by Alexander Keller
CSCE 641 Computer Graphics: Radiosity Jinxiang Chai.
RAY TRACING WITH DISPERSION CSS552 – Topics in Rendering Winter 2011 Final Project by: Kohei Ueda Shivani Srikanteshwara Mary Ann Chiramattel Kunjachan.
Ray Tracing and Photon Mapping on GPUs Tim PurcellStanford / NVIDIA.
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.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
-Global Illumination Techniques
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
Advanced Computer Graphics Depth & Stencil Buffers / Rendering to Textures CO2409 Computer Graphics Week 19.
CS 638, Fall 2001 Today Project Stage 0.5 Environment mapping Light Mapping.
Photon Mapping on Programmable Graphics Hardware
December 4, 2014Computer Vision Lecture 22: Depth 1 Stereo Vision Comparing the similar triangles PMC l and p l LC l, we get: Similarly, for PNC r and.
Image-based Rendering. © 2002 James K. Hahn2 Image-based Rendering Usually based on 2-D imagesUsually based on 2-D images Pre-calculationPre-calculation.
Computer graphics & visualization Photon Mapping.
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
Computer Graphics The Rendering Pipeline - Review CO2409 Computer Graphics Week 15.
1 Photon-driven Irradiance Cache J. BrouillatP. GautronK. Bouatouch INRIA RennesUniversity of Rennes1.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Hybrid Algorithms K. H. Ko School of Mechatronics Gwangju Institute.
Parallel Ray Tracer Computer Systems Lab Presentation Stuart Maier.
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.
Computer Graphics II University of Illinois at Chicago Volume Rendering Presentation for Computer Graphics II Prof. Andy Johnson By Raj Vikram Singh.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
CS 325 Introduction to Computer Graphics 03 / 29 / 2010 Instructor: Michael Eckmann.
1 Temporal Radiance Caching P. Gautron K. Bouatouch S. Pattanaik.
Global Illumination. Local Illumination  the GPU pipeline is designed for local illumination  only the surface data at the visible point is needed to.
On robust Monte Carlo algorithms for multi-pass global illumination Frank Suykens – De Laet 17 September 2002.
Monte-Carlo Ray Tracing and
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.
Motivation Properties of real data sets Surface like structures
02/12/03© 2003 University of Wisconsin Last Time Intro to Monte-Carlo methods Probability.
Single Pass Point Rendering and Transparent Shading Paper by Yanci Zhang and Renato Pajarola Presentation by Harmen de Weerd and Hedde Bosman.
Real-Time Relief Mapping on Arbitrary Polygonal Surfaces Fabio Policarpo Manuel M. Oliveira Joao L. D. Comba.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Stochastic Path Tracing Algorithms K. H. Ko School of Mechatronics Gwangju.
Fast Global Illumination Including Specular Effects Xavier Granier 1 George Drettakis 1 Bruce J. Walter 2 1 iMAGIS -GRAVIR/IMAG-INRIA iMAGIS is a joint.
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.
Graphics Lecture 14: Slide 1 Interactive Computer Graphics Lecture 14: Radiosity - Computational Issues.
Light Animation with Precomputed Light Paths on the GPU László Szécsi, TU Budapest László Szirmay-Kalos, TU Budapest Mateu Sbert, U of Girona.
Understanding Theory and application of 3D
(c) 2002 University of Wisconsin
CSCE 441 Computer Graphics: Radiosity
(c) 2002 University of Wisconsin
Progressive Photon Mapping Toshiya Hachisuka Henrik Wann Jensen
CS5500 Computer Graphics May 29, 2006
Photon Density Estimation using Multiple Importance Sampling
Presentation transcript:

Final Gathering on GPU Toshiya Hachisuka University of Tokyo Introduction Producing global illumination image without any noise is still difficult because it requires a large number of samplings. Some approaches, such as Photon Mapping [Jensen 1996], can render noiseless image but often results in biased image. To produce high quality image, most of current global illumination renderer uses additional process called “Final Gathering”. Final Gathering uses rough global illumination solution such as Photon Map or Radiosity, and gathers this data by casting rays to obtain definitive incident radiance distribution. Since Final Gathering requires a large number of rays for producing noise-free result, it is very costly to process all visible pixels. Irradiance Gradients [Wald and Heckbert 1992] can reduce number of processing pixels by interpolation, but its behavior is difficult to control. Instead of reducing number of processing pixels by interpolation, I propose an accelerated method of the process itself by using a common graphics hardware. Two-Pass Method Final Gathering Proposed Method Ray Cast by Parallel Projection Result Conclusion Most of existing global illumination renderer implements two-pass method. The first pass is making rough global illumination data, and the second pass is actual rendering using this solution. Rough global illumination solution can be obtained by any method that can solve some part (or all) of rendering equation. One of popular and robust method for this first pass is Photon Mapping. Since the resulting data of a first pass itself is complete global illumination solution, one can render a image by directly visualizing this data. However, first pass result is only approximated solution and its quality is not sufficient for a final image, so second pass is usually applied by using first pass result indirectly. Whereas first pass result can be used as a approximated probability density function for Path-tracing, the most popular second pass process is separated indirect illumination computation by Final Gathering. Note that the object in directly visualized image seems like floating from floor due to insufficient accuracy of global illumination solution in Photon Map. To get N times reflected illumination, Final Gathering gathers illumination data which is N-1 times reflected illumination and generates Nth reflected illumination. Final Gathering process is essentially the same for casting a large number rays on upper hemisphere of visible points. It can produce high quality result form rough first pass illumination data by reusing this solution all over the visible pixels. Proposed method uses a randomly sampled global ray direction and regards ray-casting as a multiple parallel projection. By choosing global ray direction, many sampling rays of Final Gathering can be viewed as a number of sets of rays with same direction and different origin. Rather than using ray casting, using parallel projection is suitable for a common graphics hardware based on Z buffering algorithm. Multiple parallel projections are effectively done by Depth Peeling using programmable shader. Since proposed method simply samples all visible points, it doesn't have non-intuitive parameters like Irradiance Cache. Current performance of proposed method is comparable to efficient implementation of Final Gathering with Irradiance Cache on CPU. However, by considering growing speed of GPU, this method has potential to outperform the CPU based methods. However, Final Gathering typically needs thousands of samplings to achieve noiseless result. For this reason, Final Gathering casts many more rays compared to other rendering process (i.e. photon tracing) using ray-casting and it often becomes a bottleneck of all rendering process. Irradiance Cache applies Final Gathering to sparsely sampled pixels and interpolates this data to produce entire illumination data. Irradiance Cache can greatly reduce number of sampling rays, but its parameter is not intuitive (e.g. a maximum valid distance : current cache points can be used for interpolation within this distance), so it is difficult to control rendering time and the error due to interpolation. Final Gathering casts many rays on upper hemisphere to gather the illumination data obtained by fist pass. Final Gathering can be done by iterate this process for random global ray direction. Note that Final Gathering process casts many more number of rays compared to other process. Whereas original Final Gathering processes a set of rays with same origin, the proposed method uses a set of rays with same direction (i.e. global ray direction). Thinking from this viewpoint, ray casting is the same as sampling a point on the nearest depth layer from the ray origin along global ray direction. Each depth layer can be extracted by using inverse of Depth Peeling [Everitt 2001]. Proposed method uses inverse of Depth Peeling which stacks each depth layer, whereas original process strips away each depth layer. Sampling point along ray direction on depth layer is projected to screen space pixel during successive pass. If sampling point on depth layer is behind a ray origin, it is culled by a KILL operation. Since common graphics hardware is based on Z buffer algorithm, parallel projection in Depth Peeling is straightforward process and it can be computed quite efficiently. Although Ray tracing on GPU can be used to cast these rays, its performance is not sufficient for per-pixel Final Gathering. Inverse process of Depth Peeling I implemented global illumination renderer using the proposed method using DirectX 9.0 on WindowsXP. These images were rendered by this program on Pentium4 2.8GHz and Radeon 9700 Pro (Video memory is 128MB). Note that in spite of processing all pixels, rendering time is still in practical range. Performance of sample application using proposed method Final Gathering can be effectively done by using multiple parallel projection on GPU. Visual quality is nearly equivalent of per-pixel Final Gathering by ray casing. Current performance is comparable to interpolation method (e.g. Irradiance Cache) but it doesn’t have non-intuitive parameters like maximum distance of Irradiance Cache. Since proposed method is per-pixel method, it can be used to deal with any set of points including ray-traced pixels for image rendering, vertex data for pre-computed radiance transfer, textures for light maps. Jensen, H. W Global illumination using photon maps. Rendering Techniques ’96 (Proceedings of the Seventh EurographicsWorkshop on Rendering), pages 21–30. Everitt, C Interactive order-independent transparency. Technical report, NVIDIA Corporation. Szirmay-Kalos, L Global Ray-bundle Tracing. Technical Report/TR Ward, G. and Heckbert, P Irradiance gradients. Eurographics Rendering Workshop 92, Reference Demo application is available at Set of rays in proposed method Set of rays in original Final Gathering Same color rays are in same set of rays. Layer 0Layer 1Layer 2Layer 3 Global ray direction Near Far Successive Pass Global ray direction Sampling point Each sampling points takes nearest depth layer Photon Tracing [rays] Ray Tracing from Camera [rays] Final Gathering (1024 samples) [rays] Cornell Box (512×512, 500k photons)607,002262,144268,435,456 Buddha (512×512, 800k photons)29,886,408323,212101,261,312 Teapot (512×512, 300k photons)368,793379,452253,227,008 Theoretical ray number of typical scenes Conceptual diagram of proposed method Ray distribution of Final Gathering Cornell BoxBuddhaTeapot Total [sec] Final Gathering only [sec] Average number of Depth Peeling iteration Stanford's (512×512, 1024samples) Global illumination test (512×512, 2048samples) Global illumination test Stanford’s Photon Map (first pass solution) is directly visualized by radiance estimation Photon Map (first pass solution) is indirectly used by Final Gathering (second pass)