Indirect Diffuse and Glossy Illumination on the GPU István Lazányi László Szirmay-Kalos TU Budapest.

Slides:



Advertisements
Similar presentations
Approximate Ray-Tracing on the GPU with Distance Impostors László Szirmay-Kalos Barnabás Aszódi István Lazányi Mátyás Premecz TU Budapest, Hungary.
Advertisements

Computer graphics & visualization Global Illumination Effects.
Spherical Harmonic Lighting of Wavelength-dependent Phenomena Clifford Lindsay, Emmanuel Agu Worcester Polytechnic Institute (USA)
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
Photon Mapping. How did I use it 10 years ago? Why might you want to use it tomorrow?
Real-Time Rendering TEXTURING Lecture 02 Marina Gavrilova.
Many-light methods – Clamping & compensation
Eyes for Relighting Extracting environment maps for use in integrating and relighting scenes (Noshino and Nayar)
Virtual Realism LIGHTING AND SHADING. Lighting & Shading Approximate physical reality Ray tracing: Follow light rays through a scene Accurate, but expensive.
Advanced Computer Graphics
Foundations of Computer Graphics (Spring 2012) CS 184, Lecture 21: Radiometry Many slides courtesy Pat Hanrahan.
Advanced Computer Graphics (Spring 2013) CS 283, Lecture 8: Illumination and Reflection Many slides courtesy.
Subsurface scattering Model of light transport in translucent materials Marble, jade, milk, skin Light penetrates material and exits at different point.
ATEC Procedural Animation Introduction to Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa.
Week 9 - Wednesday.  What did we talk about last time?  Fresnel reflection  Snell's Law  Microgeometry effects  Implementing BRDFs  Image based.
Based on slides created by Edward Angel
Path Differentials for MC Rendering Frank Suykens Department of Computer Science K.U.Leuven, Belgium Dagstuhl 2001: Stochastic methods in Rendering.
WILLIAM MOSS ADVANCED RENDERING COURSE PROJECT DECEMBER 4 TH, 2008 Real-time rendering of water and bubbles.
Real-Time Rendering Paper Presentation Imperfect Shadow Maps for Efficient Computation of Indirect Illumination T. Ritschel T. Grosch M. H. Kim H.-P. Seidel.
University of Texas at Austin CS395T - Advanced Image Synthesis Spring 2006 Don Fussell Previous lecture Reflectance I BRDF, BTDF, BSDF Ideal specular.
CS 325 Introduction to Computer Graphics 04 / 09 / 2010 Instructor: Michael Eckmann.
An Efficient Representation for Irradiance Environment Maps Ravi Ramamoorthi Pat Hanrahan Stanford University.
Photon Tracing with Arbitrary Materials Patrick Yau.
(conventional Cartesian reference system)
Final Gathering on GPU Toshiya Hachisuka University of Tokyo Introduction Producing global illumination image without any noise.
Shadow Algorithms Gerald Matzka Computer Science Seminar.
1 CSCE 641: Computer Graphics Lighting Jinxiang Chai.
Real-Time High Quality Rendering COMS 6160 [Fall 2004], Lecture 4 Shadow and Environment Mapping
GPUGI: Global Illumination Effects on the GPU
Environmental Mapping CS4395: Computer Graphics 1 Mohan Sridharan Based on slides created by Edward Angel.
Shading Surface can either (both) 1.Emit light. E.g. light bult 2.Reflect light. E.g. Mirror.
Computer Graphics Shadows
CSC418 Computer Graphics n Raytracing n Shadows n Global Illumination.
Image Processing.  a typical image is simply a 2D array of color or gray values  i.e., a texture  image processing takes as input an image and outputs.
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
Computer graphics & visualization Ray-Tracing – A Quick review.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Texture Mapping.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
Jonathan M Chye Technical Supervisor : Mr Matthew Bett 2010.
-Global Illumination Techniques
The Fundamentals of Ray-Tracing Szirmay-Kalos László Dept. of Control Engineering and Information Technology Budapest University of Technology
Ray Tracing Chapter CAP4730: Computational Structures in Computer Graphics.
Real-Time Rendering Digital Image Synthesis Yung-Yu Chuang 01/03/2006 with slides by Ravi Ramamoorthi and Robin Green.
Ray Tracing Jian Huang, CS 594, Fall, 2002 This set of slides are used at Ohio State by Prof. Roger Crawfis.
Computer graphics & visualization Photon Mapping.
An Efficient Representation for Irradiance Environment Maps Ravi Ramamoorthi Pat Hanrahan Stanford University SIGGRAPH 2001 Stanford University SIGGRAPH.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
CHAPTER 8 Color and Texture Mapping © 2008 Cengage Learning EMEA.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
1 Temporal Radiance Caching P. Gautron K. Bouatouch S. Pattanaik.
02/2/05© 2005 University of Wisconsin Last Time Reflectance part 1 –Radiometry –Lambertian –Specular.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Stochastic Path Tracing Algorithms K. H. Ko School of Mechatronics Gwangju.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
Caustics Triangles on the GPU Umenhoffer Tamás Gustavo Patow Szirmay-Kalos László.
Ambient Occlusion Patrick Cozzi University of Pennsylvania CIS Fall 2013.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
David Luebke3/12/2016 Advanced Computer Graphics Lecture 3: More Ray Tracing David Luebke
David Luebke3/16/2016 CS 551 / 645: Introductory Computer Graphics David Luebke
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.
Precomputation aided GI on the GPU László Szirmay-Kalos.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
CS552: Computer Graphics Lecture 36: Ray Tracing.
Computer graphics III – Rendering equation and its solution
Robust Diffuse Final Gathering on the GPU
Reflective Shadow Mapping By: Mitchell Allen.
Lighting.
Real-time Rendering Shadow Maps
Game Programming Algorithms and Techniques
Law of Reflection = angle of ____________ is equal to the angle of _______________ Θi = Θr.
Presentation transcript:

Indirect Diffuse and Glossy Illumination on the GPU István Lazányi László Szirmay-Kalos TU Budapest

Environment mapping for ideal reflections [Blinn & Newel, 1976] Environment map = Fast approximation of environmental effects

If the environment is very (or infinitely) far…  skybox Environment mapping for ideal reflections (enlarged) (original)

re-render environment map from the new reference point  If the environment is "close"… performance ?! Environment mapping for ideal reflections

Note: (classic) environment mapping cannot deal with "large" objects [Approximate Ray-Tracing…, Eurographics 2005] ray-traced Environment mapping for ideal reflections  storing depth information in the environment map

Ideal reflection vs. indirect illumination: Adding cosine-weighted contributions: Environment mapping for diffuse & glossy reflections - classical many sampling rays are necessary! = convolution Offline convolution:  preconvolved diffuse/specular map

1.Take an environment map (with depth info. in the alpha channel) where Δω i (i=1..N) corresponds to the texels of the environment map ω i = ? from a point x Environment mapping for diffuse & glossy reflections – our proposal 2. Evaluate the convolution integral on the fly

Environment mapping for diffuse & glossy reflections – our proposal solid angles Δω i can easily be calculated (no information is necessary about the environment! ) For the reference point:

 cosine value is approx. the same as in the reference point Environment mapping for diffuse & glossy reflections – our proposal distance r’ is known  but cosθ’ is unknown For an arbitrary point x : to calculate solid angle Δω i Instead of storing orientation information about the environment, assume that the movement is small

Thus, localization means multiplying solid angle with a factor for each texel  precalculation of the convolution integral is not possible Environment mapping for diffuse & glossy reflections – our proposal How about the bunny …? ?

To allow real-time calculation the environment map is downsampled by averaging neighboring texels. (e.g. 128 x 128  4 x 4) ≈ clustering the texels of the environment into larger area lights Environment mapping for diffuse & glossy reflections – our proposal

Results (Diffuse bunny) classicalour proposal 2x2, 4x4)

Results (Glossy bunny, s=10) classicalour proposal

Implementation float4 Lin = texCUBE(LREnvMap, I) ; float r = texCUBE(LREnvMap, I).a ; float3 L = r * I – pos ; float r’ = length(L); float dw = dw_texel * r 2 / r’ 2 //Illumination formula for N,V,L L = L / |L|; float a = kd * max(dot(N, L), 0) (or texture lookup) return Lin * a * dw;

Question time!