> For the complete documentation index, see [llms.txt](https://bryan-guner.gitbook.io/knowledge/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://bryan-guner.gitbook.io/knowledge/14-pure-education/knowledge-master/computer-graphics/ray-tracing.md).

# \[Ray tracing]\(<https://en.wikipedia.org/wiki/Ray\\_tracing\\_(graphics)>)

## Links

* [Ray Tracing in One Weekend: The Book Series](https://raytracing.github.io/) ([Code](https://github.com/raytracing/raytracing.github.io/)) ([Book](https://raytracing.github.io/books/RayTracingInOneWeekend.html))
* [Ray Tracing in One Weekend implemented in Golang, chapter-by-chapter](https://github.com/hunterloftis/oneweekend)
* [Ray Tracing in One Weekend implemented in C++, chapter-by-chapter](https://github.com/utilForever/ray-tracing-in-one-weekend-cpp)
* [Understandable Ray Tracing in 256 lines of bare C++ course (2019)](https://github.com/ssloy/tinyraytracer)
* [C++17 constexpr Compile-time Ray Tracer](https://github.com/tcbrindle/raytracer.hpp)
* [Nori](https://github.com/wjakob/nori) - Educational ray tracer.
* [Ray tracing a tiny procedural planet](http://casual-effects.com/research/McGuire2019ProcGen/McGuire2019ProcGen.pdf)
* [HTML5 raycasting demo using React](https://ahuth.github.io/raycast/) ([Code](https://github.com/ahuth/raycast)) ([HN](https://news.ycombinator.com/item?id=22725275))
* [Lighthouse 2 framework for real-time ray tracing](https://github.com/jbikker/lighthouse2)
* [Dawn RT](https://github.com/maierfelix/dawn-ray-tracing) - Ray tracing extension for WebGPU.
* [Quake II RTX](https://github.com/NVIDIA/Q2RTX) - NVIDIA’s implementation of RTX ray-tracing in Quake II.
* [Performance comparison of parallel ray tracing in functional programming languages](https://github.com/athas/raytracers)
* [RayTracer.jl](https://github.com/avik-pal/RayTracer.jl) - Ray Tracer written completely in Julia.
* [Ray Tracing Essentials (2020)](https://www.youtube.com/playlist?list=PL5B692fm6--sgm8Uiava0IIvUojjFOCSR)
* [Rayt](https://github.com/Dalamar42/rayt) - Monte Carlo ray tracer developed using Rust.
* [Ray Tracing with POV-Ray](https://github.com/spcask/pov-ray-tracing) ([Lobsters](https://lobste.rs/s/qczs5u/ray_tracing_with_pov_ray_25_scenes_25_days)) ([HN](https://news.ycombinator.com/item?id=23042993))
* [bvh](https://github.com/svenstaro/bvh) - Rust crate which exports rays, axis-aligned bounding boxes, and binary bounding volume hierarchies.
* [Revisiting the Businesscard Raytracer (2020)](http://fabiensanglard.net/revisiting_the_businesscard_raytracer/index.html)
* [Ray Tracing In Notepad.exe At 30 FPS (2020)](http://kylehalladay.com/blog/2020/05/20/Rendering-With-Notepad.html) ([HN](https://news.ycombinator.com/item?id=23246221))
* [MentisOculi Pytorch Path Tracer](https://github.com/mmirman/MentisOculi)
* [Ray Tracing implemented in multiple languages](https://github.com/matt77hias/smallpt)
* [SwiftlyRT](https://github.com/sbehnke/SwiftlyRT) - Implementation of the Ray Tracer Challenge in Swift.
* [Casual Shadertoy Path Tracing 1: Basic Camera, Diffuse, Emissive (2020)](https://blog.demofox.org/2020/05/25/casual-shadertoy-path-tracing-1-basic-camera-diffuse-emissive/)
* [Ray Tracer in OCaml](https://github.com/Kamirus/ray-tracer)
* [Rust implementation of "Ray Tracing In One Weekend" by Peter Shirley](https://github.com/jorendorff/rust-raytrace)
* [Simple Ray Casting with ClojureScript (2020)](https://andreyorst.gitlab.io/posts/2020-06-04-simple-ray-casting-with-clojurescript/)
* [Ray Tracing in One Weekend in TypeScript](https://github.com/ahuth/raytrace2)
* [Embree](https://github.com/embree/embree) - Collection of high-performance ray tracing kernels, developed at Intel.
* [C-Ray](https://github.com/VKoskiv/c-ray) - Small, simple path tracer written in C.
* [Tungsten Renderer](https://github.com/tunabrain/tungsten) - High performance physically based renderer in C++11.
* [Ray Tracing Gems](https://link.springer.com/book/10.1007/978-1-4842-4427-2) - High-Quality and Real-Time Rendering with DXR and Other APIs.
* [CUDA based Ray Tracer](https://github.com/xlnx/cuda-raytracer)
* [Saturno](https://github.com/alvarosan/saturno) - Implementation of 'Ray Tracing in One Weekend' in Rust (and wasm).
* [Ray tracing in Nim (2020)](https://nim-lang.org/blog/2020/06/30/ray-tracing-in-nim.html) ([HN](https://news.ycombinator.com/item?id=23707286))
* [How to Write a Ray Tracer Intuitively (2020)](https://blog.scottlogic.com/2020/03/10/raytracer-how-to.html)
* [Traceur: a path tracing renderer in Ink and JavaScript (2020)](https://dotink.co/posts/traceur/)
* [Racing the Beam Ray Tracer (2018)](https://tomverbeure.github.io/rtl/2018/11/26/Racing-the-Beam-Ray-Tracer.html) - Full Hardware Real-Time Ray-Tracer. ([Code](https://github.com/tomverbeure/rt))
* [Ray-tracer / Learning project with Rust](https://github.com/qu4k/rain)
* [tray\_rust](https://github.com/Twinklebear/tray_rust) - Toy Ray Tracer in Rust.
* [Visionaray](https://github.com/szellmann/visionaray) - C++-based, cross platform ray tracing library. ([Web](https://vis.uni-koeln.de/forschung/software-visionaray))
* [Raytraced Shadows in Call of Duty: Modern Warfare](https://www.activision.com/cdn/research/Raytraced_Shadows_in_Call_of_Duty_Modern_Warfare.pdf) - How ray tracing can be integrated into a modern, forward+ engine with minimal-to-no content changes.
* [Slightly Incremental Ray Tracing In One Weekend (2020)](https://www.peterstefek.me/incr-ray-tracer.html)
* [SORT (Simple Open-source Ray Tracing)](https://github.com/JiayinCao/SORT) - Cross platform ray tracing renderer in C++. ([Web](https://sort-renderer.com/))
* [redner](https://github.com/BachiLi/redner) - Differentiable Monte Carlo Ray Tracing through Edge Sampling.
* [Vulkan Real-time Path Tracer Engine](https://github.com/Zielon/PBRVulkan)
* [Rust Ray Tracer, an Update (and SIMD) (2020)](https://siliconsprawl.com/2020/11/06/simd-ray-tracer.html) ([Lobsters](https://lobste.rs/s/kpfbis/rust_ray_tracer_update_simd))
* [Path Tracing with Babylon, Background and Implementation](https://forum.babylonjs.com/t/path-tracing-with-babylon-background-and-implementation/12832)
* [Lentil](https://www.lentil.xyz/) - Advanced camera toolkit for the Arnold renderer. Ray tracing through real lenses. ([HN](https://news.ycombinator.com/item?id=25045034))
* [Factorio Raytracer](https://twitter.com/notch/status/1328335971176370181)
* [rpt](https://github.com/ekzhang/rpt) - Physically-based path tracer in Rust.
* [Raygon](https://github.com/raygon-renderer/readme) - High-performance proprietary CPU path tracer written in the Rust programming language.
* [Jaeger](https://www.jaegertracing.io/) - Open source, end-to-end distributed tracing. ([Code](https://github.com/jaegertracing/jaeger))
* [SuperRT - Realtime raytracing on the SNES (2020)](https://www.shironekolabs.com/posts/superrt/) ([HN](https://news.ycombinator.com/item?id=25431203))
* [vk\_mini\_path\_tracer](https://github.com/nvpro-samples/vk_mini_path_tracer) - Beginner-friendly Vulkan path tracing tutorial in under 300 lines of C++.
* [OptixPathTracer](https://github.com/knightcrawler25/Optix-PathTracer) - Simple physically based path tracer based on Nvidia's Optix Ray Tracing Engine.
* [RtRs](https://github.com/universome/rtrs) - Simple ray tracing & rasterization engine written in rust.
* [Why Raytracing won't simplify AAA real-time rendering (2020)](http://c0de517e.blogspot.com/2020/12/why-raytracing-wont-simplify-aaa-real.html) ([HN](https://news.ycombinator.com/item?id=25557354))
* [Psychopath](https://github.com/cessen/psychopath) - Slightly psychotic path tracer.
* [Helios](https://github.com/diharaw/Helios) - Real-time unidirectional GPU path tracer using the cross-vendor Vulkan ray-tracing extensions.
* [retrace.gl](https://github.com/stasilo/retrace.gl) - Create, ray trace & export programmatically defined Signed Distance Function CSG geometries with an API suited for generative art - in your browser.
* [Ray Tracing in pure CMake (2020)](https://64.github.io/cmake-raytracer/) ([Code](https://github.com/64/cmake-raytracer))
* [Simple ray tracer written in Rust from scratch](https://github.com/dranikpg/simple-rays) ([HN](https://news.ycombinator.com/item?id=26143837))
* [Awesome Ray Tracing](https://github.com/dannyfritz/awesome-ray-tracing)
