From 9c4b1d9a1ca679b3d9a40536d9e3feea82b85c7b Mon Sep 17 00:00:00 2001
From: Wenzel Jakob
- This parameter specifies the action to be taken when the geometric
- and shading normals of a surface don't agree on whether a ray is on
- the front or back-side of a surface.
-
- When strictNormals is set to false, the shading normal has
- precedence, and rendering proceeds normally at the risk of
- introducing small light leaks (this is the default).
-
- When strictNormals is set to true, the random walk is
- terminated when encountering such a situation. This may
- produce silhouette darkening on badly tesselated meshes.
+ Be strict about potential inconsistencies involving shading normals?
Triangle meshes often rely on interpolated shading normals
+ to suppress the inherently faceted appearance of the underlying geometry. These
+ "fake" normals are not without problems, however. They can lead to paradoxical
+ situations where a light ray impinges on an object from a direction that is classified as "outside"
+ according to the shading normal, and "inside" according to the true geometric normal. The strictNormals
+ parameter specifies the intended behavior when such cases arise. The default (false, i.e. "carry on")
+ gives precedence to information given by the shading normal and considers such light paths to be valid.
+ This can theoretically cause light "leaks" through boundaries, but it is not much of a problem in practice. When set to true, the path tracer detects inconsistencies and ignores these paths. When objects
+ are poorly tesselated, this latter option may cause them to lose a significant amount of the incident
+ radiation (or, in other words, they will look dark).
+ The bidirectional integrators in Mitsuba (BDPT, PSSMLT, MLT, ..)
+ implicitly have strictNormals activated. Hence, another use of this parameter
+ is to match renderings created by these methods. This integrator implements a direct illumination technique that makes use
+ of multiple importance sampling: for each pixel sample, the
+ integrator generates a user-specifiable number of BSDF and emitter
+ samples and combines them using the power heuristic. Usually, the BSDF
+ sampling technique works very well on glossy objects but does badly
+ everywhere else, while the opposite is true for the emitter sampling
+ technique. By combining these approaches, one
+ can obtain a rendering technique that works well in both cases. The number of samples spent on either technique is configurable, hence
+ it is also possible to turn this plugin into an emitter sampling-only
+ or BSDF sampling-only integrator. For best results, combine the direct illumination integrator with the
+ low-discrepancy sample generator. Generally, the number
+ of pixel samples of the sample generator can be kept relatively
+ low (e.g. sampleCount=4), whereas the emitter and BSDF sample
+ parameters of this integrator should be increased until the variance in
+ the output renderings is acceptable.
- This parameter specifies the action to be taken when the geometric
- and shading normals of a surface don't agree on whether a ray is on
- the front or back-side of a surface.
-
- When strictNormals is set to false, the shading normal has
- precedence, and rendering proceeds normally at the risk of
- introducing small light leaks (this is the default).
-
- When strictNormals is set to true, the random walk is
- terminated when encountering such a situation. This may
- produce silhouette darkening on badly tesselated meshes.
+ Be strict about potential inconsistencies involving shading normals?
Triangle meshes often rely on interpolated shading normals
+ to suppress the inherently faceted appearance of the underlying geometry. These
+ "fake" normals are not without problems, however. They can lead to paradoxical
+ situations where a light ray impinges on an object from a direction that is classified as "outside"
+ according to the shading normal, and "inside" according to the true geometric normal. The strictNormals
+ parameter specifies the intended behavior when such cases arise. The default (false, i.e. "carry on")
+ gives precedence to information given by the shading normal and considers such light paths to be valid.
+ This can theoretically cause light "leaks" through boundaries, but it is not much of a problem in practice. When set to true, the path tracer detects inconsistencies and ignores these paths. When objects
+ are poorly tesselated, this latter option may cause them to lose a significant amount of the incident
+ radiation (or, in other words, they will look dark).
+ The bidirectional integrators in Mitsuba (BDPT, PSSMLT, MLT, ..)
+ implicitly have strictNormals activated. Hence, another use of this parameter
+ is to match renderings created by these methods.
The number of traced particles is given by the number of "samples per + pixel" of the sample generator times the pixel count of the output image. + For instance, 16 samples per pixel on a 512x512 image will cause 4M particles + to be generated.
+ Specifies the work unit granularity used to parallize the the particle tracing task (default: 200K samples per work unit).