diff options
author | Jonas Ã…dahl <jadahl@gmail.com> | 2022-10-10 22:15:34 +0200 |
---|---|---|
committer | Marge Bot <marge-bot@gnome.org> | 2022-12-17 23:12:34 +0000 |
commit | d8612720f6b14e971fddd244f68c6174b52222c0 (patch) | |
tree | 6388ca359d3ec156f8e968f531fe96eb151e1cd4 | |
parent | 8e65e510d48be2d9e223b5b074716bb6946f26ed (diff) | |
download | mutter-d8612720f6b14e971fddd244f68c6174b52222c0.tar.gz |
cogl/driver/gles: Handle reading RGBA1010102 too
This means can read without loosing precision, compared to if we read a
texture as rgb8.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2461>
-rw-r--r-- | cogl/cogl/driver/gl/gles/cogl-driver-gles.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/cogl/cogl/driver/gl/gles/cogl-driver-gles.c b/cogl/cogl/driver/gl/gles/cogl-driver-gles.c index 41387a3eb..7e3a29b82 100644 --- a/cogl/cogl/driver/gl/gles/cogl-driver-gles.c +++ b/cogl/cogl/driver/gl/gles/cogl-driver-gles.c @@ -280,6 +280,13 @@ _cogl_driver_read_pixels_format_supported (CoglContext *context, if (glformat == GL_RGBA && gltype == GL_UNSIGNED_BYTE) return TRUE; + if (glintformat == GL_RGB10_A2_EXT && + glformat == GL_RGBA && + gltype == GL_UNSIGNED_INT_2_10_10_10_REV_EXT && + _cogl_has_private_feature (context, + COGL_PRIVATE_FEATURE_TEXTURE_FORMAT_RGBA1010102)) + return TRUE; + return FALSE; } |