weston/libweston
Vitaly Prosyak 96f0fc3974 gl-renderer: add post-curve set to identity
Add post-curve support in color.h.
Pre-curve and post-curve describe color pipeline components
in a single GL shader invocation.The GL shader is supposed
to match struct weston_color_transform exactly.
We have the following color pipeline:
shader A -> blending -> shader B -> KMS. Both A and B shaders
using the same source file :fragment.glsl.
Each shader has pre and post curve.

The typical color pipeline with 3DLUT:
Shader A: pre-curve identity->3DLUT->blending->post-curve identity
Shader B: pre-curve->3DLUT identity->post-curve identity->KMS

The typical color pipeline with matrix (in next commits):
Shader A: pre-curve->matrix->blending->post-curve identity
Shader B: pre-curve->matrix identity->post-curve identity->KMS
The pre-curve plays role of EOTF (shader A) or INV_EOTF
(shader B) becouse we are stiching the shaders.

We assume that someone in the future may use both pre-curve
and post-curve, for example, when it is not possible to combine
these curves into 3DLUT and we will do mapping elements based on
their location in ICC profile.

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
2022-09-28 10:28:28 +00:00
..
backend-drm gl-renderer: pass initial output area explicitly 2022-09-23 12:42:05 +00:00
backend-headless gl-renderer: pass initial output area explicitly 2022-09-23 12:42:05 +00:00
backend-rdp backend-rdp: use resize_output with pixman-renderer 2022-09-23 12:42:05 +00:00
backend-wayland backend-wayland: always propagate touch frame event 2022-09-24 13:54:57 +02:00
backend-x11 backend-x11: use resize_output with GL-renderer 2022-09-23 12:42:05 +00:00
color-lcms build: consolidate lcms2 dependencies 2022-06-03 10:22:25 +00:00
desktop libweston/desktop: Migrate libweston-desktop/libweston-desktop.h 2022-09-23 13:57:26 +03:00
renderer-gl gl-renderer: add post-curve set to identity 2022-09-28 10:28:28 +00:00
animation.c
backend.h libweston: rename weston_output_region_from_global 2022-09-23 11:41:59 +00:00
bindings.c Don't send compositor's global key bindings to the input method 2022-02-23 15:40:33 +02:00
clipboard.c libweston: correct argument name in the handler of wl_data_source.accept 2022-04-14 12:05:57 +00:00
color-noop.c libweston: add HDR metadata to weston_output 2022-05-27 10:30:35 +00:00
color.c backend-drm: check for HDR_OUTPUT_METADATA 2022-05-02 12:19:24 +00:00
color.h gl-renderer: add post-curve set to identity 2022-09-28 10:28:28 +00:00
compositor.c libweston: add weston_renderer::resize_output() 2022-09-23 12:42:05 +00:00
content-protection.c content-protection: Don't leak update timer on shutdown 2021-12-08 13:38:18 +00:00
data-device.c libweston: Add weston_surface_map() wrapper 2022-06-16 12:17:15 +03:00
dbus.c
dbus.h
drm-formats.c drm-formats: add weston_drm_format_array_count_pairs() 2021-11-25 10:47:45 -03:00
git-version.h.meson
input.c input: send touch frame event after up event 2022-09-24 13:54:57 +02:00
launcher-impl.h launchers: Remove --tty option 2022-03-03 17:00:15 -06:00
launcher-libseat.c libweston: Enable logging for libseat launcher 2022-03-10 17:13:16 +02:00
launcher-logind.c launcher-logind: Don't check wl->vtnr before returning it. 2022-03-16 13:12:20 +00:00
launcher-util.c launchers: Remove --tty option 2022-03-03 17:00:15 -06:00
launcher-util.h launchers: Remove --tty option 2022-03-03 17:00:15 -06:00
libinput-device.c
libinput-device.h
libinput-seat.c libinput-seat: Cascade errors and bail out in case of failure 2021-11-25 10:47:04 +02:00
libinput-seat.h
libweston-internal.h libweston: add weston_renderer::resize_output() 2022-09-23 12:42:05 +00:00
linux-dmabuf.c build: fix possible race/error for some backends 2022-06-20 16:14:01 +03:00
linux-dmabuf.h build: fix possible race/error for some backends 2022-06-20 16:14:01 +03:00
linux-explicit-synchronization.c
linux-explicit-synchronization.h
linux-sync-file-uapi.h
linux-sync-file.c
linux-sync-file.h
log.c
meson.build libweston/desktop: Migrate libweston-desktop/libweston-desktop.h 2022-09-23 13:57:26 +03:00
noop-renderer.c libweston: add weston_renderer::resize_output() 2022-09-23 12:42:05 +00:00
pixel-formats.c libweston: add pixel_format_get_info_by_pixman() 2022-08-03 14:33:48 +03:00
pixel-formats.h libweston: add pixel_format_get_info_by_pixman() 2022-08-03 14:33:48 +03:00
pixman-renderer.c pixman-renderer: track framebuffer size explicitly 2022-09-23 12:42:05 +00:00
pixman-renderer.h pixman-renderer: pass initial size explicitly 2022-09-23 12:42:05 +00:00
plugin-registry.c
screenshooter.c libweston: use weston_region_global_to_output more often 2022-09-23 11:41:59 +00:00
spring-tool.c
timeline.c
timeline.h
touch-calibration.c libweston: Add weston_surface_map() wrapper 2022-06-16 12:17:15 +03:00
vertex-clipping.c tests: make vertex-clip use WESTON_EXPORT_FOR_TESTS 2022-03-01 13:32:15 +00:00
vertex-clipping.h
weston-direct-display.c
weston-log-file.c
weston-log-flight-rec.c
weston-log-internal.h
weston-log-wayland.c
weston-log.c weston-log: Fix documentation for weston_log_subscription_create 2022-07-01 17:20:18 +03:00