This integrator implements a hardware-accelerated global illumination rendering technique based on the Instant Radiositymethod byKeller .This is the same approach that is also used inMitsuba’s real-time preview; the reason for providing it as a separate integrator plugin is to enable automated (e.g. scripted) usage.
The method roughly works as follows: during a pre-process pass, any present direct and indirect illumination is converted into a set of virtual point light sources (VPLs).The scene is then separately rendered many times, each time using a different VPL as a source of illumination. All of the renderings created in this manner are accumulated to create the final output image.
Because the individual rendering steps can be exectuted on a graphics card, it is possible to render many (i.e. 100-1000) VPLs per second. The method is not without problems, however. In particular, it performs poorly when rendering glossy materials, and it produces artifacts in corners and creases.
Mitsuba automatically limits the “glossyness” ofmaterials to reduce the effects of the former problem.
Aclamping parameter is provided to control the latter (see the figure below).The number of samples per pixel specified to the sampler is interpreted as the number of VPLs that should be rendered.
- Max. path depth : integer
- Specifies the longest path depth in the generated output image (where -1 corresponds to ∞). A value of 2 will lead to direct-only illumination. (Default: 5 -> 24 @ blender)
- Shadow map resolution : integer
- Resolution of the shadowmaps that are used to compute the point-to-point visibility (Default: 512)
- Clamping : float
- A relative clamping factor between [0, 1] that is used to control the rendering artifact discussed below. (Default: 0.1)