Ray-Based Rendering Learning Resources
Published:
(work in progress…)
I titled this post as ray-based
learning resources, which actually not exactly focus on the Whitted-style ray tracing or Cook-style recursive ray tracing algorithm. These resources agnostic and works for the common ray-based
rendering categories. The ray casting is also the earlier version of this category which has very limited applications nowadays. Contrarily, the global illumination (aka. Physically-Based Rendering, indirect illumination rendering) is the advanced branch of the ray-based
rendering which generates physically-accurate light simulation under virtual environments. The Path tracing
is one of the most popular algorithms under this categories. It is mainly a discrete light simulation that approximately imitates the continuous real-world light interaction using the approximate physics and calculus algorithm. There are hundreds of algorithms under global illumination
categories. Other than path tracing, the photon mapping
, Metropolis light transport
, Radiosity
, Ambient Occlusion
, Dynamic Diffuse Global Illumination (DDGI)
, etc. are also very popular. However, each of the algorithms has their advantages and limitations. Therefore, in the professional-grade rendering engine, often hybrid approaches are used that combines multiple global illumination algorithms based on their superiority photorealistic effects.
The primary goal of this blog is to gather available resources that may assist the newbies. The experts might find this redundant. Before further go, I will strongly recommend to explore the Real-Time Rendering Resources webpage which has been build over a long time and literally contains the best resources available in the internet.
Other than that, here is a lit of books that I found interesting to add in the learning process. The sequence is based on my personal choice. Some of the resources are free:
- Ray Tracing Gems Series
- Scratchapixel 👍🏼 👍🏽 Blog style
- Physically Based Rendering Book Online 👍🏼 👍🏼 Must Read
- The Graphics Codex 👍🏽 👍🏼
- Ray Tracing in One Weekend Series
- GPU Gems Series
Besides, if you are new to Rendering domain, you can follow:
- book
Fundamentals of Computer Graphics
(the latest version) - Learn OpenGL, Must Read blog-style
3D Model Archives
- ORCA: Open Research Content Archive
- McGuire Computer Graphics Archive 👍🏼
- Benedikt Bitterli’s Rendering Resources 👍🏼
- Stanford 3D Scanning Repository
- Clara.io
- HDRI light texture
- From GitHub
Computer Graphics YouTube Lecture Series Lectures:
- Cem Yuksel’s Lecture Series
- Justin Solmon’s Lecture
- Computer Graphics at TU Wien
- Ravi Ramamoorthi’s Lecture
- Keenan Crane’s Lecture
- Wolfgang Huerst’s Lecture Series
- Rajesh Sharma SIGGRAPH 2021 ***
Developer’s Forums
Blogs Path Tracing
- unbiased unidirectional path tracing in 99 lines of C++ 👍🏽 👍🏽
- The blog at the bottom of the sea 👍🏼
- agraphicsguynotes
- memoRandom, in Japanese
Ray Tracing on Weekend (RTOW) series
- Peter Shirley’s Ray Tracing in One Weekend Series
- CUDA (porting code C++ to CUDA already makes it 10X faster)
- OptiX
- Unity
- RTOW in Rust
Some Popular Rendering Engines (for production) for ray tracing:
- Pixar RenderMan
- V-Ray
- Cycles-Blender, with Blender, use OptiX backend
- Autodesk Arnold, OptiX in backend
- The G3D Innovation Engine, OptiX backend
- NVidia IRay, OptiX backend
- Luxrender, OptiX back end
- Houdini, OptiX backend
- openmoonray, Embree