What it does
Mitsuba 3 is an EPFL research-oriented renderer built on Dr.Jit. It supports selectable computation and light-representation variants, with plugins for materials, emitters and rendering algorithms.
Mitsuba 3 is a programmable renderer for research into light transport and inverse rendering. Built on Dr.Jit, it can compute derivatives with respect to scene properties such as camera pose, geometry and materials. Python plugins can define textures, materials or complete rendering algorithms.
A first render starts by installing the Python package and selecting a variant before creating scene objects. The scalar backend traces rays on the CPU; LLVM parallelizes CPU work, and CUDA targets NVIDIA GPUs. Load an XML scene, call the renderer with a samples-per-pixel setting and save the result as PNG or EXR. PNG output receives sRGB conversion, while the returned image tensor is linear RGB.
Variants also select RGB, spectral or polarized light representations. Objects from different variants cannot be mixed in one render. Python 3.10 or later is required; the GPU route needs an NVIDIA driver at version 535 or later, and the parallel CPU route needs LLVM 18 or later. Its software licence permits redistribution and modification with retained notices and a restriction on using contributors' names as endorsements.
Strengths
- Python can define materials, textures and rendering algorithms.
- Automatic differentiation supports scene-parameter optimization.
- The quickstart covers scene loading, sampling and PNG/EXR output.
Watch out for
- Different renderer variants produce incompatible scene objects.
- Accelerated backends have separate NVIDIA or LLVM requirements.
Best for
- Graphics and inverse-rendering researchers
- Programmers building controlled rendering experiments
Sources
- Mitsuba 3 | Retargetable Forward and Inverse Renderer (Oct 27, 2026)
- Mitsuba quickstart | Mitsuba 3 (Oct 27, 2026)
- Mitsuba 3 installation and requirements (Oct 27, 2026)
- Mitsuba 3 software licence (Oct 27, 2026)
