This is the documentation for Enlighten.
You can generate albedo and emissive textures as an alternative way to provide static albedo and emissive data for surfaces that receive indirect lighting from a lightmap.
This method takes into account the albedo and emissive colours of detail meshes that share the lightmap. The implementation is very similar to the sample point method and produces similar results.
Use the persistent runtime data to create albedo and emissive data for each radiosity system:
We recommend to use TextureResolutionScale::Full to make these textures match the dimensions of the lightmap for the system. If you use a different scale, use GetTextureSize to compute the size of the textures
Check the documentation carefully to make sure you provide colours in the colour spaces expected by InitialiseAlbedoBufferFromTexture and InitialiseEmissiveBufferFromTexture.
To convert from linear colour space to the gamma 2 colour space take the square root of the linear colour space values.
The Enlighten lightmap has an extremely low texel resolution when compared to the size of individual mesh triangles or material texels. To render a mesh directly to a texture with the lightmap resolution would cause some obvious aliasing artifacts.
To avoid this we recommend to render to a higher resolution buffer and downsample to the lightmap resolution. We recommend to use render to a buffer with at least four times the lightmap texture resolution.
To include the albedo and emissive colours of detail meshes, include the detail meshes that project onto instances in the system when you generate the albedo and emissive textures.
We recommend to render all of the detail meshes into the textures after you render all instances in the system. This is a simple approach which usually produces good enough results.