summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/formats.c
diff options
context:
space:
mode:
authorGert Wollny <[email protected]>2018-11-01 12:59:24 +0100
committerGert Wollny <[email protected]>2018-11-02 11:52:44 +0100
commitb8e9c6522d8d1bc78be2bf1b411b22cc6615dbdf (patch)
treeb4e887c644c7c7a69a2759ff6d376b756683328d /src/mesa/main/formats.c
parent742dace8251b764775ee049cf529715f90afecc1 (diff)
mesa/core: Add definitions and translations for EXT_texture_sRGB_R8
v2: - fix format definition line - disable for desktop GL - don't add GL_R8_EXT to glext.h since it is already in GLES2/gl2ext.h in glext.h and include this header where needed (all Emil) v3: - swrast: Fill the function table for sRGB_R8 The size of the function table is checked at compile time and must correspond to the number of mesa texture formats. dri/swrast being gles-2.0 doesn't support the extension though v4: - correct format layout comment (Ilia Mirkin) - correct logic for accepting GL_RED only textures (in part Ilia Mirkin) EXT_texture_sRGB_R8 requires OpenGL ES 3.0 which includes ARB_texture_rg/EXT_texture_rg, so one only must check for the first when SR8_EXT is really requested. v5: - add define for GL_ES8_XT to glheader.h and don't include GLES headers (Ilia Mirkin) Signed-off-by: Gert Wollny <[email protected]> Reviewed-by: Ilia Mirkin <[email protected]>
Diffstat (limited to 'src/mesa/main/formats.c')
-rw-r--r--src/mesa/main/formats.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c
index d4cd5d2182c..cf2d2bc555a 100644
--- a/src/mesa/main/formats.c
+++ b/src/mesa/main/formats.c
@@ -1108,6 +1108,7 @@ _mesa_uncompressed_format_to_type_and_comps(mesa_format format,
*comps = 4;
return;
case MESA_FORMAT_L_SRGB8:
+ case MESA_FORMAT_R_SRGB8:
*datatype = GL_UNSIGNED_BYTE;
*comps = 1;
return;
@@ -1670,6 +1671,7 @@ _mesa_format_matches_format_and_type(mesa_format mesa_format,
(type == GL_UNSIGNED_SHORT_8_8_REV_MESA && littleEndian != swapBytes));
case MESA_FORMAT_R_UNORM8:
+ case MESA_FORMAT_R_SRGB8:
return format == GL_RED && type == GL_UNSIGNED_BYTE;
case MESA_FORMAT_R8G8_UNORM:
return format == GL_RG && type == GL_UNSIGNED_BYTE && littleEndian;