Awesome
Awesome Ray Tracing
A curated list of ray tracing resources. PR's welcome!
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/3/32/Recursive_raytrace_of_a_sphere.png/240px-Recursive_raytrace_of_a_sphere.png" height="200"><img src="https://upload.wikimedia.org/wikipedia/commons/thumb/e/ec/Glasses_800_edit.png/320px-Glasses_800_edit.png" height="200"><img src="https://upload.wikimedia.org/wikipedia/commons/thumb/3/36/Ray-traced_steel_balls.jpg/320px-Ray-traced_steel_balls.jpg" height="200"><img src="https://upload.wikimedia.org/wikipedia/commons/0/0d/Global_illumination.JPG" height="200"><img src="https://upload.wikimedia.org/wikipedia/commons/c/cb/Alexexterior2.jpg" height="200"><img src="https://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/Path_tracing_001.png/240px-Path_tracing_001.png" height="200"><img src="https://upload.wikimedia.org/wikipedia/commons/thumb/4/40/Glass_ochem.png/640px-Glass_ochem.png" height="200"><img src="https://upload.wikimedia.org/wikipedia/commons/thumb/6/63/Glas-1000-enery.jpg/320px-Glas-1000-enery.jpg" height="200">
Table of Contents
- Glossary of Terms
- What is Ray Tracing?
- Iconic Publications
- Path Tracing
- Photon Mapping
- Math
- Ray Casting
- BxDF
- Sampling Methods
- Denoising, Filtering, and Reconstruction
- Realtime
- Reference Scenes
- News
- API's
Legend
Icon | Meaning |
---|---|
๐ | Reading |
๐บ | Video |
๐พ | Code / Asset |
Glossary of Terms
What is Ray Tracing?
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/8/83/Ray_trace_diagram.svg/320px-Ray_trace_diagram.svg.png" height="200">- ๐บ Ray Tracing Essentials - (2020) Eric Haines
- ๐บ Disney's Practical Guide to Path Tracing - (2016) Disney
- ๐ Whatโs the Difference Between Ray Tracing and Rasterization? - (2018) Brian Caulfield
- ๐ Ray Tracing Resources Page - (2018) Tomas Akenine-Mรถller, Eric Haines, Naty Hoffman, Angelo Pesce, Michaล Iwanicki, and Sรฉbastien Hillaire
- ๐ An Introduction to Ray Tracing - (1991) Andrew Glassner
- ๐ Physically Based Rendering Book (PBR) - (2018) Matt Pharr, Wenzel Jakob, Greg Humphreys, and Morgan Kaufmann
- ๐ Ray Tracing in One Weekend - (2016) Peter Shirley
- ๐บ An Explanation of the Rendering Equation - (2019) Eric Arnebรคck
- ๐บ Ray Marching for Dummies! - (2018) Martijn Steinrucken
- ๐บ Rendering / Ray Tracing Course - (2017) TU Wien
Iconic Publications
- ๐ Some Techniques for Shading Machine Renderings of Solids - (1968) Arthur Appel
- ๐ An Improved Illumination Model for Shaded Display - (1979) * J.D. Foley and Turner Whitted*
- ๐ The Rendering Equation - (1986) James T. Kajiya
- ๐ Robust Monte Carlo Methods for Light Transport Simulation (1998) - Eric Veach
- ๐ Global Illumination Compendium - (2003) Philip Dutrรฉ
Path Tracing
- ๐ Path Tracing - (2017) Fabio Pellacini and Steve Marschner
- ๐ Path Tracing in Production - (2018) Luca Fascione, Johannes Hanika, Rob Piekรฉ, Ryusuke Villemin, Christophe Hery, Manuel Gamito, Luke Emrose, and Andrรฉ Mazzone
- ๐ Path Tracing Coherency - Anders Lindqvist
- ๐ Path Traced Depth of Field and Bokeh - (2018) Alan Wolfe
- ๐ Daily Path Tracer - (2018) Aras Pranckeviฤius
- ๐ Microfacet-based Normal Mapping for Robust Monte Carlo Path Tracing - (2017) Vincent Schรผssler, Eric Heitz, Johannes Hanika, Carsten Dachsbacher
Photon Mapping
Math
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/7/76/Inner-product-angle.svg/320px-Inner-product-angle.svg.png" height="200">- ๐ PBRT Chapter 2 Geometry and Transformations - (2018) Matt Pharr, Wenzel Jakob, Greg Humphreys, and Morgan Kaufmann
- ๐ PBRT Chapter 3 Shapes - (2018) Matt Pharr, Wenzel Jakob, Greg Humphreys, and Morgan Kaufmann
- ๐ Immersive Math - Linear Algebra - (2015) J. Strรถm, K. ร strรถm, and T. Akenine-Mรถller
- ๐บ Linear Algebra - Khan Academy
Ray Casting
<img src="https://upload.wikimedia.org/wikipedia/commons/6/6c/Ray_triangle.png" height="150"><img src="https://upload.wikimedia.org/wikipedia/commons/thumb/2/2a/Example_of_bounding_volume_hierarchy.svg/320px-Example_of_bounding_volume_hierarchy.svg.png" height="150">
- ๐ Ray-Triangle Intersection: Geometric Solution - Scratchapixel
- ๐ Realtime Rendering Object/Object Intersection Page - (2019) Eric Haines
- ๐ ERIT: A Collection of Efficient and Reliable Intersection Tests - (1998) Martin Held
- ๐ Introduction to Acceleration Structures - Scratchapixel
- ๐ PBRT Chater 4 Primitives and Intersection Acceleration - (2018) Matt Pharr, Wenzel Jakob, Greg Humphreys, and Morgan Kaufmann
- ๐ Dynamic BVH - (2019) Erin Catto
- ๐บ How to Make 3D Fractals
BxDF
<img src="https://upload.wikimedia.org/wikipedia/commons/d/d8/BSDF05_800.png" height="200">- ๐ PBRT Chapter 5.6 Surface Reflection - (2018) Matt Pharr, Wenzel Jakob, Greg Humphreys, and Morgan Kaufmann
- ๐ PBRT Chapter 8 Reflection Models - (2018) Matt Pharr, Wenzel Jakob, Greg Humphreys, and Morgan Kaufmann
- ๐ PBRT Chapter 9 Materials - (2018) Matt Pharr, Wenzel Jakob, Greg Humphreys, and Morgan Kaufmann
- ๐ PBRT Chapter 11 Volume Scattering - (2018) Matt Pharr, Wenzel Jakob, Greg Humphreys, and Morgan Kaufmann
- ๐บ Geometric Optics Playlist - (2013) Doc Schuster
- ๐ Physically Based Sky, Atmosphere, and Cloud Rendering in Frostbite - (2016) Sebastien Hillaire
- ๐ Revisiting Physically Based Shading in ImageWorks - (2017) Christopher Kulla & Alejandro Conty
- ๐ A Multifaceted Explanation Part 1 - (2018) Stephen Hill
Sampling Methods
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/a/a4/Hammersley_set_2D.svg/289px-Hammersley_set_2D.svg.png" height="200">- ๐ PBRT Chapter 7 - (2018) Matt Pharr, Wenzel Jakob, Greg Humphreys, and Morgan Kaufmann
- ๐ Generating Random Points in a Sphere - (2018) Karthik Karanth
- ๐ Robust Monte Carlo Methods Chapters 2, 9, & 11 - (1998) Eric Veach
- ๐ Flavors of Sampling in Ray Tracing - (2018) Peter Shirley
- ๐บ Continuous Multiple Importance Sampling - SIGGRAPH 2020 - (2020) Rex West, Iliyan Georgiev , Adrien Gruson , Toshiya Hachisuka
- ๐ Position-Free Monte Carlo Simulation for Arbitrary Layered BSDFs - (2018) Yu Guo, Miloลก Haลกan, Shuang Zhao
- ๐ Monte Carlo Integration - Anders Lindqvist
- ๐ Monte Carlo Integration Explanation in 1D - (2018) Alan Wolfe
- ๐ Importance Sampling techniques for GGX with Smith Masking-Shadowing Part 1 - (2018) Joe Schutte
- ๐ Double Hierarchies for Directional Importance Sampling in Monte Carlo Rendering - (2018) Norbert Bus and Tamy Boubekeur
- ๐ Importance Sampling of Many Lights with Adaptive Tree Splitting - (2018) Alejandro Conty and Christopher Kulla
- ๐ Monte Carlo Methods for Volumetric Light Transport Simulation - (2018) Jan Novรกk, Iliyan Georgiev, Johannes Hanika, and Wojciech Jarosz
Denoising, Filtering, and Reconstruction
<img src="https://upload.wikimedia.org/wikipedia/commons/f/f4/Noise_salt_and_pepper.png" height="200">- ๐บ RTX Coffee Break: Ray Tracing and Denoising - (2018) Edward Lu
- ๐บ RTX Coffee Break: Ray Traced Reflections and Denoising - (2018) Edward Lu
- ๐ Spatiotemporal Variance-Guided Filtering: Real-Time Reconstruction for Path-Traced Global Illumination - (2017) Christoph Schied, Anton Kaplanyan, Chris Wyman, Anjul Patney, Chakravarty R. Alla Chaitanya, John Burgess, Shiqiu Liu, Carsten Dachsbacher, Aaron Lefohn, Marco Salvi
- ๐ Multidimensional Adaptive Sampling and Reconstruction for Ray Tracing - (2008) Toshiya Hachisuka, Wojciech Jarosz, Richard Peter Weistroffer, Kevin Dale, Greg Humphreys, Matthias Zwicker, and Henrik Wann Jensen
Realtime
- ๐ Real-Time Rendering Chapter - (2018) Tomas Akenine-Mรถller, Eric Haines, Naty Hoffman, Angelo Pesce, Michaล Iwanicki, and Sรฉbastien Hillaire
- ๐บ Real-Time Raytracing for Interactive Global Illumination Workflows in Frostbite / Shiny Pixels and Beyond: Real-Time Raytracing at SEED - (2018) Sรฉbastien Hillaire, Johan Andersson, and Colin Barrรฉ-Brisebois
- ๐ Real-Time Ray Tracing of Correct* Soft Shadows - (2018) Stephen Hill and Morgan McGuire
- ๐บ Stochastic All the Things: Raytracing in Hybrid Real-Time Rendering - (2018) Tomasz Stachowiak
- ๐ Adopting Lessons From Offline Ray-Tracing to Real-Time Ray-Tracing for Practical Pipelines - (2018) Matt Pharr
- ๐ Game Ray Tracing: State-of-the-Art and Open Problems - (2018) Colin Barrรฉ Brisebois
- ๐พ Sol-R, an Open-Source CUDA/OpenCL Speed Of Light Ray-tracer
Reference Scenes
<img src="https://upload.wikimedia.org/wikipedia/commons/2/24/Cornell_box.png" height="200"><img src="https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Stanford_Bunny.stl/320px-Stanford_Bunny.stl.png" height="200">
- ๐พ McGuire Computer Graphics Archive
- ๐พ Benedikt Bitterli
- ๐พ PBRT Scenes v3
- ๐พ ORCA: Open Research Content Archive
- ๐พ Disney Data Sets
News
API's
- Vulkan Ray Tracing
- Nvidia RTX
- Microsoft DirectX Raytracing (DXR)
- Nvidia OptiX
- AMD Radeon-Rays
- Intel Embree
Vulkan Ray Tracing
Nvidia RTX
- ๐ NVIDIA Vulkan Ray Tracing Tutorial - (2018) NVidia
- ๐ Introduction to Real-Time Ray Tracing with Vulkan - (2018) Nuno Subtil
- ๐ Vulkan Raytracing Tutorials - (2018) iOrange
- ๐บ Video Series: Practical Real-Time Ray Tracing With RTX - (2018) Nvidia
- ๐ Effectively Integrating RTX Ray Tracing into a Real-Time Rendering Engine - (2018) Juha Sjoholm
Microsoft DirectX Raytracing (DXR)
- ๐บ๐ Introducion to DirectX Raytracing - (2018) Chris Wyman, Shawn Hargreaves, Peter Shirley, Colin Barrรฉ-Brisebois
- ๐ DX12 Ray Tracing Tutorials - (2018) Martin-Karl Lefranรงois and Pascal Gautron
- ๐พ DXRPathTracer
- ๐บ Real-Time Ray Tracing for Interactive Global Illumination Workflows in Frostbite - (2018) Sebastien Hillaire, Charles de Rousiers, Diede Apers and Petter Edblom