Welcome to the Mitsuba API documentation. Mitsuba is a modular open-source rendering framework, which consists of a small set of core libraries and over 100 different plugins that implement functionality ranging from materials and light sources to complete rendering algorithms. This page provides information on the interface to these core libraries needed to develop custom plugins.
The API documentation tracks the current development branch and is automatically regenerated every hour. Note that it is not a substitute for the reference manual! If you are planning to do any kind of serious development with Mitsuba, it is recommended that you first the following document:
Mitsuba is split into four basic support libraries. Please use the links below to view their contents:
The core library (
libcore) implements basic functionality such as cross-platform file and bitmap I/O, data structures, scheduling, as well as logging and plugin management.
The rendering library (
librender) contains abstractions needed to load and represent scenes containing light sources, shapes, materials, and participating media.
The hardware acceleration library (
libhw) implements a cross-platform display library, an object-oriented OpenGL wrapper, as well as support for rendering interactive previews of scenes.
Finally, the bidirectional library (
libbidir) contains a support layer that is used to implement bidirectional rendering algorithms such as Bidirectional Path Tracing and Metropolis Light Transport.
Mitsuba also exposes a subset of these libraries via Python bindings. To see a listing of all exported classes, click here.