mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-23 09:00:10 +01:00
mesa: ARB_texture_view get parameters
Add support for ARB_texture_view get parameters: GL_TEXTURE_VIEW_MIN_LEVEL GL_TEXTURE_VIEW_NUM_LEVELS GL_TEXTURE_VIEW_MIN_LAYER GL_TEXTURE_VIEW_NUM_LAYERS Incorporate feedback regarding when to allow query of GL_TEXTURE_IMMUTABLE_LEVELS. Signed-off-by: Courtney Goeltzenleuchter <courtney@LunarG.com> Reviewed-by: Brian Paul <brianp@vmware.com>
This commit is contained in:
parent
668f3614ca
commit
f1563e6392
1 changed files with 56 additions and 4 deletions
|
|
@ -1558,9 +1558,35 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params )
|
|||
break;
|
||||
|
||||
case GL_TEXTURE_IMMUTABLE_LEVELS:
|
||||
if (!_mesa_is_gles3(ctx))
|
||||
goto invalid_pname;
|
||||
if (_mesa_is_gles3(ctx) ||
|
||||
(_mesa_is_desktop_gl(ctx) && ctx->Extensions.ARB_texture_view))
|
||||
*params = (GLfloat) obj->ImmutableLevels;
|
||||
else
|
||||
goto invalid_pname;
|
||||
break;
|
||||
|
||||
case GL_TEXTURE_VIEW_MIN_LEVEL:
|
||||
if (!ctx->Extensions.ARB_texture_view)
|
||||
goto invalid_pname;
|
||||
*params = (GLfloat) obj->MinLevel;
|
||||
break;
|
||||
|
||||
case GL_TEXTURE_VIEW_NUM_LEVELS:
|
||||
if (!ctx->Extensions.ARB_texture_view)
|
||||
goto invalid_pname;
|
||||
*params = (GLfloat) obj->NumLevels;
|
||||
break;
|
||||
|
||||
case GL_TEXTURE_VIEW_MIN_LAYER:
|
||||
if (!ctx->Extensions.ARB_texture_view)
|
||||
goto invalid_pname;
|
||||
*params = (GLfloat) obj->MinLayer;
|
||||
break;
|
||||
|
||||
case GL_TEXTURE_VIEW_NUM_LAYERS:
|
||||
if (!ctx->Extensions.ARB_texture_view)
|
||||
goto invalid_pname;
|
||||
*params = (GLfloat) obj->NumLayers;
|
||||
break;
|
||||
|
||||
case GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES:
|
||||
|
|
@ -1742,9 +1768,35 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params )
|
|||
break;
|
||||
|
||||
case GL_TEXTURE_IMMUTABLE_LEVELS:
|
||||
if (!_mesa_is_gles3(ctx))
|
||||
goto invalid_pname;
|
||||
if (_mesa_is_gles3(ctx) ||
|
||||
(_mesa_is_desktop_gl(ctx) && ctx->Extensions.ARB_texture_view))
|
||||
*params = obj->ImmutableLevels;
|
||||
else
|
||||
goto invalid_pname;
|
||||
break;
|
||||
|
||||
case GL_TEXTURE_VIEW_MIN_LEVEL:
|
||||
if (!ctx->Extensions.ARB_texture_view)
|
||||
goto invalid_pname;
|
||||
*params = (GLint) obj->MinLevel;
|
||||
break;
|
||||
|
||||
case GL_TEXTURE_VIEW_NUM_LEVELS:
|
||||
if (!ctx->Extensions.ARB_texture_view)
|
||||
goto invalid_pname;
|
||||
*params = (GLint) obj->NumLevels;
|
||||
break;
|
||||
|
||||
case GL_TEXTURE_VIEW_MIN_LAYER:
|
||||
if (!ctx->Extensions.ARB_texture_view)
|
||||
goto invalid_pname;
|
||||
*params = (GLint) obj->MinLayer;
|
||||
break;
|
||||
|
||||
case GL_TEXTURE_VIEW_NUM_LAYERS:
|
||||
if (!ctx->Extensions.ARB_texture_view)
|
||||
goto invalid_pname;
|
||||
*params = (GLint) obj->NumLayers;
|
||||
break;
|
||||
|
||||
case GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue