diff options
Diffstat (limited to 'mesalib/src/mesa/main')
-rw-r--r-- | mesalib/src/mesa/main/extensions.c | 1 | ||||
-rw-r--r-- | mesalib/src/mesa/main/mtypes.h | 3 | ||||
-rw-r--r-- | mesalib/src/mesa/main/queryobj.c | 2 | ||||
-rw-r--r-- | mesalib/src/mesa/main/samplerobj.c | 3 | ||||
-rw-r--r-- | mesalib/src/mesa/main/texstate.c | 8 |
5 files changed, 14 insertions, 3 deletions
diff --git a/mesalib/src/mesa/main/extensions.c b/mesalib/src/mesa/main/extensions.c index f60157f8c..88fcde3b9 100644 --- a/mesalib/src/mesa/main/extensions.c +++ b/mesalib/src/mesa/main/extensions.c @@ -311,6 +311,7 @@ static const struct extension extension_table[] = { { "GL_IBM_texture_mirrored_repeat", o(dummy_true), GLL, 1998 }, { "GL_INGR_blend_func_separate", o(EXT_blend_func_separate), GLL, 1999 }, { "GL_MESA_pack_invert", o(MESA_pack_invert), GL, 2002 }, + { "GL_MESA_shader_integer_mix", o(MESA_shader_integer_mix), GL | ES3, 2013 }, { "GL_MESA_texture_array", o(MESA_texture_array), GLL, 2007 }, { "GL_MESA_texture_signed_rgba", o(EXT_texture_snorm), GL, 2009 }, { "GL_MESA_window_pos", o(dummy_true), GLL, 2000 }, diff --git a/mesalib/src/mesa/main/mtypes.h b/mesalib/src/mesa/main/mtypes.h index ef16c5910..ca7111e50 100644 --- a/mesalib/src/mesa/main/mtypes.h +++ b/mesalib/src/mesa/main/mtypes.h @@ -3154,8 +3154,9 @@ struct gl_extensions GLboolean ATI_fragment_shader; GLboolean ATI_separate_stencil; GLboolean MESA_pack_invert; - GLboolean MESA_ycbcr_texture; + GLboolean MESA_shader_integer_mix; GLboolean MESA_texture_array; + GLboolean MESA_ycbcr_texture; GLboolean NV_conditional_render; GLboolean NV_fog_distance; GLboolean NV_fragment_program_option; diff --git a/mesalib/src/mesa/main/queryobj.c b/mesalib/src/mesa/main/queryobj.c index eb79e457e..414724747 100644 --- a/mesalib/src/mesa/main/queryobj.c +++ b/mesalib/src/mesa/main/queryobj.c @@ -43,7 +43,7 @@ struct gl_query_object * _mesa_new_query_object(struct gl_context *ctx, GLuint id) { - struct gl_query_object *q = MALLOC_STRUCT(gl_query_object); + struct gl_query_object *q = CALLOC_STRUCT(gl_query_object); (void) ctx; if (q) { q->Id = id; diff --git a/mesalib/src/mesa/main/samplerobj.c b/mesalib/src/mesa/main/samplerobj.c index 39cfcd086..c3b612c76 100644 --- a/mesalib/src/mesa/main/samplerobj.c +++ b/mesalib/src/mesa/main/samplerobj.c @@ -569,7 +569,8 @@ static GLuint set_sampler_cube_map_seamless(struct gl_context *ctx, struct gl_sampler_object *samp, GLboolean param) { - if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) + if (!_mesa_is_desktop_gl(ctx) + || !ctx->Extensions.AMD_seamless_cubemap_per_texture) return INVALID_PNAME; if (samp->CubeMapSeamless == param) diff --git a/mesalib/src/mesa/main/texstate.c b/mesalib/src/mesa/main/texstate.c index dad69a8f6..ad80dcfaa 100644 --- a/mesalib/src/mesa/main/texstate.c +++ b/mesalib/src/mesa/main/texstate.c @@ -810,6 +810,14 @@ _mesa_init_texture(struct gl_context *ctx) ctx->Texture.CurrentUnit = 0; /* multitexture */ ctx->Texture._EnabledUnits = 0x0; + /* Appendix F.2 of the OpenGL ES 3.0 spec says: + * + * "OpenGL ES 3.0 requires that all cube map filtering be + * seamless. OpenGL ES 2.0 specified that a single cube map face be + * selected and used for filtering." + */ + ctx->Texture.CubeMapSeamless = _mesa_is_gles3(ctx); + for (u = 0; u < Elements(ctx->Texture.Unit); u++) init_texture_unit(ctx, u); |