Radiosity Mel Slater Department of Computer Science University College London

Slides:



Advertisements
Similar presentations
1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 16 Radiosity - continued.
Advertisements

SI31 Advanced Computer Graphics AGR
Computer graphics & visualization Global Illumination Effects.
The Radiance Equation Mel Slater. Outline Introduction Light Simplifying Assumptions Radiance Reflectance The Radiance Equation Traditional Rendering.
Modeling the Interaction of Light Between Diffuse Surfaces Cindy M. Goral, Keenth E. Torrance, Donald P. Greenberg and Bennett Battaile Presented by: Chris.
Illumination Models Radiosity Chapter 14 Section 14.7 Some of the material in these slides may have been adapted from University of Virginia, MIT, Colby.
Ray Tracing & Radiosity Dr. Amy H. Zhang. Outline  Ray tracing  Radiosity.
Illumination Model & Surface-rendering Method 박 경 와.
Global Illumination: Radiosity
Computer Graphics - Class 10
Radiosity A Fascinating Presentation by Alex Danilevky.
16.1 si31_01 SI31 Advanced Computer Graphics AGR Lecture 16 Radiosity - continued.
Interreflections and Radiosity : The Forward Problem Lecture #11 Thanks to Kavita Bala, Pat Hanrahan, Doug James, Ledah Casburn.
7M836 Animation & Rendering
1 7M836 Animation & Rendering Global illumination, radiosity Arjan Kok
CSCE 641 Computer Graphics: Radiosity Jinxiang Chai.
The Radiosity Method Donald Fong February 10, 2004.
Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 21: Radiosity
Paper by Alexander Keller
CSCE 641 Computer Graphics: Radiosity Jinxiang Chai.
1 Dr. Scott Schaefer Radiosity. 2/38 Radiosity 3/38 Radiosity Physically based model for light interaction View independent lighting Accounts for indirect.
CSCE 441 Computer Graphics: Radiosity Jinxiang Chai.
Computer Graphics (Spring 2008) COMS 4160, Lecture 22: Global Illumination
CSE 872 Dr. Charles B. Owen Advanced Computer Graphics1 Radiosity What we can do with scan line conversion and ray tracing What we can’t do Radiosity.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
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.
Radiosity 김 성 남. Contents Definition/Goal Basic Radiosity Method Progressive Radiosity Method Mesh substructuring Hierarchical Radiosity Ray.
-Global Illumination Techniques
01/29/03© 2003 University of Wisconsin Last Time Radiosity.
CS 376 Introduction to Computer Graphics 04 / 16 / 2007 Instructor: Michael Eckmann.
COLLEGE OF ENGINEERING UNIVERSITY OF PORTO COMPUTER GRAPHICS AND INTERFACES / GRAPHICS SYSTEMS JGB / AAS Global illumination algorithms Graphics.
David Luebke 1 10/12/2015 CS 551/651: Advanced Computer Graphics Advanced Ray Tracing Radiosity.
02/16/05© 2005 University of Wisconsin Last Time Re-using paths –Irradiance Caching –Photon Mapping.
CS447/ Realistic Rendering -- Radiosity Methods-- Introduction to 2D and 3D Computer Graphics.
02/18/05© 2005 University of Wisconsin Last Time Radiosity –Converting the LTE into the radiosity equation –Solving with Gauss-Seidel relaxation –Form.
Rendering Overview CSE 3541 Matt Boggus. Rendering Algorithmically generating a 2D image from 3D models Raster graphics.
Global Illumination with a Virtual Light Field Mel Slater Jesper Mortensen Pankaj Khanna Insu Yu Dept of Computer Science University College London
Graphics Lecture 13: Slide 1 Interactive Computer Graphics Lecture 13: Radiosity - Principles.
Introduction to Radiosity Geometry Group Discussion Session Jiajian (John) Chen 9/10/2007.
111/17/ :21 Graphics II Global Rendering and Radiosity Session 9.
Radisoity Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts Director, Arts Technology Center University of New.
Radiosity Jian Huang, CS594, Fall 2002 This set of slides reference the text book and slides used at Ohio State.
DPL11/27/2015 CS 551/651: Radiosity David Luebke
CPSC 641 Computer Graphics: Radiosity Jinxiang Chai.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Surface Rendering Methods 고려대학교 컴퓨터 그래픽스 연구실.
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.
Radiosity 1. 2 Introduction Ray tracing best with many highly specular surfaces ­Not real scenes Rendering equation describes general shading problem.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Stochastic Path Tracing Algorithms K. H. Ko School of Mechatronics Gwangju.
Illumination and Shading Prof. Lizhuang Ma Shanghai Jiao Tong University.
CS 445 / 645 Introduction to Computer Graphics Lecture 16 Radiosity Radiosity.
Computer Graphics (Fall 2003) COMS 4160, Lecture 20: Radiosity Ravi Ramamoorthi
Render methods. Contents Levels of rendering Wireframe Plain shadow Gouraud Phong Comparison Gouraud-Phong.
Global Illumination (2) Radiosity (3). Classic Radiosity Algorithm Mesh Surfaces into Elements Compute Form Factors Between Elements Solve Linear System.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
Global Illumination (2) Radiosity (2). The Radiosity Equation The "radiosity equation" describes the amount of energy which can be emitted from a surface,
Graphics Lecture 14: Slide 1 Interactive Computer Graphics Lecture 14: Radiosity - Computational Issues.
CS552: Computer Graphics Lecture 33: Illumination and Shading.
Computer Graphics Ken-Yi Lee National Taiwan University (the slides are adapted from Bing-Yi Chen and Yung-Yu Chuang)
Illumination and Shading Prof. Lizhuang Ma Shanghai Jiao Tong University.
CSc4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Radiosity.
Computer Graphics (Spring 2003)
Radiosity Dr. Scott Schaefer.
CSCE 441 Computer Graphics: Radiosity
(c) 2002 University of Wisconsin
© 2003 University of Wisconsin
Problems with Gauss-Seidel
CSc4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Lecture 25 Radiosity.
Illumination and Shading
OPTICS III, IV: Global Illumination
Advanced Computer Graphics: Radiosity
Presentation transcript:

Radiosity Mel Slater Department of Computer Science University College London

The Lab outside my office

The Lab outside my office!

Global Illumination Approaches (a) Point light source (ray tracing), global illumination for specular surfaces. (+ textures) (b) global illumination diffuse surfaces (radiosity)... (c) … showing colour bleeding (+ textures) Watt A. Policarpo F. (1998) "The Computer Image" ACM Press/Addison-Wesley

Outline Radiosity Equations Form-factors and their computation Progressive Refinement Meshing

Radiosity Measure It is the name of a measure of light energy......and an algorithm: –Radiant energy (flux) = energy flow per unit time across a surface (watts) –Radiosity = flux per unit area (a derivative of flux with respect to area) radiated from a surface. –These are wavelength-dependent quantities.

Types of Surface Reflectance Specular-specular (ray tracing) Diffuse-diffuse (radiosity) Specular-diffuse (Monte Carlo) Diffuse-specular (Monte Carlo)

Radiosity Models lighting in scenes for diffusely reflecting surfaces only. Assume polygonal scene –polygons divided into n small ‘patches’ –patch i has area A i –radiosity B i –Emits energy A i *E i –Has surface reflectance p i (diffuse reflection)

Basic Equation Energy (i) = Emitted Energy (i) + Reflected Energy (i) i = 1,2,…,n Reflected Energy(i) = p i * (Total Energy in from Environment) Total Energy In (i) = Sum of proportions of energy from all other objects that reach i F ji = proportion of energy from j that reaches i per unit area of j (form-factor)

The Radiosity Equation Simplification: since

Solution of Equation The B i are unknown Assume all else is known –false assumption for form-factors! Then can be rewritten as system of n linear equations in n unknowns. Hence patches can be rendered –ideally with smooth shading. One set of eqns for each wavelength!

The Radiosity Equation where and

Form-factors F dA i j  i cos  j  r = Differential Form-factor Patch i to patch j

Analytic Form Factors From a differential to a patch From patch to patch this follows. In practice form factors cannot be derived analytically! Must also take into account visibility between patches!

Form-Factor Computation Nusselt Analog Proportion of projected area on circular base = F dAiAj Note - all patches with the same projected area have same form-factor.

Hemi-cube Approximation Start with patch i Place a hemi-cube on its centre. Project all other patches onto this hemi-cube. The hemi-cube is ‘pixelised’, with a pre-computed for each grid and stored in a look-up table Use z-buffer for each face - storing which patches remain visible.

Delta Form-Factors Consider (eg) the top face. The exact form factor between a ‘pixel’ to the origin can be derived analytically. Same is true for all such pixels. The form-factor is approximated by sum of all delta form-factors of pixels covered by j.

Delta Form-Factors x y r y x jj ii

Problems with Hemi-Cube Crude sampling method –more ideal would be a uniform subdivision of the hemisphere around a patch centre more computationally intensive (has been tried). Leads to aliasing - depending on size of ‘pixels’. Gives form-factors (and hence radiosities) at patch centers - not ideal for smooth shading.

Use Ray Casting source receiver Take a sample of n points on a source patch. Trace rays to a vertex on receiver patch. Sum the contributions of all visible rays.

Advantages of Ray Casting Can easily obtain the form-factors and radiosities at the vertices (smooth shading) Can vary the sampling scheme Visibility naturally taken into account. See notes for the derivation and nature of the approximation.

Matrix Solution Impractical Have been assuming the full matrix solution - impractical! Suppose there are 10,000 polygons. –Each divided into 10 patches (say). –n = 100,000 –n 2 = 10,000,000,000 –Each form factor 4 bytes (at least) –40,000,000,000 bytes = 40Gb for the matrix.

Progressive Refinement (PR) Solve the equation row by row, without ever storing the full matrix. Consider again: A single term determines influence of j on i.

Progressive Refinement... Using and swapping i with j: For all patches j:

Shooting We ‘shoot’ light out from patch i, allowing it to make a contribution to all other patches j –adjusting the radiosities of each of these other patches. Note that the form-factors needed (F ij ) are all from the ith row of the matrix - e.g., one hemicube.

for each iteration { sort in descending order of B i  B i ; for each patch i { /*in the descending order*/ compute the form factors F ij using a hemi-cube at i; for each patch j  i {  Rad = p j *  B i * F i j * (A i /A j ) ;  B j =  B j +  Rad; B j = B j +  Rad; }  B i = 0; } /*render scene here if desired*/ }/*until convergence of the B i */ B i,  B i = 0 for all non-light sources B i,  B i = E i for sources. unshot radiosity  B i

Ambient Term in PR Initially images are very dark due to large amount of un-shot energy Un-shot energy is approximated and used in an ambient term Purely for display, does not contribute to the final solution

Ambient Term Average un-shot energy: Average reflectance: Take account for infinite inter-reflections:

Ambient Term The ambient term is computed as: For the display adjust the radiosities: As the accuracy solution improves with each iteration, the ambient will decrease and tend to zero

Meshing Choosing a mesh for the patches is the most problematic aspect of radiosity. Too coarse, and sharp gradients (shadows) are missed, and the effects are blocky. Too fine - increases time/space and oversamples for relatively low gradients. Uniform meshing is simplest, suffers from above.

Adaptive Meshing Only the receivers of light need to be finely subdivided –and only where there is a sharp radiosity gradient. Use an adaptive subdivision scheme: –Subdivide patch into elements –if radiosity for the elements are slowly changing, finish –else subdivide the elements and repeat.

Substructuring Create a coarse patch mesh. Compute radiosity on patch mesh. Find areas of high radiosity gradient. Subdivide patches into elements. Compute radiosity values on elements from the patch radiosity values. Patch boundaries Element boundaries

Substructuring Patch to patch form factor is F iqj = form factor between element q of patch i and j A iq = Area of element q of patch i R = Number of elements for patch i Radiosity of element q of patch i B iq is radiosity of element q of patch i

Substructuring Radiosity is shot only from patches, but is computed at elements. Only NxM form factor computations (instead of MxM) where N is the number of patches and M the number of elements. Although the obtained solution is comparable to a MxM solution.

Meshing: Cornell Box Example using the hemi-cube method. Does not use smooth shading.

Rendering Radiosity is a view-independent solution. Could flat shade each patch with colour depending on radiosity at the center (bad solution!) Instead obtain radiosities at the vertices of the polygons –use Gouraud smooth shading (interpolation) –Available very cheaply on graphics hardware.

Radiosity vs Ray-Tracing In RT rays are send through each image pixel and followed as they reflect off objects in scene –Mostly specular surfaces –View dependent Radiosity is based on exchange of energy between object surfaces –Diffuse surfaces –View independent –Finite elements – discreet representation of scene (mesh)

Resource and Potential Assignment