This class is used by the IESLoader to generate a LUT texture which is used in the shaders to perform IES lighting. It takes a set of vertical and horizontal angles, as well as a set of candela values, which then are lineary interpolated onto a 2D LUT Texture.
void generate_dataset_texture_into(Texture *dest_tex, std::size_t z) const
This generates the LUT into a given dataset texture. The x-axis referes to the vertical_angle, whereas the y-axis refers to the horizontal angle.
2D Texture Array.
void set_candela_values(PTA_float const &candela_values)
This sets the candela values of the dataset. They should be an interleaved 2D array with the dimensions vertical_angles x horizontal_angles. They also should be normalized by dividing by the maximum entry.
void set_horizontal_angles(PTA_float const &horizontal_angles)
This sets the list of horizontal angles of the dataset.