From 5358682aa7b8d495c45991fcd750250883e78444 Mon Sep 17 00:00:00 2001 From: Alan Hourihane Date: Tue, 11 Jan 2005 09:52:10 +0000 Subject: [PATCH] Fix usage of texture units, when TEX1 is enabled, but not TEX0. --- src/mesa/drivers/dri/unichrome/via_tris.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/mesa/drivers/dri/unichrome/via_tris.c b/src/mesa/drivers/dri/unichrome/via_tris.c index 6fd5a2a64c4..660c6d7a49f 100644 --- a/src/mesa/drivers/dri/unichrome/via_tris.c +++ b/src/mesa/drivers/dri/unichrome/via_tris.c @@ -736,15 +736,16 @@ static void viaChooseVertexState( GLcontext *ctx ) EMIT_PAD( 1 ); } - if (index & _TNL_BIT_TEX(0)) { - if (vmesa->ptexHack) + /* If Texture unit 1 is enabled, we need to enable the first as well. */ + if (index & (_TNL_BIT_TEX(0) | _TNL_BIT_TEX(1))) { + if (vmesa->ptexHack && (index & _TNL_BIT_TEX(0))) EMIT_ATTR( _TNL_ATTRIB_TEX0, EMIT_3F_XYW, VIA_EMIT_PTEX0, (HC_HVPMSK_S | HC_HVPMSK_T) ); else EMIT_ATTR( _TNL_ATTRIB_TEX0, EMIT_2F, VIA_EMIT_TEX0, (HC_HVPMSK_S | HC_HVPMSK_T) ); } if (index & _TNL_BIT_TEX(1)) { - EMIT_ATTR( _TNL_ATTRIB_TEX1, EMIT_2F, VIA_EMIT_TEX1, 0 ); /* how does the hardware find out about this? */ + EMIT_ATTR( _TNL_ATTRIB_TEX1, EMIT_2F, VIA_EMIT_TEX1, 0 ); /* how does the hardware find out about this? */ } if (setupIndex != vmesa->setupIndex) { -- 2.30.2