STBVH: A Spatial-Temporal BVH for Efficient Multi-Segment Motion Blur

Slides:



Advertisements
Similar presentations
Sven Woop Computer Graphics Lab Saarland University
Advertisements

Christian Lauterbach COMP 770, 2/16/2009. Overview  Acceleration structures  Spatial hierarchies  Object hierarchies  Interactive Ray Tracing techniques.
Intersection Testing Chapter 13 Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology.
Collision Detection CSCE /60 What is Collision Detection?  Given two geometric objects, determine if they overlap.  Typically, at least one of.
Collision Detection and Resolution Zhi Yuan Course: Introduction to Game Development 11/28/
Computer graphics & visualization Collisions. computer graphics & visualization Simulation and Animation – SS07 Jens Krüger – Computer Graphics and Visualization.
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.
Two Methods for Fast Ray-Cast Ambient Occlusion Samuli Laine and Tero Karras NVIDIA Research.
RT06 conferenceVlastimil Havran On the Fast Construction of Spatial Hierarchies for Ray Tracing Vlastimil Havran 1,2 Robert Herzog 1 Hans-Peter Seidel.
Paper Presentation - Micropolygon Ray Tracing With Defocus and Motion Blur - Qiming Hou, Hao Qin, Wenyao Li, Baining Guo, Kun Zhou Presenter : Jong Hyeob.
Overview Introduction Variational Interpolation
Experiences with Streaming Construction of SAH KD Trees Stefan Popov, Johannes Günther, Hans-Peter Seidel, Philipp Slusallek.
Afrigraph 2004 Interactive Ray-Tracing of Free-Form Surfaces Carsten Benthin Ingo Wald Philipp Slusallek Computer Graphics Lab Saarland University, Germany.
Fast and Accurate Soft Shadows using a Real-Time Beam Tracer Ravi Ramamoorthi Columbia Vision and Graphics Center Columbia University
Adapted from: CULLIDE: Interactive Collision Detection Between Complex Models in Large Environments using Graphics Hardware Naga K. Govindaraju, Stephane.
Oct 26, Fall 2006IAT 4101 Collision Detection. Oct 26, Fall 2006IAT 4102 Collision Detection  Essential for many games –Shooting –Kicking, punching,
OBBTree: A Hierarchical Structure for Rapid Interference Detection Gottschalk, M. C. Lin and D. ManochaM. C. LinD. Manocha Department of Computer Science,
Oct 3, Fall 2005Game Design1 Collision Detection.
1 Advanced Scene Management System. 2 A tree-based or graph-based representation is good for 3D data management A tree-based or graph-based representation.
Spatio-Temporal Databases. Outline Spatial Databases Temporal Databases Spatio-temporal Databases Multimedia Databases …..
Collision Detection David Johnson Cs6360 – Virtual Reality.
C o n f i d e n t i a l Developed By Nitendra NextHome Subject Name: Data Structure Using C Title: Overview of Data Structure.
Computer Graphics 2 Lecture x: Acceleration Techniques for Ray-Tracing Benjamin Mora 1 University of Wales Swansea Dr. Benjamin Mora.
CSE 381 – Advanced Game Programming Quickhull and GJK.
Shape Analysis and Retrieval Structural Shape Descriptors Notes courtesy of Funk et al., SIGGRAPH 2004.
On a Few Ray Tracing like Algorithms and Structures. -Ravi Prakash Kammaje -Swansea University.
Week 13 - Monday.  What did we talk about last time?  Exam 2!  Before that…  Polygonal techniques ▪ Tessellation and triangulation  Triangle strips,
An Evaluation of Existing BVH Traversal Algorithms for Efficient Multi-Hit Ray Tracing Jefferson Amstutz (SURVICE) Johannes Guenther (Intel) Ingo Wald.
Saarland University, Germany B-KD Trees for Hardware Accelerated Ray Tracing of Dynamic Scenes Sven Woop Gerd Marmitt Philipp Slusallek.
1 1 Exploiting Local Orientation Similarity for Efficient Ray Traversal of Hair and Fur Sven Woop, Carsten Benthin, Ingo Wald, Gregory S. Johnson Intel.
CIS 350 – I Game Programming Instructor: Rolf Lakaemper.
Fast BVH Construction on GPUs (Eurographics 2009) Park, Soonchan KAIST (Korea Advanced Institute of Science and Technology)
Stefan Popov Space Subdivision for BVHs Stefan Popov, Iliyan Georgiev, Rossen Dimov, and Philipp Slusallek Object Partitioning Considered Harmful: Space.
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
Interactive Ray Tracing of Dynamic Scenes Tomáš DAVIDOVIČ Czech Technical University.
Chapter 11 Collision Detection 가상현실 입문 그래픽스 연구실 민성환.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Hybrid Algorithms K. H. Ko School of Mechatronics Gwangju Institute.
Ray Tracing Optimizations
David Luebke 3/5/2016 Advanced Computer Graphics Lecture 4: Faster Ray Tracing David Luebke
Path/Ray Tracing Examples. Path/Ray Tracing Rendering algorithms that trace photon rays Trace from eye – Where does this photon come from? Trace from.
1 The Method of Precomputing Triangle Clusters for Quick BVH Builder and Accelerated Ray Tracing Kirill Garanzha Department of Software for Computers Bauman.
Interactive Rendering of Translucent Deformable Objects Tom Mertens 1, Jan Kautz 2, Philippe Bekaert 1, Hans-Peter Seidel 2, Frank Van Reeth
CIS 681 Distributed Ray Tracing. CIS 681 Anti-Aliasing Graphics as signal processing –Scene description: continuous signal –Sample –digital representation.
1 Geometry for Game. Geometry Geometry –Position / vertex normals / vertex colors / texture coordinates Topology Topology –Primitive »Lines / triangles.
Layout by orngjce223, CC-BY Compact BVH StorageFabianowski ∙ Dingliana Compact BVH Storage for Ray Tracing and Photon Mapping Bartosz Fabianowski ∙ John.
Visibility-Driven View Cell Construction Oliver Mattausch, Jiří Bittner, Michael Wimmer Institute of Computer Graphics and Algorithms Vienna University.
Spatial Data Management
Bounding Volume Hierarchies and Spatial Partitioning
Spatio-Temporal Databases
Hybrid Ray Tracing and Path Tracing of Bezier Surfaces using a mixed hierarchy Rohit Nigam, P. J. Narayanan CVIT, IIIT Hyderabad, Hyderabad, India.
Distributed Ray Tracing
Two-Level Grids for Ray Tracing on GPUs
Bounding Volume Hierarchies and Spatial Partitioning
Real-Time Ray Tracing Stefan Popov.
3D Object Representations
Hybrid Ray Tracing of Massive Models
Parts of these slides are based on
Ray Tracing, Part 1 Dinesh Manocha COMP 575/770.
Accelerated Single Ray Tracing for Wide Vector Units
Globally Optimal Generalized Maximum Multi Clique Problem (GMMCP) using Python code for Pedestrian Object Tracking By Beni Mulyana.
Spatio-Temporal Databases
Distributed Ray Tracing
Computer Animation Algorithms and Techniques
Collision Detection.
Compressed-LEAF bounding volume hierarchies
BVH Student: Jack Chang.
David Johnson Cs6360 – Virtual Reality
Distributed Ray Tracing
Wide BVH traversal with a short stack
GPAT – Chapter 7 Physics.
Presentation transcript:

STBVH: A Spatial-Temporal BVH for Efficient Multi-Segment Motion Blur Presentation Title July 30, 2013 STBVH: A Spatial-Temporal BVH for Efficient Multi-Segment Motion Blur Sven Woop, Attila Áfra, Carsten Benthin Intel Corporation Copyright © 2013 Intel. All rights reserved.

Motion Blur Fast moving geometry gets blurred for long shutter times Often fast moving geometry moves on a straight line (linear motion blur) Sometimes fast curved motion (e.g. rotating wheel, fight scenes, spinning dancer, flying bird, etc.)  Multi Segment Motion Blur required

Multi Segment Motion Blur Represent curved motion as sequence of time steps to be linearly interpolated Typically equidistant time steps and often different number of time steps per geometry x 4 primitive segments t 1 5 time steps

Previous Work Linear Motion BVH using OBB Hyper- trapezoids [Hou et al. 2010] Works well for linear motion but inefficient for curved motion. Multiple Linear Motion BVHs for sufficiently large number of time segments [Embree v2.12.0] High performance but memory consumption can be arbitrarily bad. Sequence of AABBs per BVH node [Grünschloß et al. 2011] One BVH topology for entire motion, calculate segment to interpolate per traversal step, packet techniques have to gather bounds 4D kd-tree [Olsson 2007] Can shrink time range to simplify motion, kd-tree not good at bounding linear motion, no good build algorithm described 4D BVH using 12 fixed slab directions [Glassner 1988] Expensive to traverse (24 distance tests to mostly non- axis aligned planes), fixed directions do not align optimally with motion direction Combining separate renderings for sufficiently many time segments No adaptive noise reduction possible, interactive preview not possible

4D Spatial-Temporal BVH (STBVH) N-ary BVH (4 or 8 wide) [Ernst 2008, Dammertz 2008] SOA layout allows efficient use of SIMD instructions during traversal Stores spatial linear bounds [Qiming Hou et al. 2010] Pair of AABBs that bound the geometry for each time when linearly interpolated to the respective time Efficient support for the common case of linear motion Stores temporal bounds as time range [Olsson 2007, Glassner 1988] Efficient support of curved motion through time range reduction Two node types for improved performance Spatial-temporal nodes (stores linear bounds and time range) Spatial nodes (stores linear bounds only)

STBVH Advantages Efficient handling of different number of time steps per geometry E.g. high temporal resolution possible for main character Large memory savings compared to Embree 2.12.0 implementation Efficient handling of longer animations Renderers with large setup times can render multiple frames with one STBVH Reduced memory consumption in case of unnecessarily high number of time steps For these parts time ranges do not have to get reduced

Temporal Spatial Bounds Example 1 t 1

Temporal Spatial Bounds Example 2 Global linear bounds allow direct interpolation with ray time. t 1

Minimal Traversal Changes Ray/box intersection with box interpolated to ray time Additional check for time bounds in case of spatial-temporal node

Motion Blur Surface Area Heuristic (MBSAH) 𝐶 𝑙𝑒𝑎𝑓 (𝑋)= 𝑋 𝑠 ∙ 𝐶 𝐼 𝐶 𝑠𝑝𝑙𝑖𝑡 (𝑋, 𝑋 0 , 𝑋 1 )= 𝐶 𝑇 +𝑃 𝑋 0 𝑋 ⋅ 𝐶 𝑙𝑒𝑎𝑓 𝑋 0 +𝑃 𝑋 1 𝑋 ⋅ 𝐶 𝑙𝑒𝑎𝑓 𝑋 1 Where X is the set of pairs of primitives and time ranges 𝑋 𝑠 is the sum of the number of primitive segments active in the time range 𝑃 𝑌 𝑋 = 𝑆𝐴 ′ (𝑌) 𝑆𝐴 ′ (𝑋) ⋅ 𝑇(𝑌) 𝑇(𝑋) 𝑇(𝑋) calculates the size of the merged time bounds over X 𝑆𝐴′(𝑋) calculates the surface area of the center time bounds of the linear bounds of X

MBSAH Advantages Handling primitives plus time range Makes time splits of primitives possible Counting primitive segments active in time range Increases cost for geometries with many time steps Splitting time at discrete time boundaries produces optimal SAH Surface area of linear bounds More accurate than previous approaches Up to 10% render performance improvement for some scenes

STBVH Build Top-down construction using MBSAH Build primitive represents primitive for current time range Stores linear bounds and number of active primitive segments Object split Bin build primitives in 3 dimensions using centroid of center time bounds Splits build primitives into two disjoint sets with current time range unchanged Temporal split Splits current time range at center time (adjusted to hit discrete time boundary) Generate build primitives for both time ranges (most primitives valid in both time ranges)

MBSAH: Temporal Split Best x x t t Object split Temporal split Presentation Title July 30, 2013 MBSAH: Temporal Split Best x x t t Object split Temporal split Copyright © 2013 Intel. All rights reserved.

MBSAH: Spatial Split x x Best t t Object split Temporal split

Results Turtle Barbarian Crowd 2 time steps: 7.5M primitives Llama 3 time steps: 7M primitives 9 time steps: 1.7M primitives Barbershop 3 time steps: 1.4M primitives 5 time steps: 2.8M primitives 9 time steps: 3.9M primitives Turtle Barbarian 15 time steps: 0.1M primitives Train 3 time steps: 0.3M primitives 17 time steps: 2.0M primitives Turtle Barbarian Rotate 0.5x 9 time steps: 0.1M primitives

Results Comparing against LBVH of Embree 2.12.0 Separate Linear Motion BVHs for maximal number of linear time segments We integrated our STBVH into Embree thus share algorithmic details of traversal and build Only motion blur geometry for benchmarks Intel® Xeon® E5-2699 v4 workstation (Broadwell 22 cores, 2.2 GHz)

Smaller BVH due to varying number of time segments Similar BVH size Memory Consumption Smaller BVH due to varying number of time segments 9x 2.5x

Slower due to linear bounds binning Faster due to smaller BVH Build Performance Slower due to linear bounds binning Faster due to smaller BVH

Faster due to less memory traffic Competitive but slightly slower Render Performance Faster due to less memory traffic Competitive but slightly slower

Questions? “High Performance Rendering Appliance” demo at Intel booth #807 at SIGGRAPH