From 0ebcd32e91486caccc041c8ca23e39e160b24702 Mon Sep 17 00:00:00 2001 From: marha Date: Mon, 24 Sep 2012 08:28:39 +0200 Subject: mesa pixman xserver git update 24 sep 2012 xserver: 7722bcbab2507d263c7685b15cccbfdd52fc3a24 pixman: c4b69e706e63e01fbc70e0026c2079007c89de14 mesa: c432c86e6aeebeb46c028af940224c59faa16e88 --- mesalib/docs/GL3.txt | 5 +- mesalib/docs/autoconf.html | 127 ++++++++++++------------ mesalib/docs/contents.html | 9 +- mesalib/docs/egl.html | 88 ++++++++++------- mesalib/docs/faq.html | 32 +++--- mesalib/docs/games.html | 72 -------------- mesalib/docs/gears.png | Bin 1608 -> 3467 bytes mesalib/docs/libraries.html | 65 ------------ mesalib/docs/lists.html | 7 +- mesalib/docs/modelers.html | 72 -------------- mesalib/docs/osmesa.html | 3 +- mesalib/docs/science.html | 78 --------------- mesalib/docs/utility.html | 43 -------- mesalib/docs/xlibdriver.html | 8 +- mesalib/src/mesa/drivers/common/meta.c | 141 ++++++++++++++++----------- mesalib/src/mesa/main/fbobject.c | 3 +- mesalib/src/mesa/main/ff_fragment_shader.cpp | 8 +- mesalib/src/mesa/main/teximage.c | 2 +- mesalib/src/mesa/main/texparam.c | 12 +++ 19 files changed, 254 insertions(+), 521 deletions(-) delete mode 100644 mesalib/docs/games.html delete mode 100644 mesalib/docs/libraries.html delete mode 100644 mesalib/docs/modelers.html delete mode 100644 mesalib/docs/science.html delete mode 100644 mesalib/docs/utility.html (limited to 'mesalib') diff --git a/mesalib/docs/GL3.txt b/mesalib/docs/GL3.txt index 24b70a1a2..876165fe9 100644 --- a/mesalib/docs/GL3.txt +++ b/mesalib/docs/GL3.txt @@ -138,10 +138,7 @@ ARB_ES3_compatibility not started ARB_clear_buffer_object not started ARB_compute_shader started (gallium) ARB_copy_image not started -ARB_debug_group not started -ARB_debug_label not started -ARB_debug_output DONE -ARB_debug_output2 not started +KHR_debug some work done (ARB_debug_output) ARB_explicit_uniform_location not started ARB_fragment_layer_viewport not started ARB_framebuffer_no_attachments not started diff --git a/mesalib/docs/autoconf.html b/mesalib/docs/autoconf.html index 0210bd1b2..a07a3ee14 100644 --- a/mesalib/docs/autoconf.html +++ b/mesalib/docs/autoconf.html @@ -24,7 +24,6 @@
  • DRI Driver Options
  • OSMesa Driver Options
  • -
  • Demo Program Options @@ -63,83 +62,107 @@ configuration run make realclean before rebuilding.

    Some of the generic autoconf options are used with Mesa: - -

    +directories.

    + +

    There are also a few general options for altering the Mesa build: -

    +architectures.

    + +

    2. Driver Options

    @@ -222,26 +245,6 @@ libraries that will be built. More details on the specific GL libraries can be found in the basic installation instructions. - -

    4. Demo Program Options

    - -

    -There are many demonstration programs in the MesaDemos tarball. If the -programs are available when ./configure is run, a subset of -the programs will be built depending on the driver and library options -chosen. See the directory progs for the full set of demos. - -

    -
    --with-demos=DEMOS,DEMOS,... -

    This option allows a -specific set of demo programs to be built. For example, ---with-demos="xdemos,slang". Beware that if this option is -used, it will not be ensured that the necessary GL libraries will be -available. -

    --without-demos

    This completely disables building the -demo programs. It is equivalent to --with-demos=no. -

    - diff --git a/mesalib/docs/contents.html b/mesalib/docs/contents.html index 94b538da1..b9a892201 100644 --- a/mesalib/docs/contents.html +++ b/mesalib/docs/contents.html @@ -41,6 +41,10 @@ @@ -85,11 +89,6 @@
  • OpenGL website
  • DRI website
  • freedesktop.org -
  • Games and Entertainment -
  • Libraries and Toolkits -
  • Modeling and Rendering -
  • Science and Technical -
  • Utilities Hosted by: diff --git a/mesalib/docs/egl.html b/mesalib/docs/egl.html index a77c12fe2..240cec53a 100644 --- a/mesalib/docs/egl.html +++ b/mesalib/docs/egl.html @@ -60,28 +60,32 @@ or more EGL drivers.

    There are several options that control the build of EGL at configuration time

    - +

    Use EGL

    @@ -132,8 +140,9 @@ mesa/demos repository.

    There are several environment variables that control the behavior of EGL at runtime

    - + +

    EGL Drivers

    - + +

    Packaging

    diff --git a/mesalib/docs/faq.html b/mesalib/docs/faq.html index 97b6491a7..dd4e7de0d 100644 --- a/mesalib/docs/faq.html +++ b/mesalib/docs/faq.html @@ -16,7 +16,7 @@

    Mesa Frequently Asked Questions

    -Last updated: 19 September 2012 +Last updated: 20 September 2012

    @@ -52,14 +52,18 @@ Mesa 9.x supports the OpenGL 3.1 specification.

    1.2 Does Mesa support/use graphics hardware?

    Yes. Specifically, Mesa serves as the OpenGL core for the open-source DRI -drivers for XFree86/X.org. See the DRI -website for more information. -

    -

    -There have been other hardware drivers for Mesa over the years (such as -the 3Dfx Glide/Voodoo driver, an old S3 driver, etc) but the DRI drivers -are the modern ones. +drivers for X.org.

    +

    1.3 What purpose does Mesa serve today?

    @@ -68,7 +72,7 @@ operating systems today. Still, Mesa serves at least these purposes:

    -After installing XFree86/X.org and the DRI drivers, some of these files +After installing X.org and the DRI drivers, some of these files may be symlinks into the /usr/X11R6/ tree.

    @@ -267,7 +271,7 @@ hardware it has detected.

    If your DRI-based driver isn't working, go to the -DRI website for trouble-shooting information. +DRI website for trouble-shooting information.

    diff --git a/mesalib/docs/games.html b/mesalib/docs/games.html deleted file mode 100644 index 0cdbec1df..000000000 --- a/mesalib/docs/games.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - Games - - - - -
    -

    The Mesa 3D Graphics Library

    -
    - - -
    - -

    Games

    - - - -
    - - diff --git a/mesalib/docs/gears.png b/mesalib/docs/gears.png index 4052b30ed..34393892c 100644 Binary files a/mesalib/docs/gears.png and b/mesalib/docs/gears.png differ diff --git a/mesalib/docs/libraries.html b/mesalib/docs/libraries.html deleted file mode 100644 index 779cf69fc..000000000 --- a/mesalib/docs/libraries.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - Libraries and Toolkits - - - - -
    -

    The Mesa 3D Graphics Library

    -
    - - -
    - -

    Libraries and Toolkits

    - -
      -
    • Apprentice - free OpenInventor work-alike -
    • Coin - OSS Open Inventor clone -
    • Ch - OpenGL bindings for the Ch C/C++ interpreter -
    • FOX - GUI Library -
    • GL4Java - a Java wrapper for OpenGL -
    • GtkGLArea - OpenGL Gtk widget -
    • GtkGLArea-- - OpenGL Gtk-- widget for C++ -
    • GTKpas - OpenGL Gtk widget for FreePascal -
    • FreeGLUT - a GLUT work-alike -
    • Fortran77/90 bindings for OpenGL and Mesa - by William Mitchell -
    • GLOW - a GUI toolkit for GLUT and OpenGL -
    • Glt - an OpenGL C++ toolkit -
    • GLUT (GL Utility Toolkit) - by Mark Kilgard -
    • GuileGL - OpenGL and GtkGLArea language bindings for Guile -
    • IDL - Interactive Data Language -
    • JX - C++ application framework and GUI library -
    • MAM/VRS - object-oriented toolkit for 3D graphics -
    • MINOS - GUI library -
    • OglCLib - C++ wrapper for OpenGL -
    • Open Inventor - the Open Inventor toolkit from SGI -
    • Open Inventor - the Open Inventor toolkit from Template Graphics Software, Inc. -
    • OpenRM -- Open Source, multithreaded, parallel scene graph API -
    • -Open SG PLUS - a scene-graph library -
    • Open Scene Graph - - a scene-graph library -
    • OpenVRML -- a VRML parsing/display library with "lookat" - an example VRML browser -
    • PLIB - A collection of portable games libraries, including an OpenGL GUI and a simple Scene Graph API -
    • Pryan - an OpenInventor-like toolkit -
    • PyOpenGL - OpenGL interface for Python -
    • Quesa - QuickDraw3D-compatible library based on OpenGL, Mesa or Direct3D -
    • repGL - IRIS GL emulated with OpenGL -
    • SciTech MGL - A multiplatform (Windows, Linux, OS/2, DOS, QNX, SMX, RT-Target & more) graphics library -
    • SGL - a 3D Scene Graph Library -
    • SoFree - a free implementation of Open Inventor -
    • Togl - Tcl/Tk widget for OpenGL -
    • View3D Widget - 3-D GUI widget -
    • VTK - Visualization Toolkit -
    • YAJOGL - Yet Another Java GL Binding. -
    - -
    - - diff --git a/mesalib/docs/lists.html b/mesalib/docs/lists.html index 1c35037e7..0ac07faf4 100644 --- a/mesalib/docs/lists.html +++ b/mesalib/docs/lists.html @@ -68,7 +68,12 @@ kernels, see the

    -
    +

    IRC

    + +

    join #dri-devel channel +on irc.freenode.net +

    +

    OpenGL Forums

    diff --git a/mesalib/docs/modelers.html b/mesalib/docs/modelers.html deleted file mode 100644 index 924a7b570..000000000 --- a/mesalib/docs/modelers.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - Modelers, Renderers and Viewers - - - - -
    -

    The Mesa 3D Graphics Library

    -
    - - -
    - -

    Modelers, Renderers and Viewers

    - - - -
    - - diff --git a/mesalib/docs/osmesa.html b/mesalib/docs/osmesa.html index 0ec67c44b..b0609cf88 100644 --- a/mesalib/docs/osmesa.html +++ b/mesalib/docs/osmesa.html @@ -34,8 +34,7 @@ more information about the API functions.

    -There are several examples of OSMesa in the progs/osdemos/ -directory. +There are several examples of OSMesa in the mesa/demos repository.

    diff --git a/mesalib/docs/science.html b/mesalib/docs/science.html deleted file mode 100644 index 74a24457e..000000000 --- a/mesalib/docs/science.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - Science and Technical - - - - -
    -

    The Mesa 3D Graphics Library

    -
    - - -
    - -

    Science and Technical

    - -
      -
    • Ch - OpenGL bindings for the Ch C/C++ interpreter -
    • DINO - Visualizing - Structural Biology -
    • General - Mesh Viewer (GMV) - scientific vis. -
    • GiD - finite element - analysis -
    • glpoisson - A finite - element analysis program that simulates wave in an arbitrary region. -
    • GLWaves - - Electromagnetic wave visualization -
    • Gmsh - - finite element mesh generator / viewer -
    • gOpenMol - - computational chemistry -
    • GPS 3D - GPS-based map visualization -
    • Hitchhiker - - virtual solar system -
    • Hydra - physics - and engineering pkg -
    • Light Speed - - a real-time, interactive relativistic simulator -
    • LinkWinds - scientific - vis -
    • MathGL3d - Mathematica viewer -
    • Mathworks - - mathematics and visualization -
    • Medit - 3D surface mesh viewer -
    • MOLMOL - - molecular modeling and analysis -
    • Molscript - molecular - modeling -
    • -
    • OpenDX - Data visualization - system -
    • -
    • ORSA - An interactive tool for Celestial Mechanics -
    • -
    • ParaView - Scientific visualization package -
    • ROOT - Object Oriented Data - Analysis Framework -
    • SLFFEA - GNU finite element - package -
    • Spock - molecular - modeling -
    • Ssystem - solar - system simulation -
    • Vis5D - - atmospheric visualization -
    • VMD - molecular - modeling -
    • Webots - 3-D mobile - robot simulator -
    • -
    - -
    - - diff --git a/mesalib/docs/utility.html b/mesalib/docs/utility.html deleted file mode 100644 index 14216d4d6..000000000 --- a/mesalib/docs/utility.html +++ /dev/null @@ -1,43 +0,0 @@ - - - - - Utilities - - - - -
    -

    The Mesa 3D Graphics Library

    -
    - - -
    - -

    Utilities

    - - - -
    - - diff --git a/mesalib/docs/xlibdriver.html b/mesalib/docs/xlibdriver.html index da72662c1..6b7b02903 100644 --- a/mesalib/docs/xlibdriver.html +++ b/mesalib/docs/xlibdriver.html @@ -150,10 +150,10 @@ Examples: % export MESA_GAMMA="2.0" // same gamma for R,G,B

    -The progs/demos/gamma.c program may help you to determine reasonable gamma -value for your display. With correct gamma values, the color intensities -displayed in the top row (drawn by dithering) should nearly match those -in the bottom row (drawn as grays). +The demos/gamma.c program in mesa/demos repository may help +you to determine reasonable gamma value for your display. With correct +gamma values, the color intensities displayed in the top row (drawn by +dithering) should nearly match those in the bottom row (drawn as grays).

    diff --git a/mesalib/src/mesa/drivers/common/meta.c b/mesalib/src/mesa/drivers/common/meta.c index 3b13ad7f1..28a79b0a0 100644 --- a/mesalib/src/mesa/drivers/common/meta.c +++ b/mesalib/src/mesa/drivers/common/meta.c @@ -269,6 +269,16 @@ struct bitmap_state struct temp_texture Tex; /**< separate texture from other meta ops */ }; +/** + * State for GLSL texture sampler which is used to generate fragment + * shader in _mesa_meta_generate_mipmap(). + */ +struct glsl_sampler { + const char *type; + const char *func; + const char *texcoords; + GLuint shader_prog; +}; /** * State for _mesa_meta_generate_mipmap() @@ -281,16 +291,12 @@ struct gen_mipmap_state GLuint Sampler; GLuint ShaderProg; GLuint IntegerShaderProg; -}; - -/** - * State for GLSL texture sampler which is used to generate fragment - * shader in _mesa_meta_generate_mipmap(). - */ -struct glsl_sampler { - const char *type; - const char *func; - const char *texcoords; + struct glsl_sampler sampler_1d; + struct glsl_sampler sampler_2d; + struct glsl_sampler sampler_3d; + struct glsl_sampler sampler_cubemap; + struct glsl_sampler sampler_1d_array; + struct glsl_sampler sampler_2d_array; }; /** @@ -2977,46 +2983,47 @@ setup_ff_generate_mipmap(struct gl_context *ctx, } -static void -setup_texture_sampler(GLenum target, struct glsl_sampler *sampler) +static struct glsl_sampler * +setup_texture_sampler(GLenum target, struct gen_mipmap_state *mipmap) { switch(target) { case GL_TEXTURE_1D: - sampler->type = "sampler1D"; - sampler->func = "texture1D"; - sampler->texcoords = "texCoords.x"; - break; + mipmap->sampler_1d.type = "sampler1D"; + mipmap->sampler_1d.func = "texture1D"; + mipmap->sampler_1d.texcoords = "texCoords.x"; + return &mipmap->sampler_1d; case GL_TEXTURE_2D: - sampler->type = "sampler2D"; - sampler->func = "texture2D"; - sampler->texcoords = "texCoords.xy"; - break; + mipmap->sampler_2d.type = "sampler2D"; + mipmap->sampler_2d.func = "texture2D"; + mipmap->sampler_2d.texcoords = "texCoords.xy"; + return &mipmap->sampler_2d; case GL_TEXTURE_3D: /* Code for mipmap generation with 3D textures is not used yet. * It's a sw fallback. */ - sampler->type = "sampler3D"; - sampler->func = "texture3D"; - sampler->texcoords = "texCoords"; - break; + mipmap->sampler_3d.type = "sampler3D"; + mipmap->sampler_3d.func = "texture3D"; + mipmap->sampler_3d.texcoords = "texCoords"; + return &mipmap->sampler_3d; case GL_TEXTURE_CUBE_MAP: - sampler->type = "samplerCube"; - sampler->func = "textureCube"; - sampler->texcoords = "texCoords"; - break; + mipmap->sampler_cubemap.type = "samplerCube"; + mipmap->sampler_cubemap.func = "textureCube"; + mipmap->sampler_cubemap.texcoords = "texCoords"; + return &mipmap->sampler_cubemap; case GL_TEXTURE_1D_ARRAY: - sampler->type = "sampler1DArray"; - sampler->func = "texture1DArray"; - sampler->texcoords = "texCoords.xy"; - break; + mipmap->sampler_1d_array.type = "sampler1DArray"; + mipmap->sampler_1d_array.func = "texture1DArray"; + mipmap->sampler_1d_array.texcoords = "texCoords.xy"; + return &mipmap->sampler_1d_array; case GL_TEXTURE_2D_ARRAY: - sampler->type = "sampler2DArray"; - sampler->func = "texture2DArray"; - sampler->texcoords = "texCoords"; - break; + mipmap->sampler_2d_array.type = "sampler2DArray"; + mipmap->sampler_2d_array.func = "texture2DArray"; + mipmap->sampler_2d_array.texcoords = "texCoords"; + return &mipmap->sampler_2d_array; default: _mesa_problem(NULL, "Unexpected texture target 0x%x in" " setup_texture_sampler()\n", target); + return NULL; } } @@ -3029,7 +3036,7 @@ setup_glsl_generate_mipmap(struct gl_context *ctx, struct vertex { GLfloat x, y, tex[3]; }; - struct glsl_sampler sampler; + struct glsl_sampler *sampler; const char *vs_source; const char *fs_template; @@ -3099,24 +3106,31 @@ setup_glsl_generate_mipmap(struct gl_context *ctx, } /* Check if already initialized */ - if (mipmap->ArrayObj != 0) - return; - /* create vertex array object */ - _mesa_GenVertexArrays(1, &mipmap->ArrayObj); - _mesa_BindVertexArray(mipmap->ArrayObj); + if (mipmap->ArrayObj == 0) { - /* create vertex array buffer */ - _mesa_GenBuffersARB(1, &mipmap->VBO); - _mesa_BindBufferARB(GL_ARRAY_BUFFER_ARB, mipmap->VBO); + /* create vertex array object */ + _mesa_GenVertexArrays(1, &mipmap->ArrayObj); + _mesa_BindVertexArray(mipmap->ArrayObj); - /* setup vertex arrays */ - _mesa_VertexAttribPointerARB(0, 2, GL_FLOAT, GL_FALSE, - sizeof(struct vertex), OFFSET(x)); - _mesa_VertexAttribPointerARB(1, 3, GL_FLOAT, GL_FALSE, - sizeof(struct vertex), OFFSET(tex)); + /* create vertex array buffer */ + _mesa_GenBuffersARB(1, &mipmap->VBO); + _mesa_BindBufferARB(GL_ARRAY_BUFFER_ARB, mipmap->VBO); + + /* setup vertex arrays */ + _mesa_VertexAttribPointerARB(0, 2, GL_FLOAT, GL_FALSE, + sizeof(struct vertex), OFFSET(x)); + _mesa_VertexAttribPointerARB(1, 3, GL_FLOAT, GL_FALSE, + sizeof(struct vertex), OFFSET(tex)); + } /* Generate a fragment shader program appropriate for the texture target */ - setup_texture_sampler(target, &sampler); + sampler = setup_texture_sampler(target, mipmap); + assert(sampler != NULL); + if (sampler->shader_prog != 0) { + mipmap->ShaderProg = sampler->shader_prog; + return; + } + mem_ctx = ralloc_context(NULL); if (ctx->Const.GLSLVersion < 130) { @@ -3125,13 +3139,13 @@ setup_glsl_generate_mipmap(struct gl_context *ctx, "require" : "disable"; fs_source = ralloc_asprintf(mem_ctx, fs_template, - extension_mode, sampler.type, - sampler.func, sampler.texcoords); + extension_mode, sampler->type, + sampler->func, sampler->texcoords); } else { fs_source = ralloc_asprintf(mem_ctx, fs_template, - sampler.type, "vec4", - sampler.texcoords); + sampler->type, "vec4", + sampler->texcoords); } vs = compile_shader_with_debug(ctx, GL_VERTEX_SHADER, vs_source); @@ -3147,6 +3161,7 @@ setup_glsl_generate_mipmap(struct gl_context *ctx, _mesa_EnableVertexAttribArrayARB(0); _mesa_EnableVertexAttribArrayARB(1); link_program_with_debug(ctx, mipmap->ShaderProg); + sampler->shader_prog = mipmap->ShaderProg; ralloc_free(mem_ctx); if ((_mesa_is_desktop_gl(ctx) && ctx->Const.GLSLVersion >= 130) || @@ -3181,8 +3196,20 @@ meta_glsl_generate_mipmap_cleanup(struct gl_context *ctx, mipmap->ArrayObj = 0; _mesa_DeleteBuffersARB(1, &mipmap->VBO); mipmap->VBO = 0; - _mesa_DeleteObjectARB(mipmap->ShaderProg); - mipmap->ShaderProg = 0; + + _mesa_DeleteObjectARB(mipmap->sampler_1d.shader_prog); + _mesa_DeleteObjectARB(mipmap->sampler_2d.shader_prog); + _mesa_DeleteObjectARB(mipmap->sampler_3d.shader_prog); + _mesa_DeleteObjectARB(mipmap->sampler_cubemap.shader_prog); + _mesa_DeleteObjectARB(mipmap->sampler_1d_array.shader_prog); + _mesa_DeleteObjectARB(mipmap->sampler_2d_array.shader_prog); + + mipmap->sampler_1d.shader_prog = 0; + mipmap->sampler_2d.shader_prog = 0; + mipmap->sampler_3d.shader_prog = 0; + mipmap->sampler_cubemap.shader_prog = 0; + mipmap->sampler_1d_array.shader_prog = 0; + mipmap->sampler_2d_array.shader_prog = 0; if (mipmap->IntegerShaderProg) { _mesa_DeleteObjectARB(mipmap->IntegerShaderProg); diff --git a/mesalib/src/mesa/main/fbobject.c b/mesalib/src/mesa/main/fbobject.c index 1736899cb..9cde52ae6 100644 --- a/mesalib/src/mesa/main/fbobject.c +++ b/mesalib/src/mesa/main/fbobject.c @@ -2792,7 +2792,8 @@ compatible_resolve_formats(const struct gl_renderbuffer *colorReadRb, { /* The simple case where we know the backing formats are the same. */ - if (colorReadRb->Format == colorDrawRb->Format) { + if (_mesa_get_srgb_format_linear(colorReadRb->Format) == + _mesa_get_srgb_format_linear(colorDrawRb->Format)) { return GL_TRUE; } diff --git a/mesalib/src/mesa/main/ff_fragment_shader.cpp b/mesalib/src/mesa/main/ff_fragment_shader.cpp index e850d47dd..f21cf80ae 100644 --- a/mesalib/src/mesa/main/ff_fragment_shader.cpp +++ b/mesalib/src/mesa/main/ff_fragment_shader.cpp @@ -890,10 +890,10 @@ emit_texenv(struct texenv_fragment_program *p, GLuint unit) } else { float const_data[4] = { - 1 << rgb_shift, - 1 << rgb_shift, - 1 << rgb_shift, - 1 << alpha_shift + float(1 << rgb_shift), + float(1 << rgb_shift), + float(1 << rgb_shift), + float(1 << alpha_shift) }; shift = new(p->mem_ctx) ir_constant(glsl_type::vec4_type, (ir_constant_data *)const_data); diff --git a/mesalib/src/mesa/main/teximage.c b/mesalib/src/mesa/main/teximage.c index 83e79a5a3..08af66893 100644 --- a/mesalib/src/mesa/main/teximage.c +++ b/mesalib/src/mesa/main/teximage.c @@ -2746,7 +2746,7 @@ _mesa_choose_texture_format(struct gl_context *ctx, /* If the application requested compression to an S3TC format but we don't * have the DTXn library, force a generic compressed format instead. */ - if (internalFormat != format) { + if (internalFormat != format && format != GL_NONE) { const GLenum before = internalFormat; switch (internalFormat) { diff --git a/mesalib/src/mesa/main/texparam.c b/mesalib/src/mesa/main/texparam.c index 63a63b732..f73e2b5f0 100644 --- a/mesalib/src/mesa/main/texparam.c +++ b/mesalib/src/mesa/main/texparam.c @@ -1440,6 +1440,12 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ) *params = (GLfloat) obj->Immutable; break; + case GL_TEXTURE_SRGB_DECODE_EXT: + if (!ctx->Extensions.EXT_texture_sRGB_decode) + goto invalid_pname; + *params = (GLfloat) obj->Sampler.sRGBDecode; + break; + default: goto invalid_pname; } @@ -1612,6 +1618,12 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) *params = obj->RequiredTextureImageUnits; break; + case GL_TEXTURE_SRGB_DECODE_EXT: + if (!ctx->Extensions.EXT_texture_sRGB_decode) + goto invalid_pname; + *params = obj->Sampler.sRGBDecode; + break; + default: goto invalid_pname; } -- cgit v1.2.3