...
The Low Level Enlighten Baking API.
Functions
...
[in] | pSystem | The system of interest. |
[in] | pRuntime | The system runtime data from the Enlighten Precompute. |
[in] | pRayOriginPositions | The positions of all ray origins of all systems. If NULL no visibility aware upsampling takes place. |
[in] | pSystemResource | All systems in the baking. If NULL no visibility aware upsampling takes place. |
[in] | pTexMgr | A texture manager that provides textures used in the visibility stage (eg. normal textures). Can be NULL. |
[in] | pBakeProperties | Controls all options for the Bake API, including texture size, unit scale, etc. |
[in] | progress | This object is updated during this function call to give feedback on progress. |
[in] | numInputSystems | Number of systems in the array of all systems. |
[in] | pSystems | Array of all systems. |
[in] | pOutputSystemsDirect | Array of the calculated direct lighting for all systems. |
[in] | pOutputSystemsIndirect | Array of the calculated indirect lighting for all systems. |
[out] | oIndirect | The calculated indirect lighting. |
...
[in] | pSystem | The system of interest. |
[in] | pRuntime | The system runtime data from the Enlighten Precompute. |
[in] | pRayOriginPositions | The positions of all ray origins of all systems. If NULL no visibility aware upsampling takes place. |
[in] | pSystemResource | All systems in the baking. If NULL no visibility aware upsampling takes place. |
[in] | pTexMgr | A texture manager that provides textures used in the visibility stage (eg. normal textures). Can be NULL. |
[in] | pBakeProperties | Controls all options for the Bake API, including texture size, unit scale, etc. |
[in] | progress | This object is updated during this function call to give feedback on progress. |
[out] | oIndirect | The calculated indirect lighting. |
...
Each pixel encodes the normal that was used to calculate the Enlighten irradiance, but rescaled into the used baking UV space rather than the Enlighten UV space.
Parameters
[in] | pSystem | The system of interest. |
[in] | pRuntime | The system runtime data from the Enlighten Precompute. |
[in] | pBakeProperties | Controls all options for the Bake API, including texture size, unit scale, etc. |
[in] | progress | This object is updated during this function call to give feedback on progress. |
[out] | oRadiosityNormal | The calculated indirect lighting. |
...
Creates the IBakeRuntimeLighting for a given Enlighten system.
This contains the runtime albedo and emissive textures for Enlighten, with the direct input lighting baked into the emissive texture.
...
[in] | pEnlightenSystem | The system of interest. |
[in] | duster | The precompute input sample point information, used to produce input lighting. |
[in] | packedSystem | The precompute packed system, used to extract the chart mask that will be used for dilation. |
[in] | albedoTex | (optional) Albedo information for the entire Enlighten system, if available. |
[in] | emissiveTex | (optional) Emissive information for the entire Enlighten system, if available. |
[in] | emissiveMax | (optional) Maximum encoded value in the RGBM emissive texture, if set. |
[in] | pLighting | Holds the emissive environment, usually calculated from a cube map. May be NULL. |
[out] | oLighting | The Enlighten runtime TextureAlbedo textures. |
...
[in] | ppSystems | The list of systems to include. |
[in] | numSystems | The number of systems in the above array. |
[in] | isEnlightenResource | Do the IBakeInputSystems represent Enlighten systems included in the radiosity computation. |
[in] | progress | This object is updated during this function call to give feedback on progress |
[out] | oSystemResource | The system resource, used by later stages to do baking. |
...
Finalises the IBakeRuntimeLighting for a given Enlighten system.
When all lightmap data has been copied into the object (with UpdateRuntimeLighting) call this method.
Parameters
[inout] | ioLighting | The Enlighten runtime TextureAlbedo textures. |
...
Free this object that was created within the Enlighten libraries.
Expect this to behave in a similar way to calling 'delete(this)'
...
[in] | pRuntime | Runtime data from the Enlighten Precompute. |
[in] | pLitMaterials | The material objects created from the CreateRuntimeMaterials call; emissive channel contains baked light data. |
[in] | progress | This object is updated during this function call to give feedback on progress. |
[out] | oSolvedRuntime | The indirect lighting information from the Enlighten runtime. |
Anchor | ||||
---|---|---|---|---|
|
...
Sets the hardware mode for the Enlighten baking.
Anchor | ||||
---|---|---|---|---|
|
...
Copies lighting information from a lightmap into the IBakeRuntimeLighting of an Enlighten system.
Parameters
[in] | pSystem | The system of interest. |
[in] | pTexMgr | A texture manager that provides textures used in the visibility stage (eg. normal textures). Can be NULL. |
[in] | pVisBuffer | The light visibility buffer, created from only the meshes included in the radiosity computation. |
[in] | albedoDilatedPtr | (optional) Additional albedo information, if not supplied we assume the material to be white, in gamma-2 format. This texture must have an alpha channel masking pixels that have geometry. The alpha values should be > 0.0 for rendered pixels and 0.0 for gutter pixels. |
[in] | emissiveDilatedPtr | (optional) Additional emissive information, if not supplied we assume the material to not be emissive. This texture must have an alpha channel masking pixels that have geometry. The alpha values should be > 0.0 for rendered pixels and 0.0 for gutter pixels. |
[in] | pBakeProperties | Controls all options for the Bake API, including texture size, unit scale, etc. |
[in] | progress | This object is updated during this function call to give feedback on progress. |
[inout] | ioLighting | The Enlighten runtime TextureAlbedo textures. |
...