From: Kenneth Graunke Date: Wed, 26 Apr 2017 21:28:49 +0000 (-0700) Subject: i965: Use true AA line distance on G45/Ironlake. X-Git-Tag: upstream/18.1.0~10343 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b625bcc601a16fab1962f9ed569700d3d08738b9;p=platform%2Fupstream%2Fmesa.git i965: Use true AA line distance on G45/Ironlake. The original Broadwater and Crestline platforms computed antialiased line distances using "manhattan" distance, aka a + b = c. Eaglelake and Cantiga added "true" distance, which apparently does something like max(a, b) + min(a, b) / 4. Not exactly "true", but at least more accurate. The G45 documentation indicates that the old manhattan distance setting is "only for debug purposes" and should never be used. The Ironlake documentation no longer mentions AALINEDISTANCE_MANHATTAN, though it does still contain the narrative about the feature. At any rate, we should use the more accurate mode. Reviewed-by: Plamena Manolova Reviewed-by: Francisco Jerez --- diff --git a/src/mesa/drivers/dri/i965/brw_sf_state.c b/src/mesa/drivers/dri/i965/brw_sf_state.c index e919f5d..d50ceb1 100644 --- a/src/mesa/drivers/dri/i965/brw_sf_state.c +++ b/src/mesa/drivers/dri/i965/brw_sf_state.c @@ -265,7 +265,7 @@ static void upload_sf_unit( struct brw_context *brw ) /* _NEW_PROGRAM | _NEW_POINT */ sf->sf7.use_point_size_state = !(ctx->VertexProgram.PointSizeEnabled || ctx->Point._Attenuated); - sf->sf7.aa_line_distance_mode = 0; + sf->sf7.aa_line_distance_mode = brw->is_g4x || brw->gen == 5; /* might be BRW_NEW_PRIMITIVE if we have to adjust pv for polygons: * _NEW_LIGHT