[Mesa-dev] [PATCH 2/3] softpipe: use provoking vertex for layer

sroland at vmware.com sroland at vmware.com
Wed Dec 2 16:35:09 PST 2015


From: Roland Scheidegger <sroland at vmware.com>

Same as for llvmpipe, albeit softpipe only really handles multiple layers,
not multiple viewports/scissors.
---
 src/gallium/drivers/softpipe/sp_setup.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/softpipe/sp_setup.c b/src/gallium/drivers/softpipe/sp_setup.c
index ff3cb9f..973803e 100644
--- a/src/gallium/drivers/softpipe/sp_setup.c
+++ b/src/gallium/drivers/softpipe/sp_setup.c
@@ -840,7 +840,7 @@ sp_setup_tri(struct setup_context *setup,
    setup->span.right[1] = 0;
    /*   setup->span.z_mode = tri_z_mode( setup->ctx ); */
    if (setup->softpipe->layer_slot > 0) {
-      layer = *(unsigned *)v1[setup->softpipe->layer_slot];
+      layer = *(unsigned *)setup->vprovoke[setup->softpipe->layer_slot];
       layer = MIN2(layer, setup->max_layer);
    }
    setup->quad[0].input.layer = layer;
@@ -1127,7 +1127,7 @@ sp_setup_line(struct setup_context *setup,
    setup->quad[0].input.x0 = setup->quad[0].input.y0 = -1;
    setup->quad[0].inout.mask = 0x0;
    if (setup->softpipe->layer_slot > 0) {
-      layer = *(unsigned *)v1[setup->softpipe->layer_slot];
+      layer = *(unsigned *)setup->vprovoke[setup->softpipe->layer_slot];
       layer = MIN2(layer, setup->max_layer);
    }
    setup->quad[0].input.layer = layer;
-- 
2.1.4



More information about the mesa-dev mailing list