Afrigraph 2004 Massive model visualization Tutorial A: Part I Rasterization Based Approaches Andreas Dietrich Computer Graphics Group, Saarland University.

Slides:



Advertisements
Similar presentations
Visible-Surface Detection(identification)
Advertisements

Afrigraph 2004 Tutorial A: Part I Rasterization Based Approaches Andreas Dietrich Computer Graphics Group, Saarland University Saarbrücken, Germany.
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Visibility Culling David Luebke Computer Science Department University of Virginia
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
Two Methods for Fast Ray-Cast Ambient Occlusion Samuli Laine and Tero Karras NVIDIA Research.
Occlusion Culling Fall 2003 Ref: GamasutraGamasutra.
CECS461 Computer Graphics II University of Missouri at Columbia Hidden Surface Removal.
Visibility in Computer Graphics Toni Sellarès Unversitat de Girona
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Hidden Surface Removal 고려대학교 컴퓨터 그래픽스 연구실.
Visibility Culling. Back face culling View-frustrum culling Detail culling Occlusion culling.
Visibility Culling Back face culling View-frustrum culling Detail culling Occlusion culling.
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,
Chapter 6: Vertices to Fragments Part 2 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
1 Dr. Scott Schaefer Hidden Surfaces. 2/62 Hidden Surfaces.
CS 4731: Computer Graphics Lecture 18: Hidden Surface Removal Emmanuel Agu.
Tomas Mőller © 2000 Speeding up your game The scene graph Culling techniques Level-of-detail rendering (LODs) Collision detection Resources and pointers.
Parallel Occlusion Culling for Interactive Walkthrough using Multiple GPUs Naga K Govindaraju, Avneesh Sud, Sun-Eui Yoon, Dinesh Manocha University of.
Hidden Surface Elimination Wen-Chieh (Steve) Lin Institute of Multimedia Engineering I-Chen Lin’ CG Slides, Rich Riesenfeld’s CG Slides, Shirley, Fundamentals.
1 CSCE 441: Computer Graphics Hidden Surface Removal (Cont.) Jinxiang Chai.
1 From-Point Occlusion Culling From-Point Occlusion Culling Chapter 23.
Vertices and Fragments III Mohan Sridharan Based on slides created by Edward Angel 1 CS4395: Computer Graphics.
Spatial Data Structure: Quadtree, Octree,and BSP tree Mengxia Zhu Fall 2007.
Ray Space Factorization for From-Region Visibility Authors: Tommer Leyvand, Olga Sorkine, Daniel Cohen-Or Presenter: Alexandre Mattos.
Computer Graphics Shadows
Hidden Surface Removal
1 Occlusion Culling ©Yiorgos Chrysanthou, , Anthony Steed, 2004.
Roger A. Crawfis CIS 781 The Ohio State University
Shadows Computer Graphics. Shadows Shadows Extended light sources produce penumbras In real-time, we only use point light sources –Extended light sources.
Computer Graphics Mirror and Shadows
The Visibility Problem In many environments, most of the primitives (triangles) are not visible most of the time –Architectural walkthroughs, Urban environments.
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”
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
Week 2 - Friday.  What did we talk about last time?  Graphics rendering pipeline  Geometry Stage.
Computer Graphics 2 Lecture 8: Visibility Benjamin Mora 1 University of Wales Swansea Pr. Min Chen Dr. Benjamin Mora.
Visibility Culling III: Image-Space Occlusion David Luebke Computer Science Department University of Virginia
Real-Time Rendering SPEEDING UP RENDERING Lecture 04 Marina Gavrilova.
Visible-Surface Detection Jehee Lee Seoul National University.
1 Advanced Scene Management. 2 This is a game-type-oriented issue Bounding Volume Hierarchies (BVHs) Binary space partition trees (BSP Trees) “Quake”
Hidden Surface Removal 1.  Suppose that we have the polyhedron which has 3 totally visible surfaces, 4 totally invisible/hidden surfaces, and 1 partially.
Real-time Graphics for VR Chapter 23. What is it about? In this part of the course we will look at how to render images given the constrains of VR: –we.
1Computer Graphics Implementation II Lecture 16 John Shearer Culture Lab – space 2
Implementation II Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
Visible-Surface Detection Methods
Hidden Surface Removal
Implementation II.
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.
Hierarchical Penumbra Casting Samuli Laine Timo Aila Helsinki University of Technology Hybrid Graphics, Ltd.
Recap: General Occlusion Culling l When cells and portals don’t work… –Trees in a forest –A crowded train station l Need general occlusion culling algorithms:
1 3D Hidden Surface Removal 김 성 남. 2 Contents Goal Motivation Approaches - back face detection - depth buffer - A-buffer - Scan line - Depth.
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.
Graphics Interface 2009 The-Kiet Lu Kok-Lim Low Jianmin Zheng 1.
Visibility II CS 446: Real-Time Rendering & Game Technology
Computer Graphics I, Fall 2010 Implementation II.
DPL2/10/2016 CS 551/651: Final Review David Luebke
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
01/28/09Dinesh Manocha, COMP770 Visibility Computations Visible Surface Determination Visibility Culling.
Hierarchical Occlusion Map Zhang et al SIGGRAPH 98.
Computer Graphics Inf4/MSc 1 Computer Graphics Lecture 5 Hidden Surface Removal and Rasterization Taku Komura.
1 Advanced Scene Management. 2 This is a game-type-oriented issue Bounding Volume Hierarchies (BVHs) Binary space partition trees (BSP Trees) “Quake”
Occlusion Culling David Luebke University of Virginia.
Visible-Surface Detection Methods. To identify those parts of a scene that are visible from a chosen viewing position. Surfaces which are obscured by.
7/17/98 HZ Hierarchical Occlusion Maps stolen by Dave Luebke from the Ph.D. Defense presentation of: Hansong Zhang Department of Computer Science UNC-Chapel.
Computer Graphics Implementation II
CSCE 441: Computer Graphics Hidden Surface Removal
Conservative Visibility Preprocessing using Extended Projections Frédo Durand, George Drettakis, Joëlle Thollot and Claude Puech iMAGIS-GRAVIR/IMAG-INRIA.
CS 551 / 645: Introductory Computer Graphics
Presentation transcript:

Afrigraph 2004 Massive model visualization Tutorial A: Part I Rasterization Based Approaches Andreas Dietrich Computer Graphics Group, Saarland University Saarbrücken, Germany

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization2 Overview Part I – Rasterization Based ApproachesPart I – Rasterization Based Approaches –Visibility Culling -Hierarchical Z-Buffer -Hierarchical Occlusion Maps -Prioritized-Layered Projection –Simplification Techniques -LODs / HLODs, -Textured Depth Meshes –Existing Architectures -MMR -Gigawalk -iWalk

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization3 Overview Part I – Rasterization Based ApproachesPart I – Rasterization Based Approaches  Visibility Culling -Hierarchical Z-Buffer -Hierarchical Occlusion Maps -Prioritized-Layered Projection –Simplification Techniques -LODs / HLODs, -Textured Depth Meshes –Existing Architectures -MMR -Gigawalk -iWalk

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization4 Visibility Culling Large scenes often densely occludedLarge scenes often densely occluded –Only a fraction of the total dataset visible  Visibility culling –Try to find the visible set i.e. objects that contribute to the image –Goal: -Rejecting large parts of the scene before actual HSR -Reduce rendering cost to complexity of visible portion -Ideally output sensitive : Running time proportional to visible set size

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization5 Visibility Culling Culling techniquesCulling techniques –View-frustum culling -Reject geometry outside the viewing volume –Back-face culling -Reject geometry facing away from the observer –Occlusion culling -Reject objects occluded by others

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization6 Visibility Culling Occlusion Culling Occlusion cullingOcclusion culling –Not as trivial as view-frustum or back-face culling –Often requires preprocessing –Usually involving some scene hierarchy -Occlusion tests performed top-down –Difference to Hidden surface removal (HSR) -Does not identify exact potion of visible polygons -Tries to identify objects not visible -Often exact HSR follows after culling step –However, distinction not that clear -Some HSR algorithms feature built-in occlusion culling e.g. Ray casting (see Part II)

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization7 Visibility Culling Occlusion Culling Main classification [Cohen-Or 03]Main classification [Cohen-Or 03] –From-point methods -Computation with respect to current viewpoint –Image precision variants: Operate on fragments –Object precision variants: Operate on raw objects –From-region methods -Bulk computations valid for a specific region –Cell-and-portal variants: Exploit scene characteristics –Generic scene variants: Work with arbitrary scenes

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization8 Visibility Culling Occlusion Culling Additional classification criteria [Cohen-Or 03]Additional classification criteria [Cohen-Or 03] –Conservative vs. approximate techniques –Tightness of approximation –All objects vs. subset of occluders –Convex vs. generic occluders –Individual vs. fused occluders –2D vs. 3D –Special hardware requirements –Need of precomputation –Dynamic scenes

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization9 “Hierarchical Z-Buffer visibility” (Greene Sig93)“Hierarchical Z-Buffer visibility” (Greene Sig93) Visibility Culling Hierarchical Z-Buffer

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization10 Organize scene into an octree (a kind of spatial hierarchy)Organize scene into an octree (a kind of spatial hierarchy) Visibility Culling Hierarchical Z-Buffer

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization11 Visibility Culling Hierarchical Z-Buffer HZB algorithm :HZB algorithm : Make use of frame-to-frame coherence: Make use of frame-to-frame coherence: – at start of each frame render the nodes that were visible in previous frame – at start of each frame render the nodes that were visible in previous frame – read the z-buffer and construct the z-pyramid – read the z-buffer and construct the z-pyramid – traverse the octree using the z- pyramid for node occlusion test – traverse the octree using the z- pyramid for node occlusion test

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization12 Visibility Culling Hierarchical Z-Buffer cost of scan-converting the faces of the octree cubes ——Z-pyramidcost of scan-converting the faces of the octree cubes ——Z-pyramid If the nearest Z value of the polygon is farther away than this sample in the Z pyramid, we know immediately that the polygon is hidden.

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization13 Visibility Culling Hierarchical Z-Buffer Hierarchical Z-Buffer (HZB) [Greene 93]Hierarchical Z-Buffer (HZB) [Greene 93] –Exploits object-space coherence: Octree subdivision –Exploits Image-space coherence: Z-pyramid –Exploits Temporal coherence: Frame to frame Octree used forOctree used for –View-frustum culling –Hierarchic top-down rendering / occlusion –Front-back rendering Z-PyramidZ-Pyramid –Use original Z-buffer as finest level –Combine 2x2 samples by choosing farthest Z value

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization14 Hierarchical Occlusion Map (HOM) [Zhang 97]Hierarchical Occlusion Map (HOM) [Zhang 97] Visibility Culling Hierarchical Occlusion Maps View Point Z X Y Depth + Overlap = Occlusion

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization15 Blue parts: occluders Red parts: occludees Visibility Culling Hierarchical Occlusion Maps

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization16 Visibility Culling Hierarchical Occlusion Maps Hierarchical Occlusion Map (HOM) [Zhang 97]Hierarchical Occlusion Map (HOM) [Zhang 97] –Pixels record opacity of screen space regions –Algorithm: 1.Select occluders: E.g. visible objects from previous frame 2.Render occluders and estimate depth Pure white pixels on black background Pure white pixels on black background 3. Building HOM: 4. HOM culling: Traverse the BVHs, do view frustem cull- Traverse the BVHs, do view frustem cull- -ing, then -ing, then (1)using depth estimation buffer to do (1)using depth estimation buffer to do depth comparison, depth comparison, (2)overlap test with HOM (2)overlap test with HOM

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization17 Render occluders and estimate depth:Render occluders and estimate depth: single z-plane: Depth estimation buffer: software buffer conservatively Construction: traverse visible occluders in last frame Visibility Culling Hierarchical Occlusion Maps Constructed at each frame Image space bounding rectangle and farthest depth of bounding volume Update depth of pixel farther than the former depth

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization18 Building HOMBuilding HOM Visibility Culling Hierarchical Occlusion Maps At the finest level it’s just a bit map with – 1 where it is transparent and – 0 where it is opaque (occluded) Higher levels are half the size in each dimension and store gray-scale values Records average opacities for blocks of pixels Represents occlusion at multiple resolutions

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization19 Visibility Culling Hierarchical Occlusion Maps HOM culling: for each occluderHOM culling: for each occluder 1.Find hierarchy level with pixels approximately the same size as screen-space object bounding box 2.Examine each pixel in map overlapping bounding rectangle: If all pixel completely opaque  Objects projection inside occluders  Z-test: -Single Z-plane behind all occluders -Depth estimation buffer (Z-planes for separate screen regions) Otherwise check next level for not completely opaque pixels  Use transparency threshold to terminate recursion  Render object using Z-buffer

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization20 Visibility Culling Hierarchical Occlusion Maps City model with 312,524 polygons. Average speed-up obtained by our visibility culling algorithm is about five times.

COMPUTER GRAPHIK – UNIVERSITÄT DES SAARLANDES Afrigraph 2004State of the Art in Massive Model Visualization21 Visibility Culling Hierarchical Occlusion Maps Compared to HZB:Compared to HZB: HZB: HZB’culling is less conservative. HZB is easier to use temporal coherence for occluder selection because nearest Z values for objects are available in the Z- buffer. Updating the active occluder list is more difficult in HOM since it only have estimated farthest Z values. HOM: There is no need for a Z-buffer The construction of HOM has readily-available hardware support HOM supports conservative early termination in the hierarchical test by using a transparency threshold