Previous
INTERFACEs
default
This interface contains information that is shared among all the
built-in rendering entities.
- string "processors", int number
Specify the number of CPUs to be used for the
computations.
The default value is 1.
- string "caching", int size, int cells,
float minradius, float maxradius
Specify the use of a spatial caching mechanism that speeds up
ray-tracing.
It is usefult to produce preview images.
The size parameter is the number of cell clusters that is used
in the cache. The number of cells in each cluster is given by
cell.
A cached value is reused if its distance from the current
sample is less than a fixed radius, that is always between
minradius and maxradius. In particular minradius is used when
the tracing depth is low and the sample is directly visible
from the eye, maxradius is used when the sample is only
visible after many reflections.
- string "displacement", int switch
Specify if displacement-mapping is 'on' or 'off'.
A switch value of 0 means 'off', other values mean
'on'.
- string "shadows", int switch
Specify if shadowing is 'on' or 'off'.
A switch value of 0 means 'off', other values mean
'on'.
- string "volumes", int switch
Specify if volumetric shading is 'on' or 'off'.
A switch value of 0 means 'off', other values mean
'on'.
- string "trace-depth", int depth
Specify the maximum tracing depth, that is to say the
number of specular bounces the light is allowed to do before reaching
the eye. This parameter strongly affects rendering times in
scenes with reflecting and transmitting materials.
The default is 4.
- string "radiosity-depth", int diffuse, int specular
Specify the number of diffuse and specular bounces the light is allowed to do
from surface to surface.
This number is used only when the scene method radiosity() is called.
Note that the term radiosity is used only for convention, but
the evaluation mechanism really computes radiance, that is to
say it takes care of all the global illumination transfers.
The default is 0, 4, that is to say radiosity is off, caustics
are on.
- string "radiosity-sampling", string type
Specify the type of sampling that is used for radiosity
computations.
The valid types are "default" and "stratified", the second
being much more precise, but slower, than the first.
- string "radiosity-samples", int samples
Specify the number of sampling rays that are used to determine
the radiosity at each spatial location.
This value strongly affects the rendering times.
- string "radiosity-threshold", float threshold
Specify the maximum allowed error in the radiosity computation.
This number controls the physical accuracy of the final
radiance estimate.
The default is 0.2 (that is to say 20%).
- string "radiosity-reuse-distance",
(float screen, float max, float min
) | (float max, float min
)
Specify the screen, maximum and minimum distances between
different sampling locations.
The screen distance is a expressed as a fraction of the screen
space. Good values range from 0 to 0.5. A value of 0 means
that each pixel is sampled.
The other values should be determined considering the size of the
visible objects. In particular a good maximum value should be less than a fifth
of the longest edge, while the minimum distance should be about an
order of magnitude less.
- string "radiosity-patch-edge", float max, float min
During the radiosity computation emitting surfaces are
discretized into patches. Two subdivisions are considered, one
is coarse and one is fine. These values are the maximum lengths for
the patch edges, in the coarse and in the fine subdivision respectively.
- string "radiosity-file", string file, string flag
Specify the use of a radiosity file.
flag may be either "save" or "load".
If flag is set to "save", the file will be used to store data
resulting from the radiosity computations, otherwise the file
will be used to load precomputed values.
This feature may be used to create an incremental rendering
system, where the user modifies the same scene many times and
re-renders it frequently. In this case, it should be noted
that the radiosity values strictly depend on each scene
parameter, so that if anything is modified they suddenly
become physically wrong. If the variations are small, however,
the difference from the real values might be almost invisible.
- string "lighting-accuracy", float accuracy
Specify the accuracy of lighting computations.
This value strongly affects rendering times when many lights
are present.
The default is 0.98, that is to say 98%.
- string "lighting-count", int count
Specify the minimum number of lights that are taken into
account for each shading location.
The default is 1.
- string "lighting-depth", int depth
Specify the maximum tracing depth at which correct lighting is
performed. At higher depths different heuristic strategies may be used
to make an estimate of the real shadowing ratio.
The default is 5.
- string "lighting-threshold", float threshold
Specify the maximum allowed error in the computation of
shadows from area lights.
The default is 0.05.
- string "lighting-patch-edge", float max, float min
Specify the maximum and minimum lengths of light patch edges.
Each area light is discretized into patches.
If a light patch has an edge longer than max it is
subdivided. Then shadowing is computed and if the error is
higher than the lighting-threshold the patch edge is
subdivided again until the error is acceptable.
When the edge is smaller than min the iteration stops, no
matter what the error is.
- string "lighting-angle", float max, float min
Specify the maximum and minimum angles under which a
light patch is viewed by the shading location.
Each area light is discretized into patches.
If a light patch is seen under an angle greater than max it is
subdivided. Then shadowing is computed and if the error is
higher than the lighting-threshold the patch is
subdivided again until the error is acceptable.
When the angle is smaller than min the iteration stops, no
matter what the error is.
- string "photon-count", int photons
Specify the number of photons that are spread into the scene
to estimate the global illumination.
The default is 300000.
- string "photon-clustering-count", int diffuse, int caustic
Specify the size of each cluster of photons.
Once that the photons are spread into the scene, they are
clustered together to minimize memory occupancy and to make an
estimate of final radiosity. There are actually two groups of
clusters: one with low frequency is used to sample light
coming from diffuse reflections, and another with high frequency
is used to sample light coming from specular reflections, that
is to say caustics.
By default diffuse is set to 1000 and caustic is set to 50.
If the caustics appear too uniform you should decrease the
last value, while if they show many artifacts you should
increase it.
surface-engine
This interface controls data relative to the surface-engine, an
advanced geometry manager that handles complex 3d parametric
surfaces.
The surface-engine is highly optimized to handle quantities of
geometry that exceed the physical memory. To do this it
implements a powerful caching mechanism, which can be controlled
using this interface.
The surface-engine can be used both explicitly, by creating an
instance of the
"surface-engine"
object type, and implicitly, when using instances
of the "nurbs" and
"bspline" object types.
Note that only one surface-engine interface is active at
any time.
- string "caching", int memory
Specify the memory occupancy of the geometry cache in Kb.
This is the maximum quantity of memory used to handle the
surface resulting from the final tessellation.
Obviously, the smaller is the cache the slower the rendering.
The default value is 32768, but greater values are highly
recommended for larger scenes.
volumetric-engine
This interface controls data relative to the
volumetric-engine, an advanced volumetric renderer.
The volumetric-engine serves to cache huge amounts of
shading computations that may eventually exceed the physical
memory. To do this it implements a powerful on-disk caching
mechanism, which can be controlled using this interface.
The volumetric-engine is used by those interiors that
provide a "shadow-caching" parameter.
Note that only one volumetric-engine interface is active at
any time.
- string "caching", int memory
Specify the memory occupancy of the geometry cache in Kb.
This is the maximum quantity of memory used to handle the
volumetric data resulting from shading computations.
Obviously, the smaller is the cache the slower the rendering.
The default value is 32768, but greater values are highly
recommended for scenes that use intensively this type of
volumetric rendering.