PantaRay: Fast Ray-traced Occlusion Caching of Massive Scenes J. Pantaleoni, L. Fascione, M. Hill, T. Aila

Similar documents
Interactive Ray Tracing: Higher Memory Coherence

COMP 4801 Final Year Project. Ray Tracing for Computer Graphics. Final Project Report FYP Runjing Liu. Advised by. Dr. L.Y.

Rendering Algorithms: Real-time indirect illumination. Spring 2010 Matthias Zwicker

Lecture 11 - GPU Ray Tracing (1)

Virtual Spherical Lights for Many-Light Rendering of Glossy Scenes

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

Shadow and Environment Maps

Precomputation-Based Real-Time Rendering

Enhancing Traditional Rasterization Graphics with Ray Tracing. October 2015

Game Technology. Lecture Physically Based Rendering. Dipl-Inform. Robert Konrad Polona Caserman, M.Sc.

Massive Model Visualization using Real-time Ray Tracing

Part IV. Review of hardware-trends for real-time ray tracing

INFOMAGR Advanced Graphics. Jacco Bikker - February April Welcome!

A distributed rendering architecture for ray tracing large scenes on commodity hardware. FlexRender. Bob Somers Zoe J.

A Hardware Pipeline for Accelerating Ray Traversal Algorithms on Streaming Processors

Ray Tracing with Multi-Core/Shared Memory Systems. Abe Stephens

Lecture 12: Advanced Rendering

Real-time ray tracing

SUMMARY. CS380: Introduction to Computer Graphics Ray tracing Chapter 20. Min H. Kim KAIST School of Computing 18/05/29. Modeling

Enabling immersive gaming experiences Intro to Ray Tracing

Sung-Eui Yoon ( 윤성의 )

Accelerated Ambient Occlusion Using Spatial Subdivision Structures

Recent Advances in Monte Carlo Offline Rendering

Evaluation and Improvement of GPU Ray Tracing with a Thread Migration Technique

Motivation. Advanced Computer Graphics (Fall 2009) CS 283, Lecture 11: Monte Carlo Integration Ravi Ramamoorthi

Computer Graphics Ray Casting. Matthias Teschner

The Rendering Equation and Path Tracing

Real-Time Graphics Architecture. Kurt Akeley Pat Hanrahan. Ray Tracing.

Enhancing Traditional Rasterization Graphics with Ray Tracing. March 2015

Review for Ray-tracing Algorithm and Hardware

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

Lecture 7 - Path Tracing

Cache-Oblivious Ray Reordering

Advanced Graphics. Path Tracing and Photon Mapping Part 2. Path Tracing and Photon Mapping

Ambien Occlusion. Lighting: Ambient Light Sources. Lighting: Ambient Light Sources. Summary

Octree-Based Sparse Voxelization for Real-Time Global Illumination. Cyril Crassin NVIDIA Research

Improved Radiance Gradient Computation

CENG 477 Introduction to Computer Graphics. Ray Tracing: Shading

Global Illumination CS334. Daniel G. Aliaga Department of Computer Science Purdue University

RACBVHs: Random Accessible Compressed Bounding Volume Hierarchies

Interactive Glossy Reflections using GPU-based Ray Tracing with Adaptive LOD

PARALLEL IRRADIANCE CACHING ON THE GPU. Nathaniel L. Jones Massachusetts Institute of Technology, Cambridge, Massachusetts, USA

jgt wrap 2011/11/30 10:04 page 1 #1

Me Again! Peter Chapman. if it s important / time-sensitive

GUERRILLA DEVELOP CONFERENCE JULY 07 BRIGHTON

Fast BVH Construction on GPUs

Rendering Hair-Like Objects with Indirect Illumination

Outline of Lecture. Real-Time High Quality Rendering. Geometry or Vertex Pipeline. Basic Hardware Pipeline. Pixel or Fragment Pipeline

Raytracing Prefiltered Occlusion for Aggregate Geometry

CS 563 Advanced Topics in Computer Graphics QSplat. by Matt Maziarz

GPU-Based Visualization of AMR and N-Body Dark Matter Simulation Data. Ralf Kähler (KIPAC/SLAC)

x ~ Hemispheric Lighting

Voxel Cone Tracing and Sparse Voxel Octree for Real-time Global Illumination. Cyril Crassin NVIDIA Research

Realtime Ray Tracing and its use for Interactive Global Illumination

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

Programmable GPUS. Last Time? Reading for Today. Homework 4. Planar Shadows Projective Texture Shadows Shadow Maps Shadow Volumes

Global Illumination. CMPT 361 Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller

Lecture 12 - GPU Ray Tracing (2)

Soft Shadow Computation using Precomputed Line Space Visibility Information

Shadows. COMP 575/770 Spring 2013

Precomputed Radiance Transfer with Spatially-Varying Lighting Effects

Efficient Rendering of Glossy Reflection Using Graphics Hardware

Realistic Image Synthesis

Overview. Radiometry and Photometry. Foundations of Computer Graphics (Spring 2012)

Specialized Acceleration Structures for Ray-Tracing. Warren Hunt

Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1

Supplement to Lecture 16

Row Tracing with Hierarchical Occlusion Maps

Point based global illumination is now a standard tool for film quality renderers. Since it started out as a real time technique it is only natural

A Practical and Fast Rendering Algorithm for Dynamic Scenes Using Adaptive Shadow Fields

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

GPU-BASED RAY TRACING ALGORITHM USING UNIFORM GRID STRUCTURE

Choosing the Right Algorithm & Guiding

Final Project: Real-Time Global Illumination with Radiance Regression Functions

Duksu Kim. Professional Experience Senior researcher, KISTI High performance visualization

Advanced Computer Graphics CS 563: Making Imperfect Shadow Maps View Adaptive. Frederik Clinck lie

Photon Streaming for Interactive Global Illumination in Dynamic Scenes

frame buffer depth buffer stencil buffer

6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, :05-12pm Two hand-written sheet of notes (4 pages) allowed 1 SSD [ /17]

Intro to Ray-Tracing & Ray-Surface Acceleration

Interactive Isosurface Ray Tracing of Large Octree Volumes

The Terrain Rendering Pipeline. Stefan Roettger, Ingo Frick. VIS Group, University of Stuttgart. Massive Development, Mannheim

Lecture 10: Part 1: Discussion of SIMT Abstraction Part 2: Introduction to Shading

Single Scattering in Refractive Media with Triangle Mesh Boundaries

Efficient Irradiance Normal Mapping

Reusing Shading for Interactive Global Illumination GDC 2004

Variance reduction using interframe coherence for animated scenes

Dynamic Ambient Occlusion and Indirect Lighting. Michael Bunnell NVIDIA Corporation

Spherical Harmonic Gradients for Mid-Range Illumination

Cache-Oblivious Ray Reordering

Motivation. My General Philosophy. Assumptions. Advanced Computer Graphics (Spring 2013) Precomputation-Based Relighting

Illumination Under Trees. Nelson Max University of Tokyo, and University of California, Davis

Subtractive Shadows: A Flexible Framework for Shadow Level of Detail

Computer Graphics. - Ray Tracing I - Marcus Magnor Philipp Slusallek. Computer Graphics WS05/06 Ray Tracing I

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

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)

Real-Time Realism will require...

CS-184: Computer Graphics. Today. Lecture #16: Global Illumination. Sunday, November 8, 2009

A Scalable Approach to Interactive Global Illumination

Accelerating Ray-Tracing

Transcription:

PantaRay: Fast Ray-traced Occlusion Caching of Massive Scenes J. Pantaleoni, L. Fascione, M. Hill, T. Aila

Agenda Introduction Motivation Basics PantaRay Accelerating structure generation Massively parallel ray tracer Conclusion Summary Critics

Introduction: Motivation Computer-generated imagery (CGI), rendering: 3D model 2D image

Introduction: Motivation Avatar: unprecedented complexity

Introduction: Motivation Avatar: level of detail (LOD)

Introduction: Basics Rendering equation L o x, ω o = L i x, ω ρ x, ω, ω o V x, ω ω, n dω Ω + ω o n

Introduction: Basics Rendering equation L o x, ω o = L i x, ω ρ x, ω, ω o V x, ω ω, n dω Ω + ω o n

Introduction: Basics Image-based lighting (IBL) for global illumination

Introduction: Basics Image-based lighting (IBL) for global illumination

Introduction: Basics Rendering equation L o x, ω o = L i x, ω ρ x, ω, ω o V x, ω ω, n dω Ω + IBL environment BRDF ω o n α α

Introduction: Basics Rendering equation L o x, ω o = L i x, ω ρ x, ω, ω o V x, ω ω, n dω Ω + ω o n

Introduction: Basics Rendering equation L o x, ω o = L i x, ω ρ x, ω, ω o V x, ω ω, n dω Ω + n

Introduction: Basics Rendering equation L o x, ω o = L i x, ω ρ x, ω, ω o V x, ω ω, n dω Ω + n Irradiance α ω cos(α)*irradiance

Introduction: Basics Rendering equation L o x, ω o = L i x, ω ρ x, ω, ω o V x, ω ω, n dω Ω + ω o n

Introduction: Basics Spherical Harmonics (SH) [Ram01]: 9 coefficients, 1% error Store visibility term and BRDF Rendering time: only scalar product

Introduction: Basics Rendering equation L o x, ω o = ρ SH L i, SH(V ω, n ) ω o n

PantaRay Precompute and cache visibility term Scenes: Unprecedented complexity Bigger than memory Varying density Production pipeline of Weta Digital Panta rei: everything flows

PantaRay: Pipeline computation passes 1. Preparation 3. Beauty pass L o x, ω o = ρ SH L i, SH(V ω, n ) Microgrid- stream AS 2. Vislocal pass Ray tracing SH(V) (etc.)

PantaRay: Preparation Microgrid stream: Final render of the scene Render of bake sets

PantaRay: Acceleration Structure Vislocal pass Build Bounding Volume Hierarchy (BVH) Traverse for intersection computation LOD Ray tracing Main bottleneck: I/O Touch objects multiple times Ten of thousands concurrent processes

PantaRay: Acceleration Structure Microgrids Bucketing pass Brick construction (etc.) Chunking pass

PantaRay: Ray tracing Shading of bake sets Point stream into batches Simple ray tracer: CPU Simple reflection occlusion Area light shadow shaders Massively parallel ray tracer: GPU Complex spherical sampling queries SH occlusion Indirect lighting shaders Billions of points per scene compute-intensive, LOD

PantaRay: Ray tracing - LOD Determine and stream required bricks Batch 1 Batch 2

PantaRay: Ray tracing - LOD 3 rays emanating from each surface point Each ray represents solid angle σ = 2π n, n = 3 σ = 2π n Batch 1 Batch 2

PantaRay: Ray tracing - LOD Bricks loaded if size(bv(brick)) >= avg(dist(rays)) Batch 1 Batch 2

PantaRay: Ray tracing - LOD Partially transparent Bounding Volumes (BV) Batch 1 Batch 2

PantaRay: Ray tracing - LOD Custom far-field for batch 1 Batch 1 Batch 2

PantaRay: Generate and trace rays m GPUs 1 m points, subset focus on coherence Trace through brick hierarchy [Ail09] while-while traversal kernel Intersection computation high scene complexity, high tree depth low Single Instruction Multiple Thread (SIMT) utilization increase from 20% to 50-60%

Conclusion: Summary Raised 2 orders of magnitude in terms of both speed and scene size Comparison AS generation [Wald05]: 350M triangles: 1d PantaRay: 575M micropolygons: 54min Custom far-field low I/O (few MBs per batch) Ray tracing speed: up to 22M shaded rays per second

Conclusion: Summary I/O: 2MB per batch, trace time: 16 h, 41 m, 8.7M shaded rays/s

Conclusion: Critics Loss of details in computing visibility term (SH, LOD) Float precision: missing some intersections Parallel construction of AS

Thank you!

PantaRay: References [Ail09] [Ram01] [Wald05] AILA, T., AND LAINE, S. 2009. Understanding the efficiency of ray traversal on GPUs. In Proc. High-Performance Graphics, 145 149. Ravi Ramamoorthi and Pat Hanrahan. An efficient representation for irradiance environment maps. In Proceedings of the 28th annual conference on Computer graphics and interactive techniques, S IGGRAPH '01, pages 497-500, New York, NY, USA, 2001. ACM. Ingo Wald, Andreas Dietrich, and Philipp Slusallek. An interactive outof-core rendering framework for visualizing massively complex models. In ACM SIGGRAPH 2005 Courses, SIGGRAPH '05, New York, NY, USA, 2005. ACM.

Trace rays algorithm

Compute intersections algorithm