weston/libweston
Daniel Stone df2095fa35 gl-renderer: Support EGL_KHR_partial_update
partial_update is an EGL extension which allows us to inform the driver
ahead of time the limits of the areas we'll be writing to. This helps
performance for GPU hardware which renders into a local tile buffer:
informing the driver of the rendering extents means it can avoid
fetching unchanged tiles into the tile buffer and subsequently writing
them out.

The extension complements rather than replaces EGL_EXT_buffer_age (used
before partial_update to know which areas we need to update) and
EGL_KHR_swap_buffers_with_damage (used after partial_update to inform
the winsys of the changed region).

Note however that partial_update deals in buffer-damage regions ('what
has changed since the last time I used _this_ buffer?'), whereas
swap_buffers_with_damage deals in surface-damage regions ('what has
changed since the last time I rendered?'). An explanatory diagram can be
found in the specification:
https://www.khronos.org/registry/EGL/extensions/KHR/EGL_KHR_partial_update.txt

Fixes: #134

Signed-off-by: Daniel Stone <daniels@collabora.com>
2019-06-26 12:28:03 +01:00
..
backend-drm libweston: Fix/clean-up doxygen warnings 2019-06-25 14:05:54 +00:00
backend-fbdev backend-fbdev: more into new subdir 2019-05-16 13:32:34 +01:00
backend-headless backend-headless: move into new subdir 2019-05-16 13:32:34 +01:00
backend-rdp backend-rdp: allow to force compression off 2019-06-20 16:39:13 +02:00
backend-wayland backend-wayland: move into new subdir 2019-05-16 13:32:34 +01:00
backend-x11 backend-x11: move into new subdir 2019-05-16 13:32:34 +01:00
renderer-gl gl-renderer: Support EGL_KHR_partial_update 2019-06-26 12:28:03 +01:00
animation.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
bindings.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
clipboard.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
compositor.c libweston: Add ingroup tag for weston_compositor 2019-06-25 14:05:54 +00:00
data-device.c data-device: send INVALID_FINISH when operation != dnd 2019-04-19 22:06:37 +05:30
dbus.c dbus: Don't return value from void function 2019-06-11 11:31:04 +01:00
dbus.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
git-version.h.meson Add Meson build system 2018-12-09 14:50:54 +02:00
input.c libweston: Fix/clean-up doxygen warnings 2019-06-25 14:05:54 +00:00
launcher-direct.c log: remove "%m" from format strings by using strerror(errno) 2019-05-02 22:10:30 +02:00
launcher-impl.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
launcher-logind.c backend-drm: handle multiple drm nodes with logind 2019-06-13 18:40:56 +01:00
launcher-util.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
launcher-util.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
launcher-weston-launch.c log: remove "%m" from format strings by using strerror(errno) 2019-05-02 22:10:30 +02:00
libinput-device.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
libinput-device.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
libinput-seat.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
libinput-seat.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
linux-dmabuf.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
linux-dmabuf.h linux-dmabuf: send deprecated format events 2018-01-18 11:24:19 +00:00
linux-explicit-synchronization.c libweston: Fix/clean-up doxygen warnings 2019-06-25 14:05:54 +00:00
linux-explicit-synchronization.h libweston: Support zwp_surface_synchronization_v1.set_acquire_fence 2019-02-06 12:21:56 +00:00
linux-sync-file-uapi.h libweston: Introduce an internal linux sync file API 2019-02-06 12:21:56 +00:00
linux-sync-file.c libweston: export weston_linux_sync_file_read_timestamp() 2019-04-18 12:50:55 +03:00
linux-sync-file.h libweston: export weston_linux_sync_file_read_timestamp() 2019-04-18 12:50:55 +03:00
log.c libweston: Fix/clean-up doxygen warnings 2019-06-25 14:05:54 +00:00
meson.build backend-fbdev: more into new subdir 2019-05-16 13:32:34 +01:00
noop-renderer.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
pixel-formats.c pixel-formats: Remove duplicate doc string 2019-06-26 12:27:14 +01:00
pixel-formats.h pixel-formats: Added pixel_format_get_info_shm() helper for printing SHM buffers 2018-11-20 18:00:09 +02:00
pixman-renderer.c libweston: Support zwp_surface_synchronization_v1.get_release 2019-02-06 12:21:56 +00:00
pixman-renderer.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
plugin-registry.c Rename plugin-registry.h to libweston/plugin-registry.h 2019-04-18 12:31:46 +03:00
screenshooter.c log: remove "%m" from format strings by using strerror(errno) 2019-05-02 22:10:30 +02:00
spring-tool.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
timeline.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
timeline.h timeline: Add GPU timestamp timepoint argument 2017-09-29 10:20:42 +03:00
touch-calibration.c Rename zalloc.h to libweston/zalloc.h 2019-04-18 12:31:46 +03:00
vertex-clipping.c Rename src/ to libweston/ 2016-06-23 17:44:54 +03:00
vertex-clipping.h Rename src/ to libweston/ 2016-06-23 17:44:54 +03:00
weston-debug.c libweston: Fix/clean-up doxygen warnings 2019-06-25 14:05:54 +00:00
weston-launch.c log: remove "%m" from format strings by using strerror(errno) 2019-05-02 22:10:30 +02:00
weston-launch.h Rename src/ to libweston/ 2016-06-23 17:44:54 +03:00
zoom.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00