Physically Based Real-time Ray Tracing Ryan Overbeck.

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.
Parallax-Interpolated Shadow Map Occlusion
Ray tracing. New Concepts The recursive ray tracing algorithm Generating eye rays Non Real-time rendering.
Lecture 14 Illumination II – Global Models
Interactive Rendering using the Render Cache Bruce Walter, George Drettakis iMAGIS*-GRAVIR/IMAG-INRIA Steven Parker University of Utah *iMAGIS is a joint.
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.
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
3D Graphics Rendering and Terrain Modeling
Retrospect Digital Image Synthesis Yu-Ting Wu. So far we have learned: Geometry and transforms Shapes Accelerators Color and radiometry Cameras Sampling.
Real-Time Rendering SPEACIAL EFFECTS Lecture 03 Marina Gavrilova.
Christian Lauterbach COMP 770, 2/11/2009
Fast and Accurate Soft Shadows using a Real-Time Beam Tracer Ravi Ramamoorthi Columbia Vision and Graphics Center Columbia University
Programming with CUDA, WS09 Waqar Saleem, Jens Müller Programming with CUDA and Parallel Algorithms Waqar Saleem Jens Müller.
Computer Graphics (Fall 2005) COMS 4160, Lecture 21: Ray Tracing
Skin Rendering GPU Graphics Gary J. Katz University of Pennsylvania CIS 665 Adapted from David Gosselin’s Power Point and article, Real-time skin rendering,
3D Graphics Processor Architecture Victor Moya. PhD Project Research on architecture improvements for future Graphic Processor Units (GPUs). Research.
Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 14: Ray Tracing
Acceleration on many-cores CPUs and GPUs Dinesh Manocha Lauri Savioja.
CIS 681 Distributed Ray Tracing. CIS 681 Anti-Aliasing Graphics as signal processing –Scene description: continuous signal –Sample –digital representation.
RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R.
CSC418 Computer Graphics n Raytracing n Shadows n Global Illumination.
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
Computer Graphics 2 Lecture x: Acceleration Techniques for Ray-Tracing Benjamin Mora 1 University of Wales Swansea Dr. Benjamin Mora.
Interactive Ray Tracing: From bad joke to old news David Luebke University of Virginia.
H IGH P ERFORMANCE R AY T RACING Keqing Chen Yihan Sun Xinran Xu.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Computer graphics & visualization REYES Render Everything Your Eyes Ever Saw.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
Project Raytracing. Content Goals Idea of Raytracing Ray Casting – Therory – Practice Raytracing – Theory – Light model – Practice Output images Conclusion.
Ray Tracing Sang Il Park SEjong University With lots of slides stolen from Jehee Lee, Doug James, Steve Seitz, Shree Nayar, Alexei Efros, Fredo Durand.
Stefan PopovHigh Performance GPU Ray Tracing Real-time Ray Tracing on GPU with BVH-based Packet Traversal Stefan Popov, Johannes Günther, Hans- Peter Seidel,
On a Few Ray Tracing like Algorithms and Structures. -Ravi Prakash Kammaje -Swansea University.
Ray Tracing Jian Huang, CS 594, Fall, 2002 This set of slides are used at Ohio State by Prof. Roger Crawfis.
Week 10 - Wednesday.  What did we talk about last time?  Shadow volumes and shadow mapping  Ambient occlusion.
MIT EECS 6.837, Durand and Cutler Acceleration Data Structures for Ray Tracing.
Collaborative Visual Computing Lab Department of Computer Science University of Cape Town Graphics Topics in VR By Shaun Nirenstein.
Gene Au-yeung, Daniel Quach, Jeffrey Su, Albert Wang, Jessica Wang, David Woo.
Interactive Rendering With Coherent Ray Tracing Eurogaphics 2001 Wald, Slusallek, Benthin, Wagner Comp 238, UNC-CH, September 10, 2001 Joshua Stough.
Department of Computer Science 1 Beyond CUDA/GPUs and Future Graphics Architectures Karu Sankaralingam University of Wisconsin-Madison Adapted from “Toward.
Ray Tracer Spring 2008 Help Session. Outline Project Web Resources What do you have to do for this project? Ray Class Isect Class Requirements Tricks.
Hierarchical Penumbra Casting Samuli Laine Timo Aila Helsinki University of Technology Hybrid Graphics, Ltd.
CSE 681 DISTRIBUTED RAY TRACING some implementation notes.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Interactive Ray Tracing of Dynamic Scenes Tomáš DAVIDOVIČ Czech Technical University.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Hybrid Algorithms K. H. Ko School of Mechatronics Gwangju Institute.
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.
VLF Rendering & Implementation Details Virtual Light Field Group University College London GR/R13685/01 Research funded by: Jesper.
CS559: Computer Graphics Final Review Li Zhang Spring 2010.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
Soft Shadow Volumes for Ray Tracing
Depth-of-Field Rendering with Multiview Synthesis SigGraph Asia 2009 Sungkil Lee, Elmar Eisemann, and Hans-Peter Seidel Sunyeong Kim Nov. 2 nd
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
Distributed Ray Tracing. Can you get this with ray tracing?
1cs426-winter-2008 Notes. 2 Atop operation  Image 1 “atop” image 2  Assume independence of sub-pixel structure So for each final pixel, a fraction alpha.
Distributed Ray Tracing. Can you get this with ray tracing?
Advanced Computer Graphics
Real-Time ray casting for virtual reality
Real-Time Ray Tracing Stefan Popov.
Mike Merchant Nicholas Hilbert
Hybrid Ray Tracing of Massive Models
© University of Wisconsin, CS559 Fall 2004
The Rendering Equation
Ray Tracing Dinesh Manocha COMP 575/770.
Ray Tracer Project CSE 557.
UMBC Graphics for Games
Distributed Ray Tracing
Ray Tracer Project CSE 557.
CSC418 Computer Graphics Raytracing Shadows Global Illumination.
Presentation transcript:

Physically Based Real-time Ray Tracing Ryan Overbeck

Overview Ray tracing –Broadest success at solving physically based rendering tasks. –But is slower than Z-Buffer (for primary visibility) Real-time Ray Tracing –Recent algorithmic improvements make real-time ray tracing possible –Most of these algorithmic improvements have only been demonstrated for primary visibility w. point light shadows Physically Based Ray Tracing –Uses Path Tracing / Monte-Carlo ray tracing for physical effects –Consistent algorithmic improvements over the years –Very Slow Currently Real-time and Physically Based ray tracing algorithms don’t work well together

Real-time Ray Tracing Ray Packets: Shoot 4 or 4x4 (or more) rays at a time –Neighboring rays take similar paths through the scene –Use SIMD (ie. SSE) instructions to perform one instruction on 4 floating point values at once –Use interval arithmetic to use a single test to represent the entire packet Geometry Proxies: Frustum Traversal, LCTS… –Use bounding geometry to represent a larger group of rays (usually 16x16 – 128x128) Miscellaneous Improvements –Improved Acceleration Structures, –Geometry Intersection tests, –Multi-threading for multi-core architectures, –…

Physically Based Ray Tracing Effects –Image anti-aliasing, Motion Blur –Complex Lighting (soft shadows, hard shadows, environment lighting, ambient lighting, inter-reflections…) –Complex Materials (perfect reflection, glossy reflection, subsurface scattering,…) –Film / Lens effects (depth of field, bloom, …) Tools –Intelligent sampling distributions (Stratified Sampling, Importance Sampling, Low discrepancy sampling, Poisson Disc Sampling, …) –Adaptive / Interpolated Sampling –Image / Film processing (filters, tone mapping,…)

My Goals Long Term: –Design algorithms to marry real-time ray tracing with physically based ray tracing Short Term: –Build a Framework within which I can experiment Where to start? –MLRT – fastest real-time ray tracer »Would need to make it more general »Highly optimized code very difficult to modify –PBRT – Most general Free physically based ray tracer »Would need to make it fast »Very nice design: easy to modify

Progress Started overhaul of PBRT –Tightened up kd-tree traversal code –Added accelerations for ray vs. triangle intersection –Parallelized PBRT -- multi-core processors Tile image space (usually 64x64 tiles) statically assign tiles to threads –Added 4-ray packets for primary rays Shoot 4 rays at a time Use SIMD SSE to accelerate ray traversal

Test Setup 512x512 images 1 sample/pixel PBRT low discrepancy sampling for primary samples 2x2 PBRT box filter for image reconstruction 3.0GHz Pentium 4 (2 cores)

Test Setup Scenes Sponza (66454 Triangles) Sibenik (80479 Triangles) Buddha ( Triangles)

Results SponzaSibenikBuddha 1 rays/ 1 thread 2.778s3.266s3.054s 1 rays/ 2 threads 2.327s2.532s3.489s 1 rays/ 4 threads 2.361s2.534s4.384s 4 rays/ 1 thread 1.055s1.041s1.684s 4 rays/ 2 threads 0.835s0.775s1.656s 4 rays/ 4 threads 0.776s0.819s1.514s

Next Steps Tighten up samplers and image filtering –These two are adding ~.3 s to 512x512 render time (almost as much as ray casting) Larger ray packets (esp. 4x4) Add Frustum Traversal Move to secondary effects –This will mark the beginning of new research territory