From 54f8efeb022de8686db18c49daf14e6771f0fda1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 16 Sep 2016 22:39:15 +0200 Subject: [PATCH] st/mesa: disable alpha-test, alpha-to-coverage, alpha-to-one for integer FBs v2: rebased Reviewed-by: Brian Paul --- src/mesa/state_tracker/st_atom_blend.c | 3 ++- src/mesa/state_tracker/st_atom_depth.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/mesa/state_tracker/st_atom_blend.c b/src/mesa/state_tracker/st_atom_blend.c index 76d6a644a58..b8d65bde29e 100644 --- a/src/mesa/state_tracker/st_atom_blend.c +++ b/src/mesa/state_tracker/st_atom_blend.c @@ -266,7 +266,8 @@ update_blend( struct st_context *st ) blend->dither = ctx->Color.DitherFlag; if (ctx->Multisample.Enabled && - ctx->DrawBuffer->Visual.sampleBuffers > 0) { + ctx->DrawBuffer->Visual.sampleBuffers > 0 && + !(ctx->DrawBuffer->_IntegerBuffers & 0x1)) { /* Unlike in gallium/d3d10 these operations are only performed * if both msaa is enabled and we have a multisample buffer. */ diff --git a/src/mesa/state_tracker/st_atom_depth.c b/src/mesa/state_tracker/st_atom_depth.c index 267b42c539f..7092c3f83ec 100644 --- a/src/mesa/state_tracker/st_atom_depth.c +++ b/src/mesa/state_tracker/st_atom_depth.c @@ -149,7 +149,8 @@ update_depth_stencil_alpha(struct st_context *st) } } - if (ctx->Color.AlphaEnabled) { + if (ctx->Color.AlphaEnabled && + !(ctx->DrawBuffer->_IntegerBuffers & 0x1)) { dsa->alpha.enabled = 1; dsa->alpha.func = st_compare_func_to_pipe(ctx->Color.AlphaFunc); dsa->alpha.ref_value = ctx->Color.AlphaRefUnclamped; -- 2.30.2