wlroots/include
Jose Maria Casanova Crespo f33853f861 render/gles2: add scissor-based clipping for tile-based renderers
Add an optional scissor-based clipping strategy to the GLES2 render
pass, it is enabled with WLR_GLES2_SCISSOR_CLIP=1 env var. And it is
disabled by default so it doesn't affect current users.

On tile-based renderers like V3D (Broadcom VideoCore, used in Raspberry
Pi), not using scissoring makes the GPU to render the full-surface.
If scissor is applied only the tiles affected are load/render/stored
reducing the GPU usage.

Patch backported to wlroots 0.19 with labwc on Raspberry Pi OS with
v3d running glxgear 300x300 on top left corner of screen:

- Before: labwc uses 21.5% of GPU render availability.
- After : labwc uses  3.3% of GPU render availability.

This patch over wlroots master with sway on Raspberry Pi OS with
v3d running glxgear half-screen and a terminal half screen:

- Before: sway uses 23.5% of GPU render availability.
- After : sway uses 13.6% of GPU render availability.
2026-03-12 22:00:03 +01:00
..
backend backend/libinput: guard against new enum entries 2026-02-13 09:41:02 -05:00
interfaces types/wlr_input_device: move init and finish function to private API 2022-03-07 16:37:41 +00:00
render render/gles2: add scissor-based clipping for tile-based renderers 2026-03-12 22:00:03 +01:00
types types/wlr_buffer: add buffer_get_drm_format helper function 2026-02-06 13:53:46 +00:00
util util/mem: Move memdup to new util/mem.c file 2025-07-17 16:39:58 +01:00
wlr util/box: Add wlr_box_intersects 2026-03-09 22:09:40 +00:00
xcursor Add some missing includes/declarations 2023-06-05 21:06:19 +00:00
xwayland treewide: make type-check helpers take const pointers 2026-03-06 16:04:21 +08:00
meson.build render/color: add fallback stub when LCMS2 is disabled 2024-06-04 17:45:51 +00:00