Frédo Durand, George Drettakis, Joëlle Thollot and Claude Puech

Similar documents
Some Thoughts on Visibility

Conservative Visibility Preprocessing using Extended Projections

Real-Time Rendering (Echtzeitgraphik) Dr. Michael Wimmer

Visibility Preprocessing with Occluder Fusion for Urban Walkthroughs

Conservative Visibility Preprocessing using Extended Projections

Visible Surface Detection. (Chapt. 15 in FVD, Chapt. 13 in Hearn & Baker)

Visibility. Tom Funkhouser COS 526, Fall Slides mostly by Frédo Durand

Goal. Interactive Walkthroughs using Multiple GPUs. Boeing 777. DoubleEagle Tanker Model

A Survey of Visibility for Walkthrough Applications

A Survey of Visibility for Walkthrough Applications

Visibility and Occlusion Culling

Culling. Computer Graphics CSE 167 Lecture 12

Occlusion Culling Using Minimum Occluder Set and Opacity Map

Occlusion Horizons for Driving through Urban Scenery

CS535 Fall Department of Computer Science Purdue University

Speeding up your game

Project Gotham Racing 2 (Xbox) Real-Time Rendering. Microsoft Flighsimulator. Halflife 2

Computing Conservative Multi-Focal Visibility using the z-buffer

LOD and Occlusion Christian Miller CS Fall 2011

Visibility Streaming for Network-based Walkthroughs

Page 1. Area-Subdivision Algorithms z-buffer Algorithm List Priority Algorithms BSP (Binary Space Partitioning Tree) Scan-line Algorithms

Computer Graphics Shadow Algorithms

Motivation. Culling Don t draw what you can t see! What can t we see? Low-level Culling

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Occluder Simplification using Planar Sections

Occluder Shadows for Fast Walkthroughs of Urban Environments

Comparison of hierarchies for occlusion culling based on occlusion queries

Interactive View-Dependent Rendering with Conservative Occlusion Culling in Complex Environments

Hardware-accelerated from-region visibility using a dual ray space

Conservative occlusion culling for urban visualization using a slice-wise data structure

Spatial Data Structures and Acceleration Algorithms

Spatial Data Structures and Speed-Up Techniques. Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology

Visibility Preprocessing for Urban Scenes using Line Space Subdivision

Interactive View-Dependent Rendering with Conservative Occlusion Culling in Complex Environments

Soft Shadows. Michael Schwarz

Fast and Simple Occlusion Culling using Hardware-Based Depth Queries

CSE528 Computer Graphics: Theory, Algorithms, and Applications

Computer Graphics. Shadows

Techniques for an Image Space Occlusion Culling Engine

A million pixels, a million polygons. Which is heavier? François X. Sillion. imagis* Grenoble, France

Hardware-driven visibility culling

CSE328 Fundamentals of Computer Graphics: Concepts, Theory, Algorithms, and Applications

Interactive Visibility Culling in Complex Environments using Occlusion-Switches

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo

Parameter Space Footprints for Online Visibility

A Framework for the Real-Time Walkthrough of Massive Models

Chapter 4. Chapter 4. Computer Graphics 2006/2007 Chapter 4. Introduction to 3D 1

Acknowledgement: Images and many slides from presentations by Mark J. Kilgard and other Nvidia folks, from slides on developer.nvidia.

Efficient Real-Time Rendering of Building Information Models

CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling

MIT EECS 6.837, Teller and Durand 1

Smooth Transitions in Texture-based Simplification

Hidden Surface Removal

CSE 167: Introduction to Computer Graphics Lecture #9: Visibility. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2018

The Graphics Pipeline. Interactive Computer Graphics. The Graphics Pipeline. The Graphics Pipeline. The Graphics Pipeline: Clipping

Wed, October 12, 2011

Interpolation using scanline algorithm

Many rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters.

A Panoramic Walkthrough System with Occlusion Culling

Interactive Ray Tracing: Higher Memory Coherence

Fast Line-of-Sight Computations in Complex Environments

Design of a Walkthrough System for Indoor Environments from Floor Plans

Overview. Pipeline implementation I. Overview. Required Tasks. Preliminaries Clipping. Hidden Surface removal

Visible Zone Maintenance for Real-Time Occlusion Culling

CS 563 Advanced Topics in Computer Graphics Culling and Acceleration Techniques Part 1 by Mark Vessella

Computer Graphics. Bing-Yu Chen National Taiwan University

CSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling

Real-Time Shadows. Computer Graphics. MIT EECS Durand 1

OpenGL-assisted Visibility Queries of Large Polygonal Models

Visibility Culling using Hierarchical Occlusion Maps Hansong Zhang Dinesh Manocha Tom Hudson Kenneth E. Hoff III

S U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T

Determination (Penentuan Permukaan Tampak)

Ray Space Factorization for From-Region Visibility

Inner-cover of Non-convex Shapes

CS 352: Computer Graphics. Hierarchical Graphics, Modeling, And Animation

Software Structures for Virtual Environments

Visibility-Based Prefetching for Interactive Out-Of-Core Rendering

Table of Contents. Questions or problems?

Illumination and Geometry Techniques. Karljohan Lundin Palmerius

Fast Geometric Sound Propagation with Finite-Edge Diffraction

Clipping & Culling. Lecture 11 Spring Trivial Rejection Outcode Clipping Plane-at-a-time Clipping Backface Culling

Efficient Visibility Processing for Projective Texture-mapping

A Vrml97-X3D Extension for Massive Scenery Management in Virtual Worlds

VISIBILITY & CULLING. Don t draw what you can t see. Thomas Larsson, Afshin Ameri DVA338, Spring 2018, MDH

A million pixels, a million polygons: which is heavier?

Visibility Culling Using Hierarchical. Hansong Zhang Dinesh Manocha Tom Hudson Kenny Ho. Department of Computer Science. University of North Carolina

Multiview Reconstruction

DiFi: Distance Fields - Fast Computation Using Graphics Hardware

Shadows. Real-Time Hard Shadows. Collected by Ronen Gvili. Most slides were taken from : Fredu Durand Stefan Brabec

Lecture 11: Ray tracing (cont.)

Efficient Impostor Manipulation for Real-Time Visualization of Urban Scenery

Visible Surface Detection Methods

Spatial Data Structures

Hoops: 3D Curves as Conservative Occluders for Cell-Visibility

Computer Graphics. Lecture 9 Hidden Surface Removal. Taku Komura

Clipping. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

Deferred Splatting. Gaël GUENNEBAUD Loïc BARTHE Mathias PAULIN IRIT UPS CNRS TOULOUSE FRANCE.

REAL TIME VISIBILITY CULLING WITH HARDWARE OCCLUSION QUERIES AND UNIFORM GRIDS. A Thesis. Presented to

Efficient Construction of Visibility Maps using Approximate Occlusion Sweep

CS452/552; EE465/505. Clipping & Scan Conversion

Transcription:

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 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] viewpoint Potentially visible trivially occluded

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

Occlusion culling - Problem 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 portal visible [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 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 occluder occludee 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 cell

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

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 1 group 2 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 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