st/mesa: disable alpha-test, alpha-to-coverage, alpha-to-one for integer FBs

v2: rebased

Reviewed-by: Brian Paul <brianp@vmware.com>
This commit is contained in:
Marek Olšák 2016-09-16 22:39:15 +02:00
parent c64da9d499
commit 54f8efeb02
2 changed files with 4 additions and 2 deletions

View File

@ -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.
*/

View File

@ -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;