mesa: Add the infrastructure for KHR_texture_compression_astc_sliced_3d

V2: Drop the changes to gl.xml.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
This commit is contained in:
Anuj Phogat
2016-07-07 17:03:19 -07:00
parent 3e1ad846f9
commit 15dea5ca82
3 changed files with 6 additions and 3 deletions

View File

@@ -285,6 +285,7 @@ EXT(KHR_robust_buffer_access_behavior , ARB_robust_buffer_access_behavior
EXT(KHR_robustness , KHR_robustness , GLL, GLC, x , ES2, 2012)
EXT(KHR_texture_compression_astc_hdr , KHR_texture_compression_astc_hdr , GLL, GLC, x , ES2, 2012)
EXT(KHR_texture_compression_astc_ldr , KHR_texture_compression_astc_ldr , GLL, GLC, x , ES2, 2012)
EXT(KHR_texture_compression_astc_sliced_3d , KHR_texture_compression_astc_sliced_3d , GLL, GLC, x , ES2, 2015)
EXT(MESA_pack_invert , MESA_pack_invert , GLL, GLC, x , x , 2002)
EXT(MESA_texture_signed_rgba , EXT_texture_snorm , GLL, GLC, x , x , 2009)

View File

@@ -3946,6 +3946,7 @@ struct gl_extensions
GLboolean KHR_robustness;
GLboolean KHR_texture_compression_astc_hdr;
GLboolean KHR_texture_compression_astc_ldr;
GLboolean KHR_texture_compression_astc_sliced_3d;
GLboolean MESA_pack_invert;
GLboolean MESA_ycbcr_texture;
GLboolean NV_conditional_render;

View File

@@ -1447,11 +1447,12 @@ _mesa_target_can_be_compressed(const struct gl_context *ctx, GLenum target,
break;
case MESA_FORMAT_LAYOUT_ASTC:
target_can_be_compresed =
ctx->Extensions.KHR_texture_compression_astc_hdr;
ctx->Extensions.KHR_texture_compression_astc_hdr ||
ctx->Extensions.KHR_texture_compression_astc_sliced_3d;
/* Throw an INVALID_OPERATION error if the target is TEXTURE_3D and
* and the hdr extension is not supported.
* See comment in switch case GL_TEXTURE_CUBE_MAP_ARRAY for more info.
* neither of the above extensions are supported. See comment in
* switch case GL_TEXTURE_CUBE_MAP_ARRAY for more info.
*/
if (!target_can_be_compresed)
return write_error(error, GL_INVALID_OPERATION);