From cd49b97a8a2c0dd8dc1d7f32b86f519e936571fd Mon Sep 17 00:00:00 2001 From: Nanley Chery Date: Tue, 28 Apr 2015 15:10:11 -0700 Subject: [PATCH] mesa/teximage: return the base internal format of the ASTC formats This is necesary to initialize the gl_texture_image struct. From the KHR_texture_compression_astc_ldr spec: "Added to Section 3.8.6, Compressed Texture Images Add the tokens specified above to Table 3.16, Compressed Internal Formats. In all cases, the base internal format will be RGBA. The encoding allows images to be encoded with fewer channels, but this is always presented as RGBA to the sampler." v2. use _mesa_is_astc_format(). Reviewed-by: Anuj Phogat Signed-off-by: Nanley Chery --- src/mesa/main/teximage.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index 56ae415..0535db3 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -565,6 +565,10 @@ _mesa_base_tex_format( struct gl_context *ctx, GLint internalFormat ) } } + if (ctx->Extensions.KHR_texture_compression_astc_ldr && + _mesa_is_astc_format(internalFormat)) + return GL_RGBA; + if (_mesa_is_gles3(ctx) || ctx->Extensions.ARB_ES3_compatibility) { switch (internalFormat) { case GL_COMPRESSED_RGB8_ETC2: -- 2.7.4