gl-renderer: add support for (a|x)bgr16161616f shm formats
This is very similar to !709 (merged), except that to avoid needing to keep track of the differences between GL_HALF_FLOAT_OES and GL_HALF_FLOAT, the minimum requirements for the new formats are set to match the the minimum for color management, i.e., GL ES 3.0 + some extensions. (See also 734c2278, which made a similar decision.)
The new formats can be tested with:
-
wlfmts
(https://git.sr.ht/~mstoeckl/wlfmts) -
gradient-test
(from https://gitlab.freedesktop.org/jadahl/wayland-test-clients) - With
LIBGL_ALWAYS_SOFTWARE=1
set, any OpenGL client which prefers‡ floating point formats, assuming Mesa is recent enough to provide them. (With Intel iGPUs, it looks like the soon to be released 21.3 is needed.) (‡ It's a small patch to set this preference in existing programs, see e.g. mstoeckl/egl-float. )
Edited by M. Stoeckl