[Mesa-dev] [PATCH v2] i965: do not round line width when multisampling or antialiaing are enabled

Iago Toral itoral at igalia.com
Wed Jun 10 23:05:58 PDT 2015


On Wed, 2015-06-10 at 17:03 -0700, Kenneth Graunke wrote:
> On Wednesday, June 10, 2015 09:07:32 AM Iago Toral Quiroga wrote:
> > In commit fe74fee8fa721a we rounded the line width to the nearest integer to
> > match the GLES3 spec requirements stated in section 13.4.2.1, but that seems
> > to break a dEQP test that renders wide lines in some multisampling scenarios.
> > 
> > Ian noted that the Open 4.4 spec has the following similar text:
> > 
> >     "The actual width of non-antialiased lines is determined by rounding the
> >     supplied width to the nearest integer, then clamping it to the
> >     implementation-dependent maximum non-antialiased line width."
> > 
> > and suggested that when ES removed antialiased lines, they removed
> > "non-antialised" from that paragraph but probably should not have.
> > 
> > Going by that note, this patch restricts the quantization implemented in
> > fe74fee8fa721a only to regular aliased lines. This seems to keep the
> > tests fixed with that commit passing while fixing the broken test.
> > 
> > v2:
> >   - Drop one of the clamps (Ken, Marius)
> >   - Add a rule to prevent advertising line widths that when rounded go beyond
> >     the limits allowed by the hardware (Ken)
> >   - Update comments in the code accordingly (Ian)
> >   - Put the code in a utility function (Ian)
> > 
> > Fixes:
> > dEQP-GLES3.functional.rasterization.fbo.rbo_multisample_max.primitives.lines_wide
> > 
> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90749
> 
> Looks good to me.  Thanks for doing this!
> 
> Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
> 
> By the way, I noticed that Marius' line-width < 1.5 code never got added
> to gen8_sf_state.c, so a couple Piglit tests fail still.  It might be
> nice to put that in the helper function too.  Feel like making a
> follow-up patch?

Sure, I'll take care of that.

Iago



More information about the mesa-dev mailing list