On Mon, Sep 24, 2012 at 4:49 PM, Paul Berry <stereotype...@gmail.com> wrote: > GLES 3 supports sRGB functionality, but it does not expose the > GL_FRAMEBUFFER_SRGB enable/disable bit. Instead the implementation > is expected to behave as though that bit is always enabled. > > This patch ensures that ctx->Color.sRGBEnabled (the internal variable > tracking GL_FRAMEBUFFER_SRG) is initially true in GLES 2/3 contexts,
And, changing this default state is okay for GLES2? SRG => SRGB Series: Reviewed-by: Jordan Justen <jordan.l.jus...@intel.com> > and that it cannot be modified through the GLES 3 API. > --- > src/mesa/main/blend.c | 7 +++++++ > src/mesa/main/enable.c | 4 ++-- > 2 files changed, 9 insertions(+), 2 deletions(-) > > diff --git a/src/mesa/main/blend.c b/src/mesa/main/blend.c > index de871a9..5d55311 100644 > --- a/src/mesa/main/blend.c > +++ b/src/mesa/main/blend.c > @@ -858,6 +858,13 @@ void _mesa_init_color( struct gl_context * ctx ) > ctx->Color._ClampFragmentColor = GL_TRUE; > ctx->Color.ClampReadColor = GL_FIXED_ONLY_ARB; > ctx->Color._ClampReadColor = GL_TRUE; > + > + if (ctx->API == API_OPENGLES2) { > + /* GLES 3 behaves as though GL_FRAMEBUFFER_SRGB is always enabled. */ > + ctx->Color.sRGBEnabled = GL_TRUE; > + } else { > + ctx->Color.sRGBEnabled = GL_FALSE; > + } > } > > /*@}*/ > diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c > index 676cd9b..a607bdc 100644 > --- a/src/mesa/main/enable.c > +++ b/src/mesa/main/enable.c > @@ -1061,7 +1061,7 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, > GLboolean state) > > /* GL3.0 - GL_framebuffer_sRGB */ > case GL_FRAMEBUFFER_SRGB_EXT: > - if (!_mesa_is_desktop_gl(ctx) && !_mesa_is_gles3(ctx)) > + if (!_mesa_is_desktop_gl(ctx)) > goto invalid_enum_error; > CHECK_EXTENSION(EXT_framebuffer_sRGB, cap); > _mesa_set_framebuffer_srgb(ctx, state); > @@ -1715,7 +1715,7 @@ _mesa_IsEnabled( GLenum cap ) > > /* GL3.0 - GL_framebuffer_sRGB */ > case GL_FRAMEBUFFER_SRGB_EXT: > - if (!_mesa_is_desktop_gl(ctx) && !_mesa_is_gles3(ctx)) > + if (!_mesa_is_desktop_gl(ctx)) > goto invalid_enum_error; > CHECK_EXTENSION(EXT_framebuffer_sRGB); > return ctx->Color.sRGBEnabled; > -- > 1.7.12.1 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev