Skip to content
Tzu-Mao Li edited this page Dec 17, 2019 · 68 revisions

Redner is a differentiable renderer. It takes a 3D scene, including geometry, materials, camera, light sources, represented by PyTorch/TensorFlow tensors, and outputs an image, also represented as a PyTorch/TensorFlow tensor. It provides necessary machinery for correctly propagating the gradients of the output image to the scene parameters. For the theory behind redner, please consult our paper "Differentiable Monte Carlo Ray Tracing through Edge Sampling". This page is a tutorial for using redner. It is still work in progress. Please let us know what to improve through email (tzumao@mit.edu) or Github issues.

New Tutorials with Google Colab

Hello redner!

hello_redner
How to load an object and render it in redner.
PyTorch TensorFlow

Pose estimation

pose_estimation
How to optimize the pose of an object using redner.
PyTorch TensorFlow

Fast local shading

local_shading
How to do local lighting using deferred rendering in redner.
PyTorch TensorFlow

Background images and color spaces

background
How to blend the rendering output with a background image, and why you should do it in the linear color space.
PyTorch TensorFlow

Physically-based rendering in redner

pathtracing
How to do physically-based rendering using path tracing in redner.
PyTorch TensorFlow

Materials, textures, and lighting in redner

material
Redner's material and light source models.
PyTorch TensorFlow

Camera models in redner

camera_model
Redner's camera models.
PyTorch TensorFlow

Batch rendering

batch_rendering0 batch_rendering1
Batch rendering in redner.
PyTorch TensorFlow

3DMM face fitting

3dmm
How to fit a face to a target image using a PCA-based 3D morphable model.
This tutorial doesn't run on Colab since you'll need to agree with license terms of the Basel face model.
PyTorch TensorFlow

Documentation

https://redner.readthedocs.io/en/latest/

Old Tutorials

See the sidebar.