View on GitHub


A Machine Learning Global Illumination renderer based on PBRTv3

Deep Radiance Caching: Convolutional Auto-encoders Deeper in Ray Tracing

(Formerly known as One Shot Radiance. Some parts of the website and code still refer to it as One Shot Radiance OSR)

Welcome to the pbrt-v3-DRC wiki.

Main GitHub project:

Docker files:

Docker image:

Deep Radiance Caching is an experimental rendering engine based on PBRTv3 that uses a neural network to predict indirect illumination, with full Global Illumination support, support for a wide range of materials, and no need for precomputation.

Deep Radiance Caching is capable of high performance Global Illumination with a very low noise level, and is a useful biased ray tracer for use cases that don’t require physically correct output, but need noise-free indirect illumination that looks convincing in most cases.

I have written a paper about the project, and I will add a link to it once its review process is completed and it is approved (hopefully!).

Naming Currently the project has references to old names IILE and OSR in the code. Renaming is work in progress. See issue tracker on GitHub:


There are different ways to obtain PBRTv3-DRC:

0 - Demo run with Docker image

Demo for Deep Radiance Caching.

To run:

docker run -it -p 3000:3000 giuliojiang/drc:v0

1 - Blender plugin with PBRTv3-DRC included

A blender installable package with all PBRT binaries included.

Tested on Ubuntu linux 64bit


2 - PBRTv3-DRC only


3 - PBRTv3 Blender Exporter Plugin only

Blender exporter only. Compatible with vanilla PBRT.


4 - From source



Exporter: blendPBRTv3

Info about the Deep Radiance Caching modification of PBRTv3 will be published once the paper is approved (expected for October 2018).

DRC vs Path

Comparison Images

DRC Usage Guide for the command line version

Command Line Usage Info