[Mesa-stable] [Mesa-dev] [PATCH 06/14] meta: Don't do fragment color clamping in case of ReadPixels
Iago Toral
itoral at igalia.com
Tue Jul 21 01:18:03 PDT 2015
On Tue, 2015-07-21 at 09:24 +0200, Iago Toral wrote:
> On Tue, 2015-06-16 at 11:15 -0700, Anuj Phogat wrote:
> > Without this patch, piglit test arb_color_buffer_float-readpixels
> > fails, when forced to use the meta pbo path.
> >
> > Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
> > Cc: <mesa-stable at lists.freedesktop.org>
> > ---
> > src/mesa/drivers/common/meta_tex_subimage.c | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/src/mesa/drivers/common/meta_tex_subimage.c b/src/mesa/drivers/common/meta_tex_subimage.c
> > index 84cbc50..ccb7dfb 100644
> > --- a/src/mesa/drivers/common/meta_tex_subimage.c
> > +++ b/src/mesa/drivers/common/meta_tex_subimage.c
> > @@ -25,6 +25,7 @@
> > * Jason Ekstrand <jason.ekstrand at intel.com>
> > */
> >
> > +#include "blend.h"
> > #include "bufferobj.h"
> > #include "buffers.h"
> > #include "fbobject.h"
> > @@ -305,6 +306,10 @@ _mesa_meta_pbo_GetTexSubImage(struct gl_context *ctx, GLuint dims,
> > _mesa_meta_begin(ctx, ~(MESA_META_PIXEL_TRANSFER |
> > MESA_META_PIXEL_STORE));
> >
> > + /* GL_CLAMP_FRAGMENT_COLOR doesn't affect ReadPixels. */
> > + if (!tex_image && ctx->Extensions.ARB_color_buffer_float)
> > + _mesa_ClampColor(GL_CLAMP_FRAGMENT_COLOR, GL_FALSE);
> > +
>
> I think you need to restore the original value of
> GL_CLAMP_FRAGMENT_COLOR after you are done with ReadPixels, otherwise
> it looks like you would be changing the setting for future API calls
> too.
Oh, I just noticed that this setting is already being considered in the
state flags passed to _mesa_meta_begin, so ignore that comment.
> Also, does this only apply to ReadPixels and not to GetTexImage? That
> looks odd to me.
>
> Iago
>
> > _mesa_GenFramebuffers(2, fbos);
> >
> > if (tex_image && tex_image->TexObject->Target == GL_TEXTURE_1D_ARRAY) {
>
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-stable
mailing list