Specialized Acceleration Structures for Ray-Tracing Warren Hunt Bill Mark.

Slides:



Advertisements
Similar presentations
Corrections to the Surface Area Metric with Respect to Mail-Boxing Warren Hunt.
Advertisements

Christian Lauterbach COMP 770, 2/16/2009. Overview  Acceleration structures  Spatial hierarchies  Object hierarchies  Interactive Ray Tracing techniques.
Graphics Pipeline.
Ray Tracing Ray Tracing 1 Basic algorithm Overview of pbrt Ray-surface intersection (triangles, …) Ray Tracing 2 Brute force: Acceleration data structures.
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.
Render Cache John Tran CS851 - Interactive Ray Tracing February 5, 2003.
Eyes for Relighting Extracting environment maps for use in integrating and relighting scenes (Noshino and Nayar)
CLASS 9 ADVANCE RENDERING RAY TRACING RADIOSITY LIGHT FIELD CS770/870.
Retrospect Digital Image Synthesis Yu-Ting Wu. So far we have learned: Geometry and transforms Shapes Accelerators Color and radiometry Cameras Sampling.
CSE 872 Dr. Charles B. Owen Advanced Computer Graphics1 Ray Tracing Variants Distributed ray tracing Generalized rays Cone Tracing Beam Tracing Pencil.
ATEC Procedural Animation Introduction to Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa.
Week 14 - Monday.  What did we talk about last time?  Bounding volume/bounding volume intersections.
RT06 conferenceVlastimil Havran On the Fast Construction of Spatial Hierarchies for Ray Tracing Vlastimil Havran 1,2 Robert Herzog 1 Hans-Peter Seidel.
CS 4363/6353 INTRODUCTION TO COMPUTER GRAPHICS. WHAT YOU’LL SEE Interactive 3D computer graphics Real-time 2D, but mostly 3D OpenGL C/C++ (if you don’t.
Specialized Acceleration Structures for Ray-Tracing Warren Hunt Bill Mark.
Perspective Shadow Maps Marc Stamminger and George Drettakis Speaker: Alvin Date: 5/28/2003 SIGGRAPH 2002.
Shadow Algorithms Gerald Matzka Computer Science Seminar.
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
Introduction General Data Structures - Arrays, Linked Lists - Stacks & Queues - Hash Tables & Binary Search Trees - Graphs Spatial Data Structures -Why.
Ray Tracing Dynamic Scenes using Selective Restructuring Sung-eui Yoon Sean Curtis Dinesh Manocha Univ. of North Carolina at Chapel Hill Lawrence Livermore.
Perspective Shadow Maps Marc Stamminger REVES/INRIA, Sophia-Antipolis, France now at: Bauhaus-Universität, Weimar, Germany George Drettakis REVES/INRIA,
Haptic Cloth Rendering 6th Dutch-Belgian Haptics Meeting TUDelft, 21 st June 2006 Lode Vanacken Expertise centre for Digital Media (EDM) Hasselt University.
Bounding Volume Hierarchies and Spatial Partitioning Kenneth E. Hoff III COMP-236 lecture Spring 2000.
Apex Point Map for Constant-Time Bounding Plane Approximation Samuli Laine Tero Karras NVIDIA.
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.
How to Stall a Motor: Information-Based Optimization for Safety Refutation of Hybrid Systems Todd W. Neller Knowledge Systems Laboratory Stanford University.
Direct Illumination with Lazy Visibility Evaluation David Hart Philip Dutré Donald P. Greenberg Cornell University SIGGRAPH 99.
Ray Tracing II A More Practical Version. A QUICK REVIEW.
Computer Graphics 2 Lecture x: Acceleration Techniques for Ray-Tracing Benjamin Mora 1 University of Wales Swansea Dr. Benjamin Mora.
Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
1 Speeding Up Ray Tracing Images from Virtual Light Field Project ©Slides Anthony Steed 1999 & Mel Slater 2004.
MIT EECS 6.837, Durand and Cutler Graphics Pipeline: Projective Transformations.
Accelerating Ray Tracing using Constrained Tetrahedralizations Ares Lagae & Philip Dutré 19 th Eurographics Symposium on Rendering EGSR 2008Wednesday,
SPATIAL DATA STRUCTURES Jon McCaffrey CIS 565. Goals  Spatial Data Structures (Construction esp.)  Why  What  How  Designing Algorithms for the GPU.
By Mahmoud Moustafa Zidan Basic Sciences Department Faculty of Computer and Information Sciences Ain Shams University Under Supervision of Prof. Dr. Taymoor.
02/10/03© 2003 University of Wisconsin Last Time Participating Media Assignment 2 –A solution program now exists, so you can preview what your solution.
Institute of C omputer G raphics, TU Braunschweig Hybrid Scene Structuring with Application to Ray Tracing 24/02/1999 Gordon Müller, Dieter Fellner 1 Hybrid.
Collision/Acceleration University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2013 Tamara Munzner.
Ground Truth Free Evaluation of Segment Based Maps Rolf Lakaemper Temple University, Philadelphia,PA,USA.
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.
Fast BVH Construction on GPUs (Eurographics 2009) Park, Soonchan KAIST (Korea Advanced Institute of Science and Technology)
David Luebke11/26/2015 CS 551 / 645: Introductory Computer Graphics David Luebke
04/23/03© 2003 University of Wisconsin Where We’ve Been Photo-realistic rendering –Accurate modeling and rendering of light transport and surface reflectance.
Ray Tracing Animated Scenes using Motion Decomposition Johannes Günther, Heiko Friedrich, Ingo Wald, Hans-Peter Seidel, and Philipp Slusallek.
Interactive Ray Tracing of Dynamic Scenes Tomáš DAVIDOVIČ Czech Technical University.
Computer Graphics Lecture 08 Fasih ur Rehman. Last Class Ray Tracing.
Pure Path Tracing: the Good and the Bad Path tracing concentrates on important paths only –Those that hit the eye –Those from bright emitters/reflectors.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
Ray Tracing II. HW1 Part A due October 10 Camera module Object module –Read from a file –Sphere and Light only Ray tracer module: –No shading. No reflection.
Bounding Volume Hierarchy. The space within the scene is divided into a grid. When a ray travels through a scene, it only passes a few boxes within the.
Advanced topics Advanced Multimedia Technology: Computer Graphics Yung-Yu Chuang 2006/01/04 with slides by Brian Curless, Zoran Popovic, Mario Costa Sousa.
CS559: Computer Graphics Final Review Li Zhang Spring 2010.
CS274 Spring 01 Lecture 7 Copyright © Mark Meyer Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
Honours Graphics 2008 Session 5. Today’s focus Rasterization Visibility determination Coarse / fine visibility determination.
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
Ray Tracing Optimizations
Caustics Triangles on the GPU Umenhoffer Tamás Gustavo Patow Szirmay-Kalos László.
Path/Ray Tracing Examples. Path/Ray Tracing Rendering algorithms that trace photon rays Trace from eye – Where does this photon come from? Trace from.
APE'07 IV INTERNATIONAL CONFERENCE ON ADVANCES IN PRODUCTION ENGINEERING June 2007 Warsaw, Poland M. Nowakiewicz, J. Porter-Sobieraj Faculty of.
UNC Chapel Hill David A. O’Brien Automatic Simplification of Particle System Dynamics David O’Brien Susan Fisher Ming C. Lin Department of Computer Science.
Hierarchical Data Structure in Game Programming Yanci Zhang Game Programming Practice.
Introduction to Computer Graphics
Model Optimization Wed Nov 16th 2016 Garrett Morrison.
Real-Time ray casting for virtual reality
Bounding Volume Hierarchies and Spatial Partitioning
Bounding Volume Hierarchies and Spatial Partitioning
Hybrid Ray Tracing of Massive Models
CSCE 441: Computer Graphics Hidden Surface Removal
Real-time Global Illumination with precomputed probe
Presentation transcript:

Specialized Acceleration Structures for Ray-Tracing Warren Hunt Bill Mark

Forward: Flavor of Research Build is cheap (especially with scan, lazy and build from hierarchy) – Grid build and BVH refit are really cheap Many specialized acceleration structures are required for maximal rendering performance – Already true for game rendering algorithms

One System, Many (Layered) Structures Static structures for static objects Structures with static topology for dynamic objects with static topology – Sub-division surfaces Structures for collections of dynamic objects or particles – Also used in collision detection Structures for clusters of highly coherent rays – Primary, shadows, large flat reflectors Structures for GI (probably not ray-tracing)

Adaptive Acceleration Structures in Perspective Space Warren Hunt Bill Mark

Introduction Use the perspective transform to accelerate (near) common origin ray-tracing – Higher performance for DoF and Soft Shadows Use an adaptive acceleration structure – Avoids “Teapot in a stadium” problems Use a cost metric to improve the effectiveness of the acceleration structure – Derived from first principles

Motivation Perspective space holds promise for improving visibility performance for near- common origin rays Uniform grid isn’t adaptive enough to trace off-axis rays efficiently

Background: Adaptive Acceleration Structures Adaptive acceleration structure builders use cost metrics to improve quality – Present many candidate acceleration structures and pick the best (according to the metric) Commonly used in a top-down greedy way – E.g. The Surface Area Heuristic

kD-Tree Build With a Metric

The Surface Area Metric Most commonly used cost metric for building acceleration structures Cost(s) = P(s left )Cost(s left ) + P(s right )Cost(s right ) – P(x) is the probability of a ray hitting x – Assumes uniform ray distribution – Assumes rays don’t interact with objects

The SAM in Perspective Space Uniform distribution assumption for the SAM makes even less sense in perspective space Response: Start over from scratch – Derive a new cost metric in perspective space – We call the new metric the PSAM

The PSAM: New Assumptions Assume rays are originating from a rectangular source – Area camera or light – Dimensions 2A x by 2A y

Ray Distribution Assumptions SAM:PSAM:

The PSAM: New Assumptions Assume rays are originating from a rectangular source – Area camera or light – Dimensions 2A x by 2A y Use one perspective space structure per area camera or light

Many Structures: One for each Camera or Light Each structure makes unique assumptions about ray distribution

Deriving the PSAM: Setup Goal: Compute the probability of a ray intersecting an axis aligned voxel – Given a voxel and ray distribution Measure the number of rays entering a voxel – By integrating the intersection function over all rays The child/parent ratio of these measures determines the probability of ray intersection

Measure of Rays: Given area light with dimensions 2A x by 2A y Given box with dimensions Δx’ by Δy’ by Δz’ The measure (G) of rays intersecting the box: G(box,A) = Δx’Δy’+(A y /2)(Δx’Δz’)+(A z /2)(Δy’Δz’) – Derivation in the paper

Measure of Rays: Given area light with dimensions 2A x by 2A y Given box with dimensions Δx’ by Δy’ by Δz’ The measure (G) of rays intersecting the box: G(box,A) = Δx’Δy’+(A y /2)(Δx’Δz’)+(A z /2)(Δy’Δz’) – Derivation in the paper

The PSAM: Cost(s,A) = P(s left )Cost(s left )+P(s right )Cost(s right ) Given G(box, A): Cost(s,A) = (G(s left,A)/G(s,A))Cost(s left ) + (G(s right,A)/G(s,A))Cost(s right ) – Still assumes that rays don’t interact with objects

The PSAM: Use Use the traditional SAH build algorithm with the PSAM in place of the SAM Clip the world to avoid the perspective singularity (cube map for point lights) Use back-face culling in all cases

Results Perspective space and the PSAH improves performance by 20%-40% – For soft shadows and DoF In many cases build and render in perspective space costs less than just render in world space – Back-face culling reduces build cost by ~50%

Results Subset Table (1 core) SceneTypeISectTraverseRenderTotal FForest Eye/SAH M23.15 M1.16 s8.37 s

Results Subset Table (1 core) SceneTypeISectTraverseRenderTotal FForest Eye/SAH M23.15 M1.16 s8.37 s FForest Eye/PSAH M14.49 M0.71 s1.29 s

Results Subset Table (1 core) SceneTypeISectTraverseRenderTotal FForest Eye/SAH M23.15 M1.16 s8.37 s FForest Eye/PSAH M14.49 M0.71 s1.29 s Bunny69 Eye/SAH M10.43 M0.492 s2.62 s Bunny69 Eye/PSAH M5.981 M0.272 s0.43 s

Results Subset Table (1 core) SceneTypeISectTraverseRenderTotal FForest Eye/SAH M23.15 M1.16 s8.37 s FForest Eye/PSAH M14.49 M0.71 s1.29 s Bunny69 Eye/SAH M10.43 M0.492 s2.62 s Bunny69 Eye/PSAH M5.981 M0.272 s0.43 s FForest DoF/SAH M369.6 M18.5 s25.8 s FForest DoF/PSAH M314.7 M14.5 s15.1 s Bunny69 DoF/SAH M255.1 M12.7 s14.8 s Bunny69 DoF/PSAH M141.1 M7.8 s8.0 s

Notes: Build Only Gets Cheaper! – Build times are not using lazy build – Build times are not using build from hierarchy Hard/Soft shadows behave much like primary/DoF rays (elided for time/space)

Heuristic Compare on FForest HeuristicBuildIsectsTraverseRenderTotal Eye/Median s63.85 M48.76 M4.16 s4.38 s Eye/SAH s11.46 M31.64 M1.43 s1.88 s Eye/PSAH s5.482 M14.49 M0.71 s1.29 s

Heuristic Compare on FForest HeuristicBuildIsectsTraverseRenderTotal Eye/Median s63.85 M48.76 M4.16 s4.38 s Eye/SAH s11.46 M31.64 M1.43 s1.88 s Eye/PSAH s5.482 M14.49 M0.71 s1.29 s DoF/Median s999.1 M794.4 M65.8 s66.0 s DoF/SAH s177.2 M519.5 M23.3 s23.8 s DoF/PSAH s92.60 M314.7 M14.5 s15.1 s

Conclusions The perspective transform can produce more effective (ray-specialized) acceleration structures for off-axis rays A new cost metric produces better results in perspective space

Section Conclusions

Many specialized acceleration structures are required for maximal rendering performance – Already true for game rendering algorithms Build is cheap (especially with scan and lazy build from hierarchy) – Grid build and BVH refit are really cheap