<div dir="auto"><div><br><div class="gmail_extra"><br><div class="gmail_quote">On Dec 29, 2016 4:58 PM, "Kenneth Graunke" <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>> wrote:<br type="attribution"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="elided-text">On Thursday, December 29, 2016 1:25:57 PM PST Chad Versace wrote:<br>
> Fixes tests 'dEQP-GLES3.functional.<wbr>texture.mipmap.*.generate.<wbr>rgba5551*' on<br>
> Intel Broadwell 0x1616.<br>
><br>
> The GL 4.5 spec describes the algorithm of glGenerateMipmap as:<br>
><br>
>     The contents of the derived images are computed by repeated, filtered<br>
>     reduction of the level base image.  [...] No particular filter algorithm is<br>
>     required, though a box filter is recommended as the default filter.<br>
><br>
> Consider a texture for which all pixels are identical at level 0.<br>
> From the spec's description above, one may reasonably assume that the "filtered<br>
> reduction" of level 0 produces a new miplevel for which again all pixels are<br>
> identical. For any 2x2 subspan of identical pixels, it is difficult to see how<br>
> the "filtered reduction" of that subspan can produce a pixel that differs from<br>
> the source pixels.<br>
><br>
> Dithering during _mesa_meta_GenerateMipmap() violated that reasonable<br>
> assumption.<br>
><br>
> Bugzilla: <a href="https://bugs.freedesktop.org/show_bug.cgi?id=99210" rel="noreferrer" target="_blank">https://bugs.freedesktop.org/<wbr>show_bug.cgi?id=99210</a><br>
> Cc: <a href="mailto:mesa-stable@lists.freedesktop.org">mesa-stable@lists.freedesktop.<wbr>org</a><br>
> ---<br>
>  src/mesa/drivers/common/meta_<wbr>generate_mipmap.c | 1 +<br>
>  1 file changed, 1 insertion(+)<br>
><br>
> diff --git a/src/mesa/drivers/common/<wbr>meta_generate_mipmap.c b/src/mesa/drivers/common/<wbr>meta_generate_mipmap.c<br>
> index bbe9d6d886..55093e9553 100644<br>
> --- a/src/mesa/drivers/common/<wbr>meta_generate_mipmap.c<br>
> +++ b/src/mesa/drivers/common/<wbr>meta_generate_mipmap.c<br>
> @@ -182,6 +182,7 @@ _mesa_meta_GenerateMipmap(<wbr>struct gl_context *ctx, GLenum target,<br>
><br>
>     _mesa_meta_begin(ctx, MESA_META_ALL & ~MESA_META_DRAW_BUFFERS);<br>
>     _mesa_ColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);<br>
> +   _mesa_Disable(GL_DITHER);<br>
><br>
>     /* Choose between glsl version and fixed function version of<br>
>      * GenerateMipmap function.<br>
><br>
<br>
</div>Good catch!  That makes sense.  I verified that the meta begin flags<br>
will restore the dither mode at the end.<br></blockquote></div></div></div><div dir="auto"><br></div><div dir="auto">Die meta! Die!</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Reviewed-by: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>><br>
<br>______________________________<wbr>_________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/mesa-dev</a><br>
<br></blockquote></div><br></div></div></div>