frédo durand, george drettakis, joëlle thollot and claude

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

Upload: others

Post on 20-Oct-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

iMAGIS-GRAVIR/IMAG-INRIA (Grenoble, France)Laboratory for Computer Science – MIT (USA)

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

iMAGIS-GRAVIR/IMAG-INRIA (Grenoble, France)Laboratory for Computer Science – MIT (USA)

Page 2: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Special thanks • Leo Guibas• Mark de Berg

Page 3: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

Page 4: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

viewpoint

Page 5: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

viewpoint

“trivially”“trivially”occludedoccludedPotentially

visible

Page 6: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occlusion culling - Principle• Quickly reject hidden geometry• Z-buffer for final visibility

viewpoint Z-bufferPotentially

visible

Page 7: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occlusion culling - Problem

object

Page 8: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

• Online point-based / Preprocessing (cells)

Occlusion culling - Classification

[Greene 93, Coorg 96, Zhang 97, Luebke 95, etc.]

[Teller 91, Airey 91, Cohen-Or 98, etc.]

Page 9: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

• Online point-based / Preprocessing (cells)

Occlusion culling - Classification

Page 10: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

• Online point-based / Preprocessing (cells)

• Occluders / Portals

Occlusion culling - Classification

[Greene 93, Coorg 96, Zhang 97, Cohen-Or 98, etc.]

[Teller 91, Airey 91, Luebke 95, etc.]

portaloccluder visiblehidden

Page 11: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

• Online point-based / Preprocessing (cells)

• Occluders / Portals

Occlusion culling - Classification

Page 12: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

• Online point-based / Preprocessing (cells)

• Occluders / Portals

• Object space / Image space

Occlusion culling - Classification

[Teller 91, Airey 91, Coorg 96, Hudson 97, Cohen-Or 98, etc.]

[Greene 93, Zhang 97, etc.]

Page 13: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

• Online point-based / Preprocessing (cells)

• Occluders / Portals

• Object space / Image space

Occlusion culling - Classification

Page 14: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

• Online point-based / Preprocessing (cells)

• Occluders / Portals

• Object space / Image space

Occlusion culling - Classification

Page 15: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

• Occluders / Portals

• Object space / Image space

Page 16: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

• Occluders / Portals

• Object space / Image space

Page 17: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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-spacepoint-based occlusion culling

Page 18: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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 LimComputer Graphics International, Tokyo, 1992]

• Read the updated version of our paperhttp://graphics.lcs.mit.edu/~fredo

Page 19: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

occluder

viewpoint

occludee

Page 20: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

On-line point-based occlusion culling

occludee

occluder

viewpoint

• [Greene et al. 93, Zhang et al. 97]– Projection from a point– Overlap and depth test

Page 21: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Extended projections• Projection from a point volume• Overlap and depth test

occluder

cell

occludee

Page 22: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

occluder

cell

occludee

Page 23: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Extended projections• Conservative

– Underestimate the occluders– Overestimate the occludees

cell

occluder

occludee

Page 24: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Extended projections• Conservative

– Intersection for the occluders

occluder

cell

occludee

Page 25: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Extended projections• Conservative

– Intersection for the occluders– Union for the occludees

occluder

cell

occludee

Page 26: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Extended projections• Conservative

– Underestimate the occluders– Overestimate the occludees

occluder

cell

occludee

Page 27: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occluder fusion• Two occluders, one occludee

B

cell

A

occludee

Page 28: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occluder fusion• Projection of the first occluder

B

cell

A

occludee

Page 29: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occluder fusion• Projection of the second occluder• Aggregation in a pixel-map

B

cell

A

occludee

Page 30: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occluder fusion• Test of the occludee• The occlusion due to

the combinationof A and B is treated

B

cell

A

occludee

Page 31: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

Page 32: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

Page 33: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occludee Projection

cell

occludee

Page 34: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

lines

cell

Page 35: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Convex occluder Projection• Convex cell =>

intersection of views from vertices of the cell• Hardware computation using the stencil buffer• Conservative rasterization

Page 36: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Concave occluder slicing• Intersection

occluder-projection plane

Page 37: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Difficulty of choosing the plane• First possible plane• Fine

occluder

cell

Page 38: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

occluder

cell

Page 39: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

• Heuristic (maximize projected surface)• Works fine for most cases (e.g. city)

Choosing the plane

occluder

cell

Page 40: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Problem of the choice of the plane• Contradictory constraints

group 1

cell

group 2

Page 41: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Solution• Project on plane 1

– Aggregate extended projections

Page 42: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

Page 43: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occlusion sweep• Initial projection plane

Page 44: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occlusion sweep• Re-projection• Projection of new occluders

Page 45: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occlusion sweep• Re-projection• Projection of new occluders

Page 46: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Occlusion sweep• Re-projection• Projection of new occluders

Page 47: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Improved Extended Projection• Detect more occlusion for some configurations• For convex and planar occluders• Do not use unions for occludees

(supporting lines only)

Page 48: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Adaptive preprocessing• If cell has too many visible objects

Page 49: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Adaptive preprocessing• If cell has too many visible objects

then subdivide

Page 50: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

Page 51: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

Page 52: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Video

Page 53: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Video

Page 54: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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

Page 55: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Video

Page 56: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

Video

Page 57: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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 memorypre-fetching (network, disk)

Page 58: Frédo Durand, George Drettakis, Joëlle Thollot and Claude

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