Mitsuba is a free, open source, advanced rendering program. Its latest version includes new algorithms that claim to bring real life to 3D graphics.
Mitsuba is an experimental physical rendering program which aims to try out cutting edge techniques. The latest version, 0.4, is a major revision and includes a bi-directional ray tracer that it is claimed has never been implemented correctly before.
According to the program's creator, Wenzel Jakob, a PhD student at Cornell:
This release represents about two years of development that have been going on in various side-branches of the codebase and have finally been merged.
He goes on to explain that Mitsuba 0.4.ships with a "whole batch" of bidirectional rendering methods. Simple ray tracing usually only works by following the path of a light ray from pixel to object. Bidirectional methods work forwards and backwards to workout how the light propagates.
- Bidirectional Path Tracing (BDPT) works particularly well on interior scenes and often produces noticeable improvements over plain (i.e. unidirectional) path tracing. BDPT renders images by simultaneously tracing partial lights path from the sensor and the emitter and attempting to establish connections between the two.
The new Mitsuba implementation is a complete reproduction of the original method, which handles all sampling strategies described. The individual strategies are combined using Multiple Importance Sampling (MIS)."
Path Space Metropolis Light Transport (MLT) MLT actively searches for relevant light paths. Once such a path is found, the algorithm tries to explore neighboring paths to amortize the cost of the search. This is done with a clever set of path perturbations which can efficiently explore certain classes of paths. This method can often significantly improve the convergence rate of renderings.
Of the MLT algorithm the announcement claims:
To my knowledge, this is the first publicly available implementation of this algorithm that works correctly.
Primary Sample Space Metropolis Light Transport (PSSMLT) . is a simplified version of the MLT algorithm.This is the algorithm that’s widely implemented in commercial rendering packages that mention “Metropolis Light Transport” somewhere in their product description.
Energy redistribution path tracing combines aspects of Path Tracing with the exploration strategies of Veach and Guibas. This method generates a large number of paths using a standard path tracing method, which are then used to seed a MLT-style renderer. It works hand in and with the next method:
- Manifold Exploration is based on the idea that sets of paths contributing to the image naturally form manifolds in path space, which can be explored locally by a simple equation-solving iteration. This leads to a method that can render scenes involving complex specular and near-specular paths, which have traditionally been a source of difficulty in unbiased methods.
If you want to know about these new algorithms then see the following short (17-minute) talk on the subject:
Other parts of the program have been significantly enhanced included texture handling, cameras and lights.
Samples of the output of the renderer are best viewed in high resolution on the original site: