From fcc7a1e7b6d6bc149938c1203a55e1ede3517af5 Mon Sep 17 00:00:00 2001 From: Gert Wollny Date: Tue, 14 Jul 2020 15:28:00 +0200 Subject: [PATCH] gallium/aux: reorder vertex attributes in triangle fans according to PV With triangle fans when "first vertex convention" is active the provoking vertex is actually the second vertex so that the different triangle can have different colors with flat shading. Take this into account when re-ordering the vertex indices (as proposed by Erik) Signed-off-by: Gert Wollny Reviewed-by: Erik Faye-Lund Part-of: --- src/gallium/auxiliary/indices/u_indices_gen.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/gallium/auxiliary/indices/u_indices_gen.py b/src/gallium/auxiliary/indices/u_indices_gen.py index 2d08072c41a..3c64bb213e4 100644 --- a/src/gallium/auxiliary/indices/u_indices_gen.py +++ b/src/gallium/auxiliary/indices/u_indices_gen.py @@ -294,7 +294,11 @@ def trifan(intype, outtype, inpv, outpv, pr): print(' start = i;') prim_restart(3, 3, 1, close_func) - do_tri( intype, outtype, 'out+j', 'start', 'i+1', 'i+2', inpv, outpv ); + if inpv == FIRST: + do_tri( intype, outtype, 'out+j', 'i+1', 'i+2', 'start', inpv, outpv ); + else: + do_tri( intype, outtype, 'out+j', 'start', 'i+1', 'i+2', inpv, outpv ); + print(' }') postamble() -- 2.30.2