Custom tonemapper
This topic describes parameters of the the custom tonemapper.
- 
struct Tm_custom_tonemapper
The structure of type Tm_custom_curve describes a mapping curve controlled by the following members:
- 
mi::Float32 exposure = 0.0
 - 
mi::Color3 whitepoint = (0.0, 0.0, 0.0)
 - 
struct[] red
 - 
struct[] green
 - 
struct[] blue
 - 
mi::Float32 gamma = 0.0
 
The components of the tonemapper are applied in the order of the struct members: first exposure control and whitepoint correction are done, then a mapping of the individual color channels, and finally a gamma correction to match the display (a good default is usually 2.2).
The struct members red , green , and blue are dynamic arrays of structures of type Tm_custom_curve_control_point . This structure has the following members:
- 
mi::Float32 in
The input value that is mapped to the corresponding out value.
 - 
mi::Float32 out
The output value in is mapped onto.
 
The represented curve is a piecewise linear interpolation of the given control points. The in and out arrays need to be monotonically increasing. Note that one should disable the built-in gamma correction by setting it to 1, if the mapping curve already handles the display correction.
 - 
 


