Techniques#
Techniques, also called integrators, are the heart of the rendering framework. They allow the calculation of global illumination based on different methods or the acquisition of information about the underlying scene.
A technique is specified in the technique block with a type. The type has to be one of the techniques listed at this section below.
Note
Techniques do not support PExpr expressions.
Path Tracer (path)#
Parameter |
Type |
Default |
Description |
---|---|---|---|
max_depth |
integer |
|
Maximum depth of rays to be traced. |
min_depth |
integer |
|
Minimum depth of rays after which russian roulette applies. |
clamp |
number |
|
Value to clamp contributions to. This introduces bias in favour of omitting outlier. 0 disables clamping. |
light_selector |
string |
|
Light selection technique. Available are |
nee |
boolean |
true |
Enable next event estimation to improve convergence rate. |
aov_mis |
boolean |
false |
Enable two aovs displaying mis related weights. |
This is the default and probably most used type. It calculates the full global illumination in the scene. If participating media is used, it is recommended to use the volumetric path tracer instead.
Volume Path Tracer (volpath)#
Parameter |
Type |
Default |
Description |
---|---|---|---|
max_depth |
integer |
|
Maximum depth of rays to be traced. |
min_depth |
integer |
|
Minimum depth of rays after which russian roulette applies. |
clamp |
number |
|
Value to clamp contributions to. This introduces bias in favour of omitting outlier. 0 disables clamping. |
light_selector |
string |
|
Light selection technique. Available are |
nee |
boolean |
true |
Enable next event estimation to improve convergence rate. |
A simple volumetric path tracer. It calculates the full global illumination in the scene.
Light Tracer (lighttracer)#
Parameter |
Type |
Default |
Description |
---|---|---|---|
max_depth |
integer |
|
Maximum depth of rays to be traced. |
min_depth |
integer |
|
Minimum depth of rays after which russian roulette applies. |
clamp |
number |
|
Value to clamp contributions to. This introduces bias in favour of omitting outlier. 0 disables clamping. |
light_selector |
string |
|
Light selection technique. Available are |
A basic light tracer. Primarily developed as a proof-of-concept for the project framework. It fails to display fully specular paths.
Note
The light tracer is very basic and misses many features. This might change in the future.
Warning
At the time of this writing the light tracer still has some problems and is not recommended to be used.
Photonmapper (photonmapper)#
Parameter |
Type |
Default |
Description |
---|---|---|---|
max_camera_depth |
integer |
|
Maximum depth of rays starting from the camera. Can also be defined as max_depth. |
min_camera_depth |
integer |
|
Minimum depth of rays starting from the camera after which russian roulette applies. Can also be defined as min_depth. |
max_light_depth |
integer |
|
Maximum depth of rays starting from a light source. |
photons |
integer |
|
Number of photons emitted into the scene. |
radius |
number |
|
Initial merging radius. |
clamp |
number |
|
Value to clamp contributions to. This introduces bias in favour of omitting outlier. 0 disables clamping. |
aov |
boolean |
false |
Enable aovs displaying internal weights. |
A basic photon mapping technique. Primarily developed as a proof-of-concept for the project framework.
Note
The photon mapper is very basic and more recent advancements are not used. This will change in the future.
Ambient Occlusion (ao)#
This technique calculates the ambient occlusion in the scene. Currently no parameters are available to tinkle around.
Wireframe (wireframe)#
This technique renders the scene in wireframe. Currently no parameters are available to tinkle around.
Debug (debug)#
Parameter |
Type |
Default |
Description |
---|---|---|---|
mode |
string |
|
Property to display or check. One of the options displayed in |
This is a special technique only usable with the igview frontend. It displays scene specific information on the screen.
Other#
The interested reader might have found that Ignis contains some more techniques. These are primarily intended for development and test purposes and are therefore not further documented at this page.