Conservative Visibility Preprocessing using Extended Projections Frédo Durand, George Drettakis, Joëlle Thollot and Claude Puech iMAGIS-GRAVIR/IMAG-INRIA.

Slides:



Advertisements
Similar presentations
Ray Space Factorization for From-Region Visibility Tommer Leyvand Olga Sorkine Daniel Cohen-Or Tel-Aviv University, Israel.
Advertisements

Collisions and Intersections When objects move, test for collision. When projecting surfaces, check for intersections. (Many slides adapted from Amitabh.
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Optimized Stencil Shadow Volumes
Computer Graphics methods
Ray Tracing CMSC 635. Basic idea How many intersections?  Pixels  ~10 3 to ~10 7  Rays per Pixel  1 to ~10  Primitives  ~10 to ~10 7  Every ray.
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.
Introduction to Massive Model Visualization Patrick Cozzi Analytical Graphics, Inc.
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
David Luebke5/11/2015 CS 551 / 645: Introductory Computer Graphics David Luebke
Occlusion Culling Fall 2003 Ref: GamasutraGamasutra.
CAP4730: Computational Structures in Computer Graphics Visible Surface Determination.
CHAPTER 12 Height Maps, Hidden Surface Removal, Clipping and Level of Detail Algorithms © 2008 Cengage Learning EMEA.
High-Quality Parallel Depth-of- Field Using Line Samples Stanley Tzeng, Anjul Patney, Andrew Davidson, Mohamed S. Ebeida, Scott A. Mitchell, John D. Owens.
Visibility Culling using Hierarchical Occlusion Maps Hansong Zhang, Dinesh Manocha, Tom Hudson, Kenneth E. Hoff III Presented by: Chris Wassenius.
Object-Space Visibility Culling Anthony Steed University College London Based upon material presented by Claudio T. Silva at Eurographics 1999 Slides,
Tomas Mőller © 2000 Speeding up your game The scene graph Culling techniques Level-of-detail rendering (LODs) Collision detection Resources and pointers.
CSCE 641 Computer Graphics: Image-based Modeling Jinxiang Chai.
Background Caches for Large Outdoor Scenes Bill Hess.
Optimized Subdivisions for Preprocessed Visibility Oliver Mattausch, Jiří Bittner, Peter Wonka, Michael Wimmer Institute of Computer Graphics and Algorithms.
1 From-Point Occlusion Culling From-Point Occlusion Culling Chapter 23.
Ray Space Factorization for From-Region Visibility Authors: Tommer Leyvand, Olga Sorkine, Daniel Cohen-Or Presenter: Alexandre Mattos.
© 2004 Tomas Akenine-Möller1 Shadow Generation Hardware Vision day at DTU 2004 Tomas Akenine-Möller Lund University.
1 A Hierarchical Shadow Volume Algorithm Timo Aila 1,2 Tomas Akenine-Möller 3 1 Helsinki University of Technology 2 Hybrid Graphics 3 Lund University.
Hidden Surface Removal
1 Occlusion Culling ©Yiorgos Chrysanthou, , Anthony Steed, 2004.
Afrigraph 2004 Massive model visualization Tutorial A: Part I Rasterization Based Approaches Andreas Dietrich Computer Graphics Group, Saarland University.
Shadows Computer Graphics. Shadows Shadows Extended light sources produce penumbras In real-time, we only use point light sources –Extended light sources.
Interactive Virtual Relighting and Remodelling of Real Scenes C. Loscos 1, MC. Frasson 1,2,G. Drettakis 1, B. Walter 1, X. Granier 1, P. Poulin 2 (1) iMAGIS*
The Visibility Problem In many environments, most of the primitives (triangles) are not visible most of the time –Architectural walkthroughs, Urban environments.
10/16/2001CS 638, Fall 2001 Today Visibility –Overview –Cell-to-Cell –Cell-to-Region –Eye-To-Region –Occlusion Culling (maybe)
Culling Techniques “To cull” means “to select from group” In graphics context: do not process data that will not contribute to the final image The “group”
Visibility Culling David Luebke Computer Science Department University of Virginia
Visibility for Computer Graphics Xavier Décoret Master IVR 2005.
Computer Graphics 2 Lecture 8: Visibility Benjamin Mora 1 University of Wales Swansea Pr. Min Chen Dr. Benjamin Mora.
Real-Time Rendering SPEEDING UP RENDERING Lecture 04 Marina Gavrilova.
1 Shadows (2) ©Anthony Steed Overview n Shadows – Umbra Recap n Penumbra Analytical v. Sampling n Analytical Aspect graphs Discontinuity meshing.
Collaborative Visual Computing Lab Department of Computer Science University of Cape Town Graphics Topics in VR By Shaun Nirenstein.
2 COEN Computer Graphics I Evening’s Goals n Discuss application bottleneck determination n Discuss various optimizations for making programs execute.
Adaptive Display Algorithmfor Interactive Frame Rates.
Image-Based Rendering of Diffuse, Specular and Glossy Surfaces from a Single Image Samuel Boivin and André Gagalowicz MIRAGES Project.
David Luebke11/26/2015 CS 551 / 645: Introductory Computer Graphics David Luebke
10/07/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Spatial data structures.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Coherent Hierarchical Culling: Hardware Occlusion Queries Made Useful Jiri Bittner 1, Michael Wimmer 1, Harald Piringer 2, Werner Purgathofer 1 1 Vienna.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 7. Speed-up Techniques Presented by SooKyun Kim.
CS123 | INTRODUCTION TO COMPUTER GRAPHICS Andries van Dam © Visible Surface Determination (VSD) To render or not to render, that is the question… 1 of.
Honours Graphics 2008 Session 5. Today’s focus Rasterization Visibility determination Coarse / fine visibility determination.
DPL2/10/2016 CS 551/651: Final Review David Luebke
Real-Time Dynamic Shadow Algorithms Evan Closson CSE 528.
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
Shadows David Luebke University of Virginia. Shadows An important visual cue, traditionally hard to do in real-time rendering Outline: –Notation –Planar.
1 Shadow Rendering Techniques: Hard and Soft Author: Jamiur Rahman Supervisor: Mushfiqur Rouf Department of CSE BRAC University.
Hierarchical Occlusion Map Zhang et al SIGGRAPH 98.
1 Georgia Tech, IIC, GVU, 2006 MAGIC Lab Rossignac Shadows & occlusion  Shadow - occlusion duality  Floor shadows.
Occlusion Culling David Luebke University of Virginia.
SHADOW CASTER CULLING FOR EFFICIENT SHADOW MAPPING JIŘÍ BITTNER 1 OLIVER MATTAUSCH 2 ARI SILVENNOINEN 3 MICHAEL WIMMER 2 1 CZECH TECHNICAL UNIVERSITY IN.
1 Real-Time High-Quality View-dependent Texture Mapping using Per-Pixel Visibility Damien Porquet Jean-Michel Dischler Djamchid Ghazanfarpour MSI Laboratory,
Spring 2006 G5BAGR – Advanced Computer Graphics
Real-Time Soft Shadows with Adaptive Light Source Sampling
Hidden Surface Removal
Visible-Surface Detection Methods
3D Graphics Rendering PPT By Ricardo Veguilla.
Today Visibility Overview Cell-to-Cell Cell-to-Region Eye-To-Region
CSCE 441: Computer Graphics Hidden Surface Removal
Visibility Computations
A Hierarchical Shadow Volume Algorithm
CS 551 / 645: Introductory Computer Graphics
Introduction to Computer Graphics with WebGL
Hidden Surface Removal
Presentation transcript:

Conservative Visibility Preprocessing using Extended Projections Frédo Durand, George Drettakis, Joëlle Thollot and Claude Puech iMAGIS-GRAVIR/IMAG-INRIA (Grenoble, France) Laboratory for Computer Science – MIT (USA)

Special thanks Leo Guibas Mark de Berg

Introduction Walkthrough of large models Acceleration Simulators, games, CAD/CAM, urban planning Millions of polygons Not real-time with current graphics hardware Acceleration Geometric Levels of Detail (LOD) Image-based simplification (impostors) View Frustum culling Occlusion-culling

Occlusion culling - Principle Quickly reject hidden geometry [Jones 71, Clark 1976] viewpoint

Occlusion culling - Principle Quickly reject hidden geometry [Jones 71, Clark 1976] “trivially” occluded Potentially visible viewpoint

Occlusion culling - Principle Quickly reject hidden geometry Z-buffer for final visibility Potentially visible Z-buffer viewpoint

Occlusion culling - Problem How can we detect the “trivially” occluded objects? object

Occlusion culling - Classification Online point-based / Preprocessing (cells) [Greene 93, Coorg 96, Zhang 97, Luebke 95, etc.] [Teller 91, Airey 91, Cohen-Or 98, etc.]

Occlusion culling - Classification Online point-based / Preprocessing (cells)

Occlusion culling - Classification Online point-based / Preprocessing (cells) Occluders / Portals occluder hidden visible portal [Greene 93, Coorg 96, Zhang 97, Cohen-Or 98, etc.] [Teller 91, Airey 91, Luebke 95, etc.]

Occlusion culling - Classification Online point-based / Preprocessing (cells) Occluders / Portals

Occlusion culling - Classification Online point-based / Preprocessing (cells) Occluders / Portals Object space / Image space [Teller 91, Airey 91, Coorg 96, Hudson 97, Cohen-Or 98, etc.] [Greene 93, Zhang 97, etc.]

Occlusion culling - Classification Online point-based / Preprocessing (cells) Occluders / Portals Object space / Image space

Occlusion culling - Classification Online point-based / Preprocessing (cells) Occluders / Portals Object space / Image space

Occlusion culling - Classification Online point-based / Preprocessing (cells) Occluders / Portals Object space / Image space

Occlusion culling - Classification Online point-based / Preprocessing (cells) Occluders / Portals Object space / Image space

Our approach Visibility preprocess Conservative computation Objects invisible from a volumetric cell Conservative computation Do not declare a visible object hidden Occluder fusion Occlusion by multiple rather than single occluder(s) Extension of image-space point-based occlusion culling

Very related work - Fuzzy visibility Similar initial idea as ours Unfortunately unknown to us for final version [Toward a Fuzzy Hidden Surface Algorithm. Hong Lip Lim Computer Graphics International, Tokyo, 1992] Read the updated version of our paper http://graphics.lcs.mit.edu/~fredo

On-line point-based occlusion culling [Greene et al. 93, Zhang et al. 97] occludee occluder viewpoint

On-line point-based occlusion culling [Greene et al. 93, Zhang et al. 97] Projection from a point Overlap and depth test occludee occluder viewpoint

Extended projections Projection from a point volume Overlap and depth test occludee occluder cell

Extended projections Projection from a point volume Overlap and depth test Fixed plane 3D position Will be discussed occludee occluder cell

Extended projections Conservative Underestimate the occluders Overestimate the occludees occludee occluder cell

Extended projections Conservative Intersection for the occluders occludee occluder cell

Extended projections Conservative Intersection for the occluders Union for the occludees occludee occluder cell

Extended projections Conservative Underestimate the occluders Overestimate the occludees occludee occluder cell

Occluder fusion Two occluders, one occludee occludee A B cell

Occluder fusion Projection of the first occluder occludee A B cell

Occluder fusion Projection of the second occluder Aggregation in a pixel-map occludee A B cell

Occluder fusion Test of the occludee The occlusion due to the combination of A and B is treated occludee A B cell

Fuzzy visibility [Lim 1992] Extended projection as a fuzzy analysis Same definition with unions/intersections However, plane at infinity (direction space) Thus works only for infinite umbra Concave mesh projection

Our new method New Projection algorithms Heuristic for choice of projection plane Reprojection Occlusion sweep Improved projection Occlusion culling system

Occludee Projection occludee

Occludee Projection Reduced to two 2D problems Supporting/separating lines

Convex occluder Projection Convex cell => intersection of views from vertices of the cell Hardware computation using the stencil buffer Conservative rasterization

Concave occluder slicing Intersection occluder-projection plane

Difficulty of choosing the plane First possible plane Fine occluder cell

Difficulty of choosing the plane Other possible plane The intersection of the views is null occluder cell

Choosing the plane Heuristic (maximize projected surface) Works fine for most cases (e.g. city) occluder cell

Problem of the choice of the plane Contradictory constraints group 2 group 1 cell

Solution Project on plane 1 Aggregate extended projections

Re-projection Re-project aggregated occlusion map onto plane 2 Convolution [Soler 98]

Occlusion sweep Initial projection plane

Occlusion sweep Re-projection Projection of new occluders

Occlusion sweep Re-projection Projection of new occluders

Occlusion sweep Re-projection Projection of new occluders

Improved Extended Projection Detect more occlusion for some configurations For convex and planar occluders Do not use unions for occludees (supporting lines only)

Adaptive preprocessing If cell has too many visible objects

Adaptive preprocessing If cell has too many visible objects then subdivide

Interactive viewer Potentially Visible Set precomputation Visibility flag in the object hierarchy No cost at runtime Moving objects: motion volume

Results - Single projection plane City scene (6 million polygons) 165 minutes of preprocess (0.81 seconds per cell) 18 times speedup wrt view frustum culling Informal comparison with [Cohen-Or et al. 98] (no occluder fusion, single occluder): 4 times fewer remaining objects 150 times faster

Video

Video

Results – Occlusion sweep Forest scene (7.8 million polygons) 15 plane positions 23 seconds per cell 24 times speedup wrt view frustum culling

Video

Video

Discussion More remaining objects than on-line methods No moving occluders Occluder fusion No cost at display time Prediction capability scenes which do not fit into main memory pre-fetching (network, disk)

Future work Better concave occluder Projection On-demand computation e.g. adaptation of [Lim 1992] On-demand computation Application to global illumination Use with other acceleration methods LOD or image-based acceleration Driven by semi-quantitative visibility Take perceptual masking into account