Holger Dammertz August 10, The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz, Alexander Keller

Similar documents
MSBVH: An Efficient Acceleration Data Structure for Ray Traced Motion Blur

Ray Tracing Acceleration. CS 4620 Lecture 20

Topics. Ray Tracing II. Intersecting transformed objects. Transforming objects

Acceleration Data Structures

Topics. Ray Tracing II. Transforming objects. Intersecting transformed objects

Accelerated Raytracing

Improving Memory Space Efficiency of Kd-tree for Real-time Ray Tracing Byeongjun Choi, Byungjoon Chang, Insung Ihm

INFOGR Computer Graphics. J. Bikker - April-July Lecture 11: Acceleration. Welcome!

CPSC / Sonny Chan - University of Calgary. Collision Detection II

SAH guided spatial split partitioning for fast BVH construction. Per Ganestam and Michael Doggett Lund University

Lecture 2 - Acceleration Structures

Ray Tracing Acceleration. CS 4620 Lecture 22

Homework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments?

Object Partitioning Considered Harmful: Space Subdivision for BVHs

Ray Tracing Acceleration Data Structures

Fast BVH Construction on GPUs

Ray Tracing. Cornell CS4620/5620 Fall 2012 Lecture Kavita Bala 1 (with previous instructors James/Marschner)

Accelerating Geometric Queries. Computer Graphics CMU /15-662, Fall 2016

Computer Graphics Ray Casting. Matthias Teschner

Exploiting Local Orientation Similarity for Efficient Ray Traversal of Hair and Fur

Intersection Acceleration

Anti-aliased and accelerated ray tracing. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

Announcements. Written Assignment2 is out, due March 8 Graded Programming Assignment2 next Tuesday

Computer Graphics. - Spatial Index Structures - Philipp Slusallek

Spatial Data Structures. Steve Rotenberg CSE168: Rendering Algorithms UCSD, Spring 2017

Row Tracing with Hierarchical Occlusion Maps

Ray-Box Culling for Tree Structures

Ray Intersection Acceleration

Acceleration Data Structures for Ray Tracing

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

Bounding Volume Hierarchy Optimization through Agglomerative Treelet Restructuring

EFFICIENT BVH CONSTRUCTION AGGLOMERATIVE CLUSTERING VIA APPROXIMATE. Yan Gu, Yong He, Kayvon Fatahalian, Guy Blelloch Carnegie Mellon University

Ray Tracing. Computer Graphics CMU /15-662, Fall 2016

Accelerated Entry Point Search Algorithm for Real-Time Ray-Tracing

Spatial Data Structures

The Minimal Bounding Volume Hierarchy

Efficient Clustered BVH Update Algorithm for Highly-Dynamic Models. Kirill Garanzha

Spatial Data Structures

improving raytracing speed

Anti-aliased and accelerated ray tracing. University of Texas at Austin CS384G - Computer Graphics

SPATIAL DATA STRUCTURES. Jon McCaffrey CIS 565

Accelerating Ray-Tracing

Ray Tracing with Spatial Hierarchies. Jeff Mahovsky & Brian Wyvill CSC 305

SAH guided spatial split partitioning for fast BVH construction

Real Time Ray Tracing

COMP 175: Computer Graphics April 11, 2018

EDAN30 Photorealistic Computer Graphics. Seminar 2, Bounding Volume Hierarchy. Magnus Andersson, PhD student

Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Scene Management. Video Game Technologies 11498: MSc in Computer Science and Engineering 11156: MSc in Game Design and Development

Computer Graphics. Bing-Yu Chen National Taiwan University

CS580: Ray Tracing. Sung-Eui Yoon ( 윤성의 ) Course URL:

Ray Tracing Performance

Specialized Acceleration Structures for Ray-Tracing. Warren Hunt

Soft Shadow Volumes for Ray Tracing with Frustum Shooting

INFOMAGR Advanced Graphics. Jacco Bikker - February April Welcome!

B-KD Trees for Hardware Accelerated Ray Tracing of Dynamic Scenes

Lecture 4 - Real-time Ray Tracing

Computer Graphics. - Ray-Tracing II - Hendrik Lensch. Computer Graphics WS07/08 Ray Tracing II

Universiteit Leiden Computer Science

Occluder Simplification using Planar Sections

CS535 Fall Department of Computer Science Purdue University

Kinetic BV Hierarchies and Collision Detection

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

Bounding Volume Hierarchies

Comparison of hierarchies for occlusion culling based on occlusion queries

Ray Tracing: Intersection

Direct Rendering of Trimmed NURBS Surfaces

On Fast Construction of Spatial Hierarchies for Ray Tracing. Vlastimil Havran Robert Herzog Hans-Peter Seidel

Bounding Volume Hierarchies. CS 6965 Fall 2011

Acceleration Data Structures. Michael Doggett Department of Computer Science Lund university

Last Time: Acceleration Data Structures for Ray Tracing. Schedule. Today. Shadows & Light Sources. Shadows

Spatial Data Structures

Parallel Physically Based Path-tracing and Shading Part 3 of 2. CIS565 Fall 2012 University of Pennsylvania by Yining Karl Li

Acceleration Structure for Animated Scenes. Copyright 2010 by Yong Cao

Using Bounding Volume Hierarchies Efficient Collision Detection for Several Hundreds of Objects

Ray Intersection Acceleration

Lecture 25 of 41. Spatial Sorting: Binary Space Partitioning Quadtrees & Octrees

Grid-based SAH BVH construction on a GPU

GPU-BASED RAY TRACING ALGORITHM USING UNIFORM GRID STRUCTURE

Johannes Hanika September 11, Fixed Point Hardware Ray Tracing

Spatial Data Structures

Half-precision Floating-point Ray Traversal

CS 465 Program 5: Ray II

Ray Casting of Trimmed NURBS Surfaces on the GPU

Two Optimization Methods for Raytracing. W. Sturzlinger and R. F. Tobler

Acceleration of Ray-Casting for CSG scenes

Fast kd-tree Construction for 3D-Rendering Algorithms Like Ray Tracing

Spatial Data Structures

Lecture 11: Ray tracing (cont.)

MSBVH: An Efficient Acceleration Data Structure for Ray Traced Motion Blur

Accelerating Shadow Rays Using Volumetric Occluders and Modified kd-tree Traversal

Spatial Data Structures and Acceleration Algorithms

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

Logistics. CS 586/480 Computer Graphics II. Questions from Last Week? Slide Credits

Dynamic Acceleration Structures for Interactive Ray Tracing

Accelerating Ray Tracing

Questions from Last Week? Extra rays needed for these effects. Shadows Motivation

CS 431/636 Advanced Rendering Techniques

Recall: Inside Triangle Test

CS 4620 Program 4: Ray II

Transcription:

Holger Dammertz August 10, 2008 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz, Alexander Keller

Page 2 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Introduction Disadvantage of Object Partioning using Bounding Volumes Bounding volume does not pack primitives perfectly Primitves are of varying size The result is overlap of tree nodes and children wasting traversal time

Page 2 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Introduction Disadvantage of Object Partioning using Bounding Volumes Bounding volume does not pack primitives perfectly Primitves are of varying size The result is overlap of tree nodes and children wasting traversal time

Page 2 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Introduction Disadvantage of Object Partioning using Bounding Volumes Bounding volume does not pack primitives perfectly Primitves are of varying size The result is overlap of tree nodes and children wasting traversal time Advantage of Bounding Volume Hierachies Easy and fast traversal Memory behaviour deterministic and controllable Very small acceleration structures possible

Page 3 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Splitting Early Split Clipping Approach Presented last year on RT07 Based on surface area of triangles Split each triangle at axis aligned plane Good performance with correct parameters

Page 3 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Splitting Early Split Clipping Approach Presented last year on RT07 Based on surface area of triangles Split each triangle at axis aligned plane Good performance with correct parameters by ingenious - OMPF Forum There is no good global early clipping heuristic. Try presplitting the triangles in Soda Hall - unless you re a magician and just guess the correct splitting threshold, you ll end up with out of memory exception during tree building :D

Page 4 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Hand Tweaking may be difficult Problems of Early Split Clipping Memory consumption unpredictable Clipping against planes may introduce numerical problems May split many triangles without any speed improvement

Page 4 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Hand Tweaking may be difficult Problems of Early Split Clipping Memory consumption unpredictable Clipping against planes may introduce numerical problems May split many triangles without any speed improvement Animations Many different shots Scene complexity may change during a shot

Page 4 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Hand Tweaking may be difficult Problems of Early Split Clipping Memory consumption unpredictable Clipping against planes may introduce numerical problems May split many triangles without any speed improvement Animations Many different shots Scene complexity may change during a shot Advantages of creating smaller triangles Basic principle similar to kd reference duplication Controllable which triangles to split Preprocess before tree construction

Page 5 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Our Approach Preserve advantage of BVH Small memory consumption - split only really bad triangles Numerically robust and consistent Fast Automatic for normal scenes

Page 5 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Our Approach Preserve advantage of BVH Small memory consumption - split only really bad triangles Numerically robust and consistent Fast Automatic for normal scenes Observation Not all large triangles are bad, espacially in architectural scenes Large triangles are often axis aligned and form quads These triangles are no huge problem in SAH based tree construction

Page 6 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Subdivision Reduce overlap Triangle Subdivision at edge midpoint also reduces overlap

Page 6 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Subdivision Reduce overlap Triangle Subdivision at edge midpoint also reduces overlap

Page 6 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Subdivision Reduce overlap Triangle Subdivision at edge midpoint also reduces overlap Edge Volume Heuristic Split a triangle if volume of AABB of a triangle edge exceeds threshold ε v (t). Use midpoint of edge for split A+B 2 is numerically very robust Adjacent triangles sharing an edge are split at the same point Watertight Subdivision: a consistent mesh stays consistent Each triangle is independent

Page 7 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Subdivision Edge AABB Volume Axis aligned edges have no AABB volume Very economic splitting: only very bad triangles are split Choice of Threshold Global Threshold based on full scene AABB volume V ε v (t) := V 2 t Use t = 14 as default value. Over a broad range of scenes a very good default value Less than 1% of reference duplication in already fast scenes

Page 8 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Implementation Details Preprocess Before ray tracing by scene exporter Larger memory consumption Transparent for underlying ray tracer

Page 8 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Implementation Details Preprocess Before ray tracing by scene exporter Larger memory consumption Transparent for underlying ray tracer On demand Compute only bounding boxes prior to tree construction Memory efficient (only replicated indices needed) Transparent for user Pre-Scan is efficient

Page 8 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Implementation Details Preprocess Before ray tracing by scene exporter Larger memory consumption Transparent for underlying ray tracer On demand Compute only bounding boxes prior to tree construction Memory efficient (only replicated indices needed) Transparent for user Pre-Scan is efficient Additional optimization BVH has usually more than one triangle per leaf Remove duplicates

Page 9 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Results - Static Scenes Bunny, Buddha, Dragon... No triangles are split

Page 10 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Results - Static Scenes Space Ship 140 120 # Triangles % Render Time % 100 Percentage 80 60 40 20 0 0 5 10 15 20 Threshold

Page 11 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Results - Static Scenes Rotated Kitchen 150 140 # Triangles % Render Time % 130 120 Percentage 110 100 90 80 70 60 0 5 10 15 20 Threshold

Page 12 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Results - Simple Animation Rotated Sponza - Performance Statistics 7000 6000 Base Threshold 12 Threshold 14 Threshold 16 5000 Frame Time (ms) 4000 3000 2000 1000 0 0 10 20 30 40 50 60 Frame Nr.

Page 13 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Results - Simple Animation Rotated Sponza - Triangle Statistics 120000 115000 Base Threshold 12 Threshold 14 Threshold 16 110000 Number of Triangel References 105000 100000 95000 90000 85000 80000 75000 0 10 20 30 40 50 60 Frame Nr.

Page 14 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Summary Economical heuristic to subdivide triangles Efficiently reduces the overlap of triangles Numerically robust and topology unaware preprocess Simple global threshold Acknowledgements mental images GmbH for support and funding of this research

Page 14 The Edge Volume Heuristic Robust Triangle Subdivision for Improved BVH Performance Holger Dammertz August 10, 2008 Summary Economical heuristic to subdivide triangles Efficiently reduces the overlap of triangles Numerically robust and topology unaware preprocess Simple global threshold Acknowledgements mental images GmbH for support and funding of this research Questions?