From: Alan Hourihane Date: Tue, 11 Jan 2005 17:09:47 +0000 (+0000) Subject: Fix the calculation of the alpha reference value which negates the X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=5b5e6cc120727a38592d7e4d240ed54f759f446d;p=mesa.git Fix the calculation of the alpha reference value which negates the need for the big nasty fallback - so I've commented out that code. --- diff --git a/src/mesa/drivers/dri/unichrome/via_state.c b/src/mesa/drivers/dri/unichrome/via_state.c index 5fcc60d2749..2437e061c20 100644 --- a/src/mesa/drivers/dri/unichrome/via_state.c +++ b/src/mesa/drivers/dri/unichrome/via_state.c @@ -1299,7 +1299,7 @@ static void viaChooseColorState(GLcontext *ctx) if (ctx->Color.AlphaEnabled) { vmesa->regEnable |= HC_HenAT_MASK; - vmesa->regHATMD = (((GLchan)ctx->Color.AlphaRef) & 0xFF) | + vmesa->regHATMD = FLOAT_TO_UBYTE(ctx->Color.AlphaRef) | ((ctx->Color.AlphaFunc - GL_NEVER) << 8); } else { @@ -1617,12 +1617,16 @@ void viaValidateState( GLcontext *ctx ) * are incorrectly writen to the z buffer. This is a pretty big * slowdown, it would be good to find out this wasn't necessary: */ +#if 0 + /* Disabling now, as the main problem was that the alpha reference + * value was calculated incorrectly, it's now fixed. if (vmesa->viaScreen->deviceID == VIA_CLE266) { GLboolean fallback = (ctx->Color.AlphaEnabled && ctx->Color.AlphaFunc != GL_ALWAYS && ctx->Depth.Mask); FALLBACK( vmesa, VIA_FALLBACK_ALPHATEST, fallback ); } +#endif vmesa->newEmitState |= vmesa->newState; vmesa->newState = 0;