[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

4.1.2 Implementation Specific Options

Rendering Options

Option "shadow" "float bias0" [0.225]
Option "shadow" "float bias1" [0.3]
Option "shadow" "float bias" [0.225]
When using shadow maps, a surface may exhibit self-shadowing. This problem is caused by precision errors and appears as gray spots on the surface. This problem occurs when the distance of an object to a light source computed while rendering a shadow map is slightly less than the distance computed while rendering the image. To prevent self shadowing, you can specify a bias, which is a value that will be added to the shadow map value. If `bias0' is different from `bias1', the renderer will choose a random value between them for each sample. Note that those parameters do not affect ray-traced shadows. The value of "bias0" and "bias1" should be set to `0' if the "midpoint" algorithm is used to compute the shadow map, see section 4.1 Options for more details on how to use the "midpoint" algorithm.

Option "render" "string bucketorder" "horizontal"
In order to save memory, the image is rendered progressivly in small group of pixels refered to as "buckets". This option specifies the rendering order of the buckets. Valid values are:

`horizontal'
Left to right, top to bottom (this is the default);
`vertical'
Buckets are rendered from top to bottom, left to right;
`spiral'
In a clockwise spiral starting at the center of the image;
`circle'
In concentric circles starting at the center of the image;
`random'
In no particular order. Should not be used since it is not memory efficient.

Quality vs. Performance Options

Option "limits" "integer bucketsize[2]" [16 16]
This option specifies the dimension of a bucket, in pixels.

Option "limits" "integer gridsize" [256] (8)
During the rendering process, geometry is split into small grids of micro-polygons. Shading is performed on one grid at a time. This option specifies the maximum number of such micro-polygons per grid.

Option "limits" "integer eyesplits" [6] (9)
Specifies the number of times a primitive crossing the eye plane will be split before being discarded.

Option "limits" "integer texturememory" [8192]
The memory needed to hold the texture for some scene may exceed the amount of physical (and logical!) memory available. To render such scenes efficiently, 3Delight uses a memory caching system to keep texture memory usage below some predefined threshold. This option specifies the amount of memory, in kilobytes, dedicated to the textures. Increasing this amount may improve texture map, shadow map and environment map access performances. Note that 3Delight also offers a texture file caching mechanism over networks, see section 5.4 Network Cache.

Option "limits" "integer texturesample" [1]
Specifies the default oversampling value for texture/environment lookups.

Option "shadow" "integer sample" [16]
Specifies the default oversampling value for shadow map and deep shadow map lookups. This only applies if the shadow call does not contain an oversampling value (see section 4.5.5 Texture Mapping). This option does not affect ray-traced shadows.

Option "trace" "integer maxdepth" [4](10)
This option sets the maximum recursion level for the ray tracer. Valid values are between 0 and 16, inclusively. Any value outside of this range will be interpreted as 16. A value of 0 turns off ray tracing.

Search Paths

A search path is a colon or semi-colon separated list of directories. The directories should be separated using a slash (`/') character. Under Windows, it is also possible to use cygwin's convention: `//c/dir1/...'. When an environment variable is encountered in a path, it is replaced by its value. The environment variable should be specified using the UNIX convention (e.g. $HOME). The tilde (`~') character, when placed at the beginning of a path, has the same signification as the HOME environment variable. If the path specified path is `@', it is replaced by the default path (see below); if a `&' is specified, it is replaced by the previous path list.

Search paths are specified using the following commands:

Option "searchpath" "string shader" "path-list"
Sets `shader' and DSO shadeops search path;
Option "searchpath" "string texture" "path-list"
Sets `texture' search path;
Option "searchpath" "string display" "path-list"
Sets `display' search path;
Option "searchpath" "string archive" "path-list"
Sets `archive' search path.
Option "searchpath" "string procedural" "path-list"
Sets `procedural' search path.
Option "searchpath" "string resource" "path-list"
Sets `resource' search path. This is equivalent to adding this path to all the above search paths.

The default values for these options are taken from the environment variables DL_SHADERS_PATH, DL_TEXTURES_PATH, DL_DISPLAYS_PATH, DL_ARCHIVES_PATH and DL_RESOURCE_PATH respectively. Default values are shown in the table below.

Statistics

Statistics can prove useful when finetuning renderer's behaviour (for quality or performance reason).

Option "statistics" "integer endofframe" [0]
Specifies the desired statistics level. The level ranges from 0 to 3, 0 meaning no statistics at all and 3 meaning all possible statistics. A level of `2' is enough for most usages.
Option "statistics" "string filename" [""]
By default, statistics are dumped to the console (more specifically, to `stdout'); this option can be used to specify an output file name instead.
Option "statistics" "string progress" ["off"]
Turning this option `on' will force 3Delight to output a progress status (11) to the console. The outputted text will look like this:
 
3DL INFO: Progress: 0.00 %
3DL INFO: Progress: 0.08 %
3DL INFO: Progress: 0.17 %
3DL INFO: Progress: 0.25 %
3DL INFO: Progress: 0.33 %
3DL INFO: Progress: 0.42 %
3DL INFO: Progress: 0.50 %
....

Each line is printed after a bucket is done rendering.

Network Cache

3Delight has a network caching system for texture files located on "slow access" media (such as NFS and CD-ROM drives). Refer to section 5.4 Network Cache for a detailed description.

Option "netcache" "string cachedir" [""]
Specifies a directory for data caching. The directory should be locally mounted, such as `/tmp/3delight_cache' and should be dedicated solely to 3Delight. Do not use `/tmp' as a cache directory (`/tmp/3delight_cache/' is a better choice).

Option "netcache" "integer cachesize" [1000]
Specifies cache size in megabytes. One megabyte being 1024 Kbytes. Make sure the specified size is enough to hold many textures if you want to fully take advantage of this performance feature. Idealy big enough to hold all the textures used in a given scene.

Option Default Value Comments
"shadow" "bias0" 0.225 --
"shadow" "bias1" 0.300 --
"render" "bucketorder" ["horizontal"] --
"limits" "bucketsize" [16 16] --
"limits" "gridsize" 256 One grid is approximatly as large as a bucket when ShadingRate=1;
"limits" "eyesplits" 6 Enough for most cases, larger values may slow down rendering;
"limits" "texturememory" 8192 8 megabytes;
"limits" "texturesample" 1 --
"shadow" "sample" 16 --
"trace" "maxdepth" 4 --
"searchpath" "shader" `$DELIGHT/shaders' --
"searchpath" "texture" `$DELIGHT/textures' --
"searchpath" "display" `$DELIGHT/displays' --
"searchpath" "archive" `$DELIGHT/archive' --
"searchpath" "procedural" "" --
"searchpath" "resource" "" --
"netcache" "cachedir" [""] No caching;
"netcache" "cachesize" 1000 1 Gig of disk space. Has no effect if caching is disabled;
"statistics" "endofframe" 0 No stats;
"statistics" "file" "" Output to console (`stdout').

Implementation specific options and their default values


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

This document was generated by Aghiles Kheffache on July, 31 2003 using texi2html
3Delight 1.0.0. Copyright 2000-2003 The 3Delight Team. All Rights Reserved.