From bea6539abff17f39c822ac9c1c94f8249c396b18 Mon Sep 17 00:00:00 2001 From: Zhenyu Wang Date: Tue, 4 Jan 2011 15:25:43 +0800 Subject: [PATCH] i965: Use last vertex convention for quad provoking vertex on sandybridge Until we know how hw converts quads to polygon in beginning of 3D pipeline, for now unconditionally use last vertex convention. Fix glean/clipFlat case. --- src/mesa/drivers/dri/i965/brw_context.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c index 28549f2..8fc322f 100644 --- a/src/mesa/drivers/dri/i965/brw_context.c +++ b/src/mesa/drivers/dri/i965/brw_context.c @@ -151,6 +151,13 @@ GLboolean brwCreateContext( int api, MIN2(ctx->Const.FragmentProgram.MaxNativeParameters, ctx->Const.FragmentProgram.MaxEnvParams); + /* Gen6 converts quads to polygon in beginning of 3D pipeline, + but we're not sure how it's actually done for vertex order, + that affect provoking vertex decision. Always use last vertex + convention for quad primitive which works as expected for now. */ + if (intel->gen == 6) + ctx->Const.QuadsFollowProvokingVertexConvention = GL_FALSE; + if (intel->is_g4x || intel->gen >= 5) { brw->CMD_VF_STATISTICS = CMD_VF_STATISTICS_GM45; brw->CMD_PIPELINE_SELECT = CMD_PIPELINE_SELECT_GM45; -- 2.7.4