Integrators

The Eradiate kernel provides volumetric path tracing integrators that extend Mitsuba’s volpath to address Earth observation use cases:

  • piecewise_volpath — handles piecewise-homogeneous plane-parallel atmospheres with a fast regular tracking algorithm.

  • eovolpath — a full-featured Earth observation volumetric path tracer. It extends volpath with EO-specific variance reduction methods and tracking estimators.

    Added in version 0.5.0.

Piecewise volumetric path tracer (volpath)

Parameter

Type

Description

Flags

max_depth

integer

Specifies the longest path depth in the generated output image (where -1 corresponds to \(\infty\)). A value of 1 will only render directly visible light sources. 2 will lead to single-bounce (direct-only) illumination, and so on. Default: -1

rr_depth

integer

Specifies the minimum path depth, after which the implementation will start to use the russian roulette path termination criterion. Default: 5

hide_emitters

boolean

Hide directly visible emitters. Default: false

This plugin provides a piecewise volumetric path tracer that can be used to compute approximate solutions of the radiative transfer equation for plane parallel geometry. Its implementation makes use of multiple importance sampling to combine BSDF and phase function sampling with direct illumination sampling strategies. On surfaces, it behaves exactly like the standard path tracer.

This integrator only works with piecewise media. It uses assumptions on the medium’s geometry to accelerate the sampling and transmission calculations.

This integrator has special support for index-matched transmission events (i.e. surface scattering events that do not change the direction of light). As a consequence, participating media enclosed by a stencil shape are rendered considerably more efficiently when this shape has a null or thin dielectric BSDF assigned to it (as compared to, say, a dielectric or roughdielectric BSDF).

Note

This integrator does not implement good sampling strategies to render participating media with a spectrally varying extinction coefficient. For these cases, it is better to use the more advanced volumetric path tracer with spectral MIS, which will produce in a significantly less noisy rendered image.

Warning

This integrator does not support forward-mode differentiation.

EO Volumetric path tracer (eovolpath)

Parameter

Type

Description

Flags

max_depth

integer

Specifies the longest path depth in the generated output image (where -1 corresponds to \(\infty\)). A value of 1 will only render directly visible light sources. 2 will lead to single-bounce (direct-only) illumination, and so on. Default: -1

rr_depth

integer

Specifies the minimum path depth, after which the implementation will start to use the russian roulette path termination criterion. Default: 5

rr_factor

float

Specifies the maximum probability to keep a path when russian roulette is evaluated. Default: 0.97

ddis_threshold

float

Specifies the probability to importance sample the phase using the emitter as incident direction. Set to a negative value to disable. Default: 0.1

hide_emitters

boolean

Hide directly visible emitters. Default: no, i.e. false

This plugin provides a volumetric path tracer catered towards Earth Observation simulations that can be used to compute approximate solutions of the radiative transfer equation. Its implementation makes use of multiple importance sampling to combine BSDF and phase function sampling with direct illumination sampling strategies. On surfaces, it behaves exactly like the standard path tracer.

This integrator has special support for index-matched transmission events (i.e. surface scattering events that do not change the direction of light). As a consequence, participating media enclosed by a stencil shape are rendered considerably more efficiently when this shape has a null or thin dielectric BSDF assigned to it (as compared to, say, a dielectric or roughdielectric BSDF).

In addition, it implements the DDIS variance reduction method [BM11] which reduces noise in the presence of strongly peaked phase functions.

Note

This integrator does not implement good sampling strategies to render participating media with a spectrally varying extinction coefficient. For these cases, it is better to use the more advanced volumetric path tracer with spectral MIS, which will produce in a significantly less noisy rendered image. Note however that it does not implement the EO features added in this integrator.

Warning

This integrator does not support forward-mode differentiation.

Stokes-moment integrator (stokes_moment)

Parameter

Type

Description

Flags

use_stokes

boolean

Enable Stokes vector AOVs. Requires a polarized rendering mode. Default: false.

use_moment

boolean

Enable second-moment AOVs for variance estimation. Default: false.

meridian_align

boolean

When use_stokes is true, align the Stokes vector to the meridian plane instead of the sensor’s x-axis. Default: false.

(Nested plugin)

integrator

Sub-integrator (exactly one must be specified) which will be sampled along the integrator.

This integrator combines the stokes and moment integrators into a single plugin, resolving the issue that stokes cannot be nested inside moment (the sensor pointer would not be set correctly). Enable either or both modes via use_stokes and use_moment.

AOV layout mirrors the behaviour of the integrators it combines. When both modes are active, the layout is (N = child AOV count):

[0..11]                  name.S0.R name.S0.G name.S0.B  name.S1.R ... name.S3.B
[12..12+N-1]             child AOVs
[12+N..12+N+2]           name.X  name.Y  name.Z
[12+N+3..2*(12+N+3)-1]   m2_ mirror of all preceding channels

This plugins departs from the stokes integrator by prepending the nested integrator name to the stokes AOV names.