From a3ddc80ec84533329af6540108230b079858c378 Mon Sep 17 00:00:00 2001 From: Axel Davy Date: Sun, 25 Sep 2016 02:05:28 +0200 Subject: [PATCH] st/nine: Enable passthrough only if positiont is used Wine tests for the passthrough feature are for positiont. Nothing seems to indicate passthrough happens when positiont it not used. However having passthrough with positiont makes sense (to be used with ProcessVertices outputs). Signed-off-by: Axel Davy --- src/gallium/state_trackers/nine/nine_ff.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/state_trackers/nine/nine_ff.c b/src/gallium/state_trackers/nine/nine_ff.c index ce19b9ba3dd..d0a8361b673 100644 --- a/src/gallium/state_trackers/nine/nine_ff.c +++ b/src/gallium/state_trackers/nine/nine_ff.c @@ -1584,6 +1584,8 @@ nine_ff_get_vs(struct NineDevice9 *device) key.passthrough &= ~((1 << NINE_DECLUSAGE_POSITION) | (1 << NINE_DECLUSAGE_PSIZE) | (1 << NINE_DECLUSAGE_TEXCOORD) | (1 << NINE_DECLUSAGE_POSITIONT) | (1 << NINE_DECLUSAGE_TESSFACTOR) | (1 << NINE_DECLUSAGE_SAMPLE)); + if (!key.position_t) + key.passthrough = 0; key.pointscale = !!state->rs[D3DRS_POINTSCALEENABLE]; key.lighting = !!state->rs[D3DRS_LIGHTING] && state->ff.num_lights_active; -- 2.30.2