This is the documentation for Enlighten.

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

Additional functionality to support rectangular area lights.

Functions

Name Description
CalcLightValueSize(PrecisionHint::Value)

Return the size of the light value given the precision hint.

CalcRectangleLightAreaNormalisation(float, float, float)

Returns an intensity normalisation factor for area lights.

CalcRectangleLightMinEdgeLength(float)

Returns a minimum edge length for rectangular lights that should minimise noise from float precision.


Geo::u32 GEO_CALL Enlighten::CalcLightValueSize


public: Geo::u32GEO_CALL CalcLightValueSize
(
    PrecisionHint::Value precision
)


Return the size of the light value given the precision hint.

Parameters
[in] precision

The hint to what floating point precision to use.


float GEO_CALL Enlighten::CalcRectangleLightAreaNormalisation


public: float GEO_CALL CalcRectangleLightAreaNormalisation
(
    float initialWidth,
    float initialHeight,
    float unitScale
)


Returns an intensity normalisation factor for area lights.

By default, the apparent brightness of rectangular lights changes with their size - larger rectangles emit more light. It can be convenient to instead adjust the brightness so that changing the lights size does not affect the brightness by normalising the light intensity. This function computes a factor that normalises to a 100x100 unit light source (1m^2 in Enlighten units).

Returns

Will return -1 for invalid input (nans, infs, and tiny unitScales) and 0 for zero area lights.

See Also

InputLight


float GEO_CALL Enlighten::CalcRectangleLightMinEdgeLength


public: float GEO_CALL CalcRectangleLightMinEdgeLength
(
    float unitScale
)


Returns a minimum edge length for rectangular lights that should minimise noise from float precision.

The default unitScale for a scene is 1.

Returns

Will return -1 for invalid input (nans, infs, and tiny unitScales)

See Also

InputLight

  • No labels