This is the documentation for Enlighten.
.paramset format
The XML schema for the .paramset
file format is available in Src/Samples/Libraries/GeoEn2Support/paramset.xsd
.
<parameterSetList>
Your paramsets must be enclosed within a single <parameterSetList>
element, with a version
attribute set to 1
.
Your <parameterSetList>
element may contain any number of <parameterSet>
, <probesParameterSet>
and <cubeMapParameterSet>
elements.
<parameterSet>
A set of parameters that affect systems.
Attribute | Usage | Description | Values |
---|---|---|---|
| Required | The unique identifier of the parameter set. | Non-negative integer |
| Required | The name of the parameter set. | String |
| Essential | The size of an input cluster, in your modelling units. If you change Performance impactThis controls the resolution at which Enlighten stores and can transfer input light. Like | Positive float (default |
| Essential | The desired width of an output pixel, in your modelling units. This is applied to each instance of an Performance impactThis parameter directly controls the size of the output lightmaps. It is a linear parameter, so doubling | Positive float (default |
| Optional | The percentage of a ray origin's rays that must hit front faces to be considered usable. The precompute computes visibility from ray origins to clusters, but attempts to reject ray origins that are inside geometry. If the percentage of rays shot from a ray origin is less than | Positive float ( |
| Optional | The resolution for each face of the environment map. The default resolution is | Power of |
| Advanced | The number of input lighting samples (duster points) per cluster. Typically between | Positive integer (multiple of |
| Advanced | Whether to use chart boundaries if performing "traditional" clustering. When this is enabled clusters are initially confined to charts. This resolves light leaking between geometry belonging to different charts. This feature works best on scenes with few large charts. | Boolean (default |
| Advanced | Whether to compute the offsets data for sampling probes when using the quad transparency feature. This feature is useful for adding limited support for destruction of lightmapped geometry. See Static destruction. | Boolean (default |
| Advanced | Whether to generate ray origins debug data. When Performance impactEnabling this mode increases the memory footprint. In some cases, you may get an 'out of memory' error, especially when using 32-bit versions. | Boolean (default |
| Advanced | Whether to generate directional irradiance output. Controls whether the precompute generates the data required for computing directional irradiance at run time. This is an optional extra output from the irradiance solver which contains the dominant direction of the incoming light for each output pixel. If no directional irradiance data is precomputed and yet directional output is requested, Enlighten returns an error. This parameter only has an effect when | Boolean (default |
| Advanced | The bounding box of the system will be expanded by this value when performing tests to see which of the systems should be fully represented in the ray tracer and which should be approximated by their bounding boxes. A value of | Non-negative float (default |
| Advanced | Do not consider a system as a dependency if its visibility is smaller than the threshold. Specify a value of | Float (min |
| Advanced | Controls the maximum distance, in world units, at which a given system is considered local. A value of -1 results in no systems being considered local. | Float (default 4.0) |
| Advanced | Controls the strictness of the voxel decimation during clustering. | Positive float ( |
| Advanced | Number of visibility samples to store per byte for precomputed directional visibility. The default value is | Integer ( |
| Advanced | Number of vertical sphere slices for precomputed directional visibility storage. The number of sampled visibility directions will be roughly the square of this number. Defaults to | Integer ( |
| Advanced | Whether to stitch pairs of edges together. When | Boolean (default |
| Advanced | Whether to use aligned edge stitching. When | Boolean (default |
| Advanced | Defines the maximum distance between edges for them to be stitchable, as multiplier of Performance impactThis parameter controls the distances over which Enlighten tries to smooth out potential lighting seams. This smoothing process costs memory and time, so this value should be small, hence the default value of | Positive float (default |
| Advanced | A relative importance multiplier for this system in the global light transport step. The default value is | Non-negative float (default |
| Advanced | Whether to build and include projected duster points for accurate GPU visibility. This feature stores additional duster points for different versions of the geometry, so you can update the duster positions dynamically. | Boolean (default |
| Advanced | For every pixel in the output lightmap, Enlighten creates a compressed list of which parts of the scene the pixel can see (and thus transfer light from). The Performance impact
| Positive integer (Default |
| Advanced | The number of rays to cast for computing irradiance form factors. | Integer (power of 2, min |
| Advanced | Maximum angle between normals for charts to be stitchable. In radians for the HLBS, a dot-product in the low-level API. Performance impactThis parameter controls the angular changes over which Enlighten tries to smooth out potential lighting seams. The smoothing costs memory and time, so the value should be small. Large values can result in large increases in memory and execution time, because they force Enlighten to smooth output across a large set of seams. | Positive float, (default |
| Advanced | Maximum angle between normals for pixels to be stitchable. In radians for the HLBS, a dot-product in the low-level API. This parameter controls the number of rays to cast to determine form factor values. The more you use, the better your initial quality before the data reduction. The fewer rays you use, the more noise is introduced (that is, lighting discontinuities; obvious differences between nearby pieces of geometry which you would expect to receive similar lighting.) | Positive float (default |
| Advanced | Maximum number of input samples for a system. Overrides the calculation of | Integer |
| Advanced | The maximum size of an output system, in pixels. | 2-element vector |
| Advanced | Minimum number of input samples for a system. Overrides the calculation of | Integer ( |
| Advanced | The minimum size of an output system, in pixels. | 2-element vector |
| Advanced | Set the number of clusters directly. Overrides the | Positive integer |
| Advanced | Whether to use pixel stitching. | Boolean (default |
| Advanced | The thickness of a triangle in worldspace, for use with the ray 'push through' feature when creating projected point data. This value is the distance to step in order to step over a triangle, and is affected by the choice of modelling units in your world. You should not need to change this value under most circumstances. The default is a sensible small epsilon. Cannot be zero. | Float ( |
| Advanced | The maximum world space distance to search in front of a duster point to 'push through' small nearby geometry. This feature can be helpful in producing a better projected point data set in some scenarios. As a guide, similar values to your output pixel size or cluster size should produce reasonable results. Too small a value will have little effect, and too large a value may move points too far from their original locations. You should not need to change this value under most circumstances. The default is | Float ( |
| Advanced | Whether to cap the number of clusters created during the precompute. Ensures that clustering creates no more than 65535 clusters, such that a cluster index will fit in an unsigned integer, which is a runtime requirement. | Boolean (default |
| Advanced | Defines the maximum distance between charts for them to be stitchable, in modelling units. The default of Performance impactThis parameter controls the distances over which Enlighten tries to smooth out potential lighting seams. This smoothing process costs memory and time, so this value should be small, hence the default value | Positive float (default |
| Advanced | Size of voxels (in output pixel size units) used in voxel based automatic system generation. | Float (default |
| Advanced | Mesh projection. Controls the number of pixels that a detail chart should be allowed to overhang the target chart before we consider the overhang to be 'naughty' and appear in the | Integer (default |
| Advanced | Size of voxel grid to use for precompute optimisation. This parameter controls how aggressively Enlighten compresses the precomputed data. The parameter value represents the scale at which the precompute considers neighbouring pixels to be "similar". Performance impactIt is recommended that you set this parameter to | Positive float |
| Advanced | Use voxel-based clustering to generate leaf clusters. The voxel-based leaf clustering algorithm attempts to decimate geometry along visibility boundaries. It usually produces better results than "traditional" clustering for scenes where meshes intersect each other, and is recommended for scenes with complex geometry that contains many small triangles. To turn it off and use the traditional clustering (the default up to Enlighten 2.16), set this parameter to If | Boolean (default |
| Advanced | Whether to generate terrain LODs for this system. | Boolean (default |
| Advanced | For terrain systems, decide if system packing should add a half pixel padding around the final atlas. This option does not affect systems that have requiresTerrainLODs set to false. Setting this option to false will disable pixel stitching for this system. All instances in the system should be the same size in terrain UV space, must not overlap, and must be arranged in a uniform grid. | Boolean (default |
| Advanced | For terrain systems, the number of terrain LODs to generate for this system. This option does not affect systems that have requiresTerrainLODs set to false. Setting this option to -1 will generate as many as possible. | Integer (default |
| Advanced | Whether to exclude the environment form factors from the lightmap solve data. | Boolean (default |
<probesParameterSet>
This element is used to define a set of parameters applied to a probe set.
Attribute | Usage | Description | Value |
---|---|---|---|
| Required | The name of the probes parameter set. | String |
| Essential | The number of coefficients to use for the spherical harmonic representation. Specify | Integer ( |
| Essential | Turns probe culling on or off. Probe culling will, during the precompute, cull probes with low visibility (that is, probes that see mainly backfaces). The The useCulling parameter only has an effect when using regular grids to place probes. When using automatic probe placement, culling is always on and is not controlled by the useCulling parameter. | Boolean |
| Optional | The resolution for each face of the environment map. The default resolution is | Integer, power of two (min |
| Advanced | The number of form factors to store per probe. The budget controls the fidelity of the radiosity. A higher budget means the run-time reads from more fine grained inputs improving quality, however, the run-time memory is increased and the run-time computation cost is higher. The precompute time is not affected significantly. | Positive integer (multiple of |
| Advanced | The number of rays to cast for computing form factors. The quality controls the amount of work required to precompute the system. Increasing this will only cause an increase in precompute time. The parameter does not affect run-time memory or computation time. | Integer, power of two (min |
| Advanced | Threshold value for probe culling. If the probe visibility is less than this value the probe is rejected. Probe visibility is the proportion of valid (that is, front-facing) geometry seen by the probe, where | Float ( |
| Advanced | The number of coefficients to use for the environment visibility spherical harmonic representation. Specify | Integer ( |
| Advanced | Whether to treat the probes in this set entirely individually, and disable optimisations in the EntireProbeSetSolver which share data between probes. This is useful for probe sets of "dedicated" probes which are positioned exactly where required by static meshes, but not near each other. | Boolean (default |
| Advanced | The bounding box of the probe set will be expanded by this value when performing tests to see which of the systems should be fully represented in the ray tracer and which should be approximated by their bounding boxes. A value of | Non-negative float (default |
| Advanced | Do not consider a system as a dependency if its visibility is smaller than the threshold. Specify a value of | Float ( |
| Advanced | Controls the maximum distance, in world units, at which a given system is considered local. A value of -1 results in no systems being considered local. | Float (default 4.0) |
| Advanced | Whether to exclude the environment form factors from the probe solve data. | Boolean (default |
| Advanced | Allows specifying the basis axis permutation used for the probe coefficients. Specify for example "+x+z-y" for the commonly used right-handed y-up permutation. | String (default +x+y+z) |
| Advanced | Allows reordering of the coefficients within their respective bands. The L0 band is at element 0, L1 at elements 1-3, and L2 and elements 4-8. The L1 default is "0 1 2 3", which maps to the coefficients Y_00, Y_11, Y_10, and Y_1-1 respectively. The L2 default is "0 1 2 3 4 5 6 7 8", which maps to the coefficients Y_00, Y_11, Y_10, Y_1-1 Y_20, Y_21, Y_2-1, Y_2-2, and Y_22 respectively. | String |
<cubeMapParameterSet>
A set of parameters that affect cubemaps.
Attribute | Usage | Description | Values |
---|---|---|---|
| Required | The name of the cube map parameter set. | String |
| Optional | The resolution to use for each face of the environment map. The default resolution is | Power of two (min |
| Advanced | A target number of form factors to store per pixel. Unlike systems and probes, the purpose of the budget for cube maps is to set as low a value as possible without introducing aliasing. Values that are too low will produce the cube map equivalent of aliasing in screen space as they will not correctly average the lighting visible by that pixel. However, too large a value may be wasteful. The default is | Integer ( |
| Advanced | This is the number of rays to cast when computing form factors, per-cube map pixel. It needs to be sufficiently large to correctly capture the scene through each pixel without aliasing, but increasing beyond this will only increase the precompute time. The parameter does not affect runtime memory or computation time. This setting can be increased if you notice aliasing in the result that does not go away after increasing | Integer ( |
| Advanced | The bounding box of the probe set will be expanded by this value when performing tests to see which of the systems should be fully represented in the ray tracer and which should be approximated by their bounding boxes. A value of | Non-negative float (default |
| Advanced | Do not consider a system as a dependency if its visibility is smaller than the threshold. Specify a value of | Float ( |
dependencyLocalityDistance | Advanced | Controls the maximum distance, in world units, at which a given system will be considered as local. If a value of -1 is set, no system will be considered as local. | Float (default 4.0) |