Files
weston/libweston
Pekka Paalanen 92f2367e58 gl-renderer: implement 3 x 1D LUT color pre-curve
This makes weston_color_transform object be able to express
three-channel one-dimensional look-up table transformations. They are
useful for applying EOTF and EOTF^-1 mapping, or, gamma curves. They
will also be useful in optimizing a following 3D LUT tap distribution
once support for 3D LUT is added.

The code added here translates from the lut_3x1d fill_in() interface to
a GL texture to be used with SHADER_COLOR_CURVE_LUT_3x1D for
weston_surfaces.

It demonstrates how renderer data is attached to weston_color_transform
and cached.

GL_OES_texture_float_linear is required to be able to use bilinear
texture filtering with 32-bit floating-point textures, used for the LUT.

As the size of the LUT depends on what implements it, lut_3x1d fill_in()
interface is a callback to the color management component to ask for an
arbitrary size. For GL-renderer this is not important as it can easily
realize any LUT size, but when DRM-backend wants to offload the EOTF^-1
mapping to KMS (GAMMA_LUT), the LUT size comes from KMS.

Nothing actually implements lut_3x1d fill_in() yet, that will come in a
later patch.

Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com>
2021-06-21 14:36:33 +00:00
..
2021-02-25 14:35:03 +02:00
2021-02-25 14:35:03 +02:00
2020-01-29 09:49:41 +00:00
2020-01-29 09:49:41 +00:00
2020-01-29 09:49:41 +00:00
2018-12-09 14:50:54 +02:00
2020-01-29 09:49:41 +00:00
2021-06-14 12:53:41 +00:00
2020-01-29 09:49:41 +00:00
2021-02-24 10:01:17 -05:00
2016-06-23 17:44:54 +03:00
2016-06-23 17:44:54 +03:00
2021-02-24 10:01:17 -05:00