mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 13:58:04 +02:00
mesa: Add and use _mesa_has_texture_cube_map_array helper
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
66b988d09a
commit
87fa462ffd
3 changed files with 13 additions and 8 deletions
|
|
@ -351,6 +351,11 @@ _mesa_has_tessellation(const struct gl_context *ctx)
|
|||
_mesa_has_ARB_tessellation_shader(ctx);
|
||||
}
|
||||
|
||||
static inline bool
|
||||
_mesa_has_texture_cube_map_array(const struct gl_context *ctx)
|
||||
{
|
||||
return _mesa_is_desktop_gl(ctx) && ctx->Extensions.ARB_texture_cube_map_array;
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
|||
|
|
@ -502,7 +502,7 @@ _mesa_max_texture_levels(struct gl_context *ctx, GLenum target)
|
|||
? ctx->Const.MaxTextureLevels : 0;
|
||||
case GL_TEXTURE_CUBE_MAP_ARRAY:
|
||||
case GL_PROXY_TEXTURE_CUBE_MAP_ARRAY:
|
||||
return ctx->Extensions.ARB_texture_cube_map_array
|
||||
return _mesa_has_texture_cube_map_array(ctx)
|
||||
? ctx->Const.MaxCubeTextureLevels : 0;
|
||||
case GL_TEXTURE_BUFFER:
|
||||
return (_mesa_has_ARB_texture_buffer_object(ctx) ||
|
||||
|
|
@ -1433,7 +1433,7 @@ _mesa_target_can_be_compressed(const struct gl_context *ctx, GLenum target,
|
|||
*/
|
||||
if (layout == MESA_FORMAT_LAYOUT_ETC2 && _mesa_is_gles3(ctx))
|
||||
return write_error(error, GL_INVALID_OPERATION);
|
||||
target_can_be_compresed = ctx->Extensions.ARB_texture_cube_map_array;
|
||||
target_can_be_compresed = _mesa_has_texture_cube_map_array(ctx);
|
||||
break;
|
||||
case GL_TEXTURE_3D:
|
||||
switch (layout) {
|
||||
|
|
@ -1523,7 +1523,7 @@ legal_teximage_target(struct gl_context *ctx, GLuint dims, GLenum target)
|
|||
return _mesa_is_desktop_gl(ctx) && ctx->Extensions.EXT_texture_array;
|
||||
case GL_TEXTURE_CUBE_MAP_ARRAY:
|
||||
case GL_PROXY_TEXTURE_CUBE_MAP_ARRAY:
|
||||
return ctx->Extensions.ARB_texture_cube_map_array;
|
||||
return _mesa_has_texture_cube_map_array(ctx);
|
||||
default:
|
||||
return GL_FALSE;
|
||||
}
|
||||
|
|
@ -1575,7 +1575,7 @@ legal_texsubimage_target(struct gl_context *ctx, GLuint dims, GLenum target,
|
|||
|| _mesa_is_gles3(ctx);
|
||||
case GL_TEXTURE_CUBE_MAP_ARRAY:
|
||||
case GL_PROXY_TEXTURE_CUBE_MAP_ARRAY:
|
||||
return ctx->Extensions.ARB_texture_cube_map_array;
|
||||
return _mesa_has_texture_cube_map_array(ctx);
|
||||
|
||||
/* Table 8.15 of the OpenGL 4.5 core profile spec
|
||||
* (20141030) says that TEXTURE_CUBE_MAP is valid for TextureSubImage3D
|
||||
|
|
@ -1673,7 +1673,7 @@ _mesa_legal_texture_base_format_for_target(struct gl_context *ctx,
|
|||
|| (ctx->API == API_OPENGLES2 && ctx->Extensions.OES_depth_texture_cube_map))) &&
|
||||
!((target == GL_TEXTURE_CUBE_MAP_ARRAY ||
|
||||
target == GL_PROXY_TEXTURE_CUBE_MAP_ARRAY) &&
|
||||
ctx->Extensions.ARB_texture_cube_map_array)) {
|
||||
_mesa_has_texture_cube_map_array(ctx))) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
@ -4317,7 +4317,7 @@ compressed_subtexture_target_check(struct gl_context *ctx, GLenum target,
|
|||
(_mesa_is_desktop_gl(ctx) && ctx->Extensions.EXT_texture_array);
|
||||
break;
|
||||
case GL_TEXTURE_CUBE_MAP_ARRAY:
|
||||
targetOK = ctx->Extensions.ARB_texture_cube_map_array;
|
||||
targetOK = _mesa_has_texture_cube_map_array(ctx);
|
||||
break;
|
||||
case GL_TEXTURE_3D:
|
||||
targetOK = GL_TRUE;
|
||||
|
|
|
|||
|
|
@ -184,10 +184,10 @@ _mesa_get_current_tex_object(struct gl_context *ctx, GLenum target)
|
|||
return ctx->Extensions.ARB_texture_cube_map
|
||||
? ctx->Texture.ProxyTex[TEXTURE_CUBE_INDEX] : NULL;
|
||||
case GL_TEXTURE_CUBE_MAP_ARRAY:
|
||||
return ctx->Extensions.ARB_texture_cube_map_array
|
||||
return _mesa_has_texture_cube_map_array(ctx)
|
||||
? texUnit->CurrentTex[TEXTURE_CUBE_ARRAY_INDEX] : NULL;
|
||||
case GL_PROXY_TEXTURE_CUBE_MAP_ARRAY:
|
||||
return ctx->Extensions.ARB_texture_cube_map_array
|
||||
return _mesa_has_texture_cube_map_array(ctx)
|
||||
? ctx->Texture.ProxyTex[TEXTURE_CUBE_ARRAY_INDEX] : NULL;
|
||||
case GL_TEXTURE_RECTANGLE_NV:
|
||||
return ctx->Extensions.NV_texture_rectangle
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue