Hierarchical Radiosity with Multiresolution Meshes Andrew J. WillmottCommittee Paul Heckbert David O’Hallaron Steven Seitz Francois Sillion (iMAGIS)

Slides:



Advertisements
Similar presentations
SI31 Advanced Computer Graphics AGR
Advertisements

Surface Simplification Using Quadric Error Metrics Speaker: Fengwei Zhang September
Computer graphics & visualization Global Illumination Effects.
Presented by Konstantinos Georgiadis. Abstract This method extends the Hierarchical Radiosity approach for environments whose geometry and surface attributes.
Radiosity Mel Slater Department of Computer Science University College London
Ray Tracing & Radiosity Dr. Amy H. Zhang. Outline  Ray tracing  Radiosity.
18.1 Si31_2001 SI31 Advanced Computer Graphics AGR Lecture 18 Image-based Rendering Light Maps What We Did Not Cover Learning More...
Radiosity A Fascinating Presentation by Alex Danilevky.
Interreflections and Radiosity : The Forward Problem Lecture #11 Thanks to Kavita Bala, Pat Hanrahan, Doug James, Ledah Casburn.
Final Gathering on GPU Toshiya Hachisuka University of Tokyo Introduction Producing global illumination image without any noise.
Everything on Global Illumination Xavier Granier - IMAGER/UBC.
Global Illumination May 7, Global Effects translucent surface shadow multiple reflection.
1 7M836 Animation & Rendering Global illumination, radiosity Arjan Kok
CSCE 641 Computer Graphics: Radiosity Jinxiang Chai.
Recent Advances in Radiosity Philippe Bekaert Department of Computer Science K.U.Leuven.
The Radiosity Method Donald Fong February 10, 2004.
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.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Stochastic Radiosity K. H. Ko School of Mechatronics Gwangju Institute.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert.
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.
Jonathan M Chye Technical Supervisor : Mr Matthew Bett 2010.
-Global Illumination Techniques
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.
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
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.
Volume radiosity Michal Roušal University of West Bohemia, Plzeň Czech republic.
02/05/03© 2003 University of Wisconsin Last Time Importance Better Form Factors Meshing.
Global Illumination with a Virtual Light Field Mel Slater Jesper Mortensen Pankaj Khanna Insu Yu Dept of Computer Science University College London
Towards a Taxonomy of Global Illumination Algorithms Philip Dutré Program of Computer Graphics Cornell University.
Graphics Lecture 13: Slide 1 Interactive Computer Graphics Lecture 13: Radiosity - Principles.
111/17/ :21 Graphics II Global Rendering and Radiosity Session 9.
DPL11/27/2015 CS 551/651: Radiosity David Luebke
Hierarchical Penumbra Casting Samuli Laine Timo Aila Helsinki University of Technology Hybrid Graphics, Ltd.
CPSC 641 Computer Graphics: Radiosity Jinxiang Chai.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
University of Montreal & iMAGIS A Light Hierarchy for Fast Rendering of Scenes with Many Lights E. Paquette, P. Poulin, and G. Drettakis.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Surface Rendering Methods 고려대학교 컴퓨터 그래픽스 연구실.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Hybrid Algorithms K. H. Ko School of Mechatronics Gwangju Institute.
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.
Local Illumination and Shading
Application: Multiresolution Curves Jyun-Ming Chen Spring 2001.
Real-Time Dynamic Shadow Algorithms Evan Closson CSE 528.
Mesh Resampling Wolfgang Knoll, Reinhard Russ, Cornelia Hasil 1 Institute of Computer Graphics and Algorithms Vienna University of Technology.
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.
Computer Graphics (Fall 2003) COMS 4160, Lecture 20: Radiosity Ravi Ramamoorthi
Controlling Memory Consumption of Hierarchical Radiosity with Clustering iMAGIS -GRAVIR/IMAG-INRIA iMAGIS is a joint project of CNRS/INRIA/UJF/INPG Xavier.
Global Illumination (3) Photon Mapping (1). Overview Light Transport Notation Path Tracing Photon Mapping –Photon Tracing –The Photon Map.
Global Illumination (2) Radiosity (3). Classic Radiosity Algorithm Mesh Surfaces into Elements Compute Form Factors Between Elements Solve Linear System.
02/07/03© 2003 University of Wisconsin Last Time Finite element approach Two-pass approaches.
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,
David Luebke3/12/2016 Advanced Computer Graphics Lecture 3: More Ray Tracing David Luebke
01/27/03© 2002 University of Wisconsin Last Time Radiometry A lot of confusion about Irradiance and BRDFs –Clarrified (I hope) today Radiance.
Graphics Lecture 14: Slide 1 Interactive Computer Graphics Lecture 14: Radiosity - Computational Issues.
Ray Tracing Dr. Scott Schaefer.
CSc4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Radiosity.
CSCE 441 Computer Graphics: Radiosity
Hierarchical Radiosity with Multiresolution Meshes
© 2003 University of Wisconsin
CSc4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Lecture 25 Radiosity.
Radiosity Sung-Eui Yoon (윤성의) CS580: Course URL:
Advanced Computer Graphics: Radiosity
Presentation transcript:

Hierarchical Radiosity with Multiresolution Meshes Andrew J. WillmottCommittee Paul Heckbert David O’Hallaron Steven Seitz Francois Sillion (iMAGIS)

2 Thesis Statement The Domain  Radiosity on scenes with detailed models By using face cluster hierarchies we can  Get sub-linear or constant time complexity  Better approximate detailed model surfaces

3 Route  Global illumination  Radiosity & Hierarchical Radiosity Methods  Problems  Face cluster hierarchies  Face Cluster Radiosity  Results

4 Simple Illumination Solid Colours Direct Illumination

5 Global Illumination + Shadows + Indirect Illumination

6 Reflection Types SpecularDiffuse

7 SpecularDiffuse

8 Radiosity Definition  The calculation of global illumination for scenes with only diffuse surfacesConsequences  Easier to solve than the full equation  Suitable for finite-element methods  The solution produced is view-independent

9 Indirect Illumination Lightscape Technologies

10 View-Independence Quake: ID

11 Finite Elements Discretize scene into n elements, solve for each element

12 Solving for Radiosity  Each element emits radiosity [Watts/sr/m 2 ]  Can write in terms of all other elements: b i =  i  j F ij b j + e i  Gives system of linear equations

13 Early Radiosity Methods Matrix Radiosity [Cohen ‘85]  Initially used standard matrix techniques (Jacobi, Gauss-Seidel)  But this is O(n 2 ) in time and space Progressive Radiosity [Cohen ‘88]  Reorder computation  Repeatedly shoot element with most unshot radiosity: can see results improving  Still O(n 2 ) speed, but O(n) memory

14 Hierarchical Radiosity  [Hanrahan ’91]  Use hierarchical mesh (quadtree) Coarse level: unimportant interactions Fine level: Interactions between close surfaces  O(k 2 + n) time and space complexity k is the number of input polygons n is the number of elements used by the solution  k 2 is a problem for k > 1000 polygons

15 Refinement for Hier. Rad. Root: entire scene High Resolution Input polygons Refinements

16 Hierarchical Radiosity with Volume Clustering Constructs a complete scene hierarchy  [Smits ‘94, Sillion ‘94]  Adds volume clusters above input polygons (octree)  Completes the hierarchy  Algorithm is O(k logk + n)  Klogk is a problem for k > 100,000

17 Volume Clustering Unused refinements Input polygons Leaf elements Used refinements Volume clusters

18 Hier. Radiosity Demo

19 Problems with HRVC  Slow for complex scenes (k >> n) Must push irradiance down to leaves when gathering, pull radiosity up when shooting O(logk), and all input polygons must be touched on each iteration  Approximation Volume clusters approximate a cloud of unconnected polygons Idea: We can do better for connected, largely smooth surfaces

20 My Focus Working with large scanned models  Large enough to make klogk a problem  Observation Most polygons are for high resolution detail Don’t affect radiosity computations much and with Multiresolution Models  Allow you to adjust the resolution of the model at different places on the model

21 Detailed Models 200,000 triangle model. Medium Resolution version(!)

22 Demo of a MR Model

23 Intuition Run radiosity on simplified model Instead of running radiosity on detailed model Apply results to original model

24 Simplification Root High Resolution Input polygons Simplifications

25 Advantages  No manual selection of simplification level  Don’t access each of the k input polygons during each iteration  Don’t store radiosity for each input polygon  Multiresolution models are precalculated Once for each new model acquired Amortized over many scenes and renders

26 Face Clusters  Dual of standard multiresolution model  Group faces rather than vertices  Don’t change geometry of the model

27 Face Cluster Hierarchies  Iteratively merge face clusters  Initial clusters each contain a single polygon  Create links between two child clusters and their union  Repeat until only root cluster left

28 Face Cluster Demo

29 A Face Cluster  An approximately planar region on the mesh  Container for a set of connected faces Oriented bounding box Aggregate area-weighted normal Pointers to the two child clusters that partition it

30 Radiosity with Face Clusters Unused refinements Input polygons Leaf elements Used refinements Volume clusters Face clusters Unused face clusters

31 We use Garland’s Quadric method  Dual of edge-collapse simplification Quadric error term measures distance to best-fit plane of face vertices, rather than distance to face planes of best-fit vertex.  Most important properties Produces clusters that are approximately planar Tight oriented bounding box calculated via Principal Component Analysis Add well-shaped term to get compact clusters Building the Hierarchy

32 Radiator Demo

33 Vector Radiosity Standard radiosity equation is scalar  Applied to face clusters it incorrectly ignores variation in local normals  No obvious way of combining radiosities of two elements with different normalsSolution  Recast radiosity equation in terms of irradiance vector

34 Leaf Elements Scalar Radiosity Vector Radiosity Why Vector Radiosity?

35 Gather in FCR  Gather: process of transferring radiosity between elements  Must be able to calculate Visible Projected Area quickly  Developed methods of bounding VPA without sampling visibility

36 Vector Interpolation  Can get inter-cluster discontinuities, same as with constant radiosity basis function  Can fix by resampling irradiance vector at corners of the cluster, and interpolating  Final pass only

37 Vector Interpolation Same clusters: without & with interpolation

38 Algorithm Summary  Construct face cluster hierarchy file for each new model. klogk (Approx. linear in k)  Create scene from models  Read in scene description, add root face cluster nodes to a volume cluster hierarchy  Run gather/push-pull/refine solver. Sub-linear in k  Propagate radiosity solution to leaves of all models, write to disk. Linear in k Dominant

39 Results: Test Patch Whales Radiance, 378s FCR, 127s RenderPark, 2700s

40 Results: Complexity Tested on several scene resolutions  Museum scene  Medium-high illumination complexity (nighttime, daytime)  6 scanned models, implicit surface podium, displacement-mapped floor  550,000 polygons in maximum scene; lower- resolution ones generated by simplification

41 Results: Solution Time Same scene, progressively more polygons

42 Results: Memory Use Same scene, progressively more polygons

43 Results: Complexity Volume Clustering, 850s Face Cluster Radiosity, 150s

44 Time: 450s secs Results: Large Scene Radiance, Progressive and HRVC would not fit in 1GB 3,350,000 triangles

45 Results: Large Scene

46 Conclusions Face cluster hierarchies are highly effective for use with radiosity  Sub-linear time in the number of input polygons, as opposed to ‘previous best’ of O(klogk)  After a point, solver is constant time  Low memory usage  Extremely detailed scenes

47 Contributions  FCR helps make radiosity practical for general use Runs on a laptop! One of the most complex radiosity scenes simulated  Three essential parts to making it work Use of Face Clusters Vector Radiosity Tight visible area bounds for polygonal clusters  Sped up Garland’s cluster creation algorithm  80,000 lines of code available

48 Future Work  Better visibility sampling in final pass  Extend bounded projected area to higher- order BRDFs (non-diffuse)  Use of irradiance map to represent illumination

49 EXTRAS

50 Face Cluster Creation Modified & Extended Garland’s method  Existing code needed lots of memory  Showed how balance was important to clustering time  Created new, cheaper cost terms  Improved stability and quality of bounding boxes

51 Test Models

52 Clustering Times 150s 1s

53 Integration for GI

54 State of the Art Research  Hierarchical/wavelet radiosity systems High-quality: Lightscape, Lightworks  Progressive radiosity, 1, ,000 polygon scenes  Raytracing post-pass to add specular component, 2-3 hour renders is fine. Virtual worlds  Progressive radiosity, 10,000 polygon scenes  Quick previews, 10 minute final renders.

55 Virtual Memory  Face cluster files are written in breadth-first order, so get good memory locality  Usually only small first section of the face cluster file used, so it’s memory mapped  Progressive Radiosity has good total memory use, but very poor locality. Hierarchical Radiosity thrashes better.

56 Details  Visibility by ray casting, nested grids  Fractional visibility used during simulation

57 Complexity  O(slogs), not O(klogk), where s is the number of face cluster hierarchies.  s << k  Almost always, s << n  Each face cluster hierarchy represents a separate polygon mesh  Corresponds to a connected part of a model surface

58 Vector Radiosity Equations PE

59 The Sky as a Light Source

60 Colour Bleeding

61 A Better Solution  Combine simplification & radiosity algorithms  Use multiresolution hierarchies of the models directly  Adjust resolution on the fly to match that needed by the radiosity algorithm

62 Hierarchical Radiosity Unused refinements Input polygons Leaf elements Used refinements

63 Justification  Simplest representation that captures the appropriate behaviour  Minimises storage for each face cluster node  We combine vectors hierarchically to represent complex radiosity distributions

64 Multiresolution Models  Initially used edge-collapse models directly These contain vertex hierarchies  Switched to using dual of vertex hierarchy algorithm: face cluster hierarchies It’s easier to deal with face hierarchies