From cf8fe9baec320a6a7b09b7c1bc700527e5dc0663 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 25 Jul 2023 12:30:18 -0400 Subject: [PATCH] zink: set msrtss depth resolve mode when enabled cc: mesa-stable Part-of: --- src/gallium/drivers/zink/zink_context.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/gallium/drivers/zink/zink_context.c b/src/gallium/drivers/zink/zink_context.c index f6ee2bfde12..de679be9743 100644 --- a/src/gallium/drivers/zink/zink_context.c +++ b/src/gallium/drivers/zink/zink_context.c @@ -2784,6 +2784,13 @@ begin_rendering(struct zink_context *ctx) ctx->dynamic_fb.attachments[PIPE_MAX_COLOR_BUFS+1].imageView = iv; ctx->dynamic_fb.attachments[PIPE_MAX_COLOR_BUFS+1].imageLayout = zink_resource(surf->base.texture)->layout; assert(ctx->dynamic_fb.attachments[PIPE_MAX_COLOR_BUFS+1].imageLayout != VK_IMAGE_LAYOUT_UNDEFINED); + if (ctx->transient_attachments & BITFIELD_BIT(PIPE_MAX_COLOR_BUFS)) { + ctx->dynamic_fb.attachments[PIPE_MAX_COLOR_BUFS].resolveMode = VK_RESOLVE_MODE_SAMPLE_ZERO_BIT; + ctx->dynamic_fb.attachments[PIPE_MAX_COLOR_BUFS + 1].resolveMode = VK_RESOLVE_MODE_SAMPLE_ZERO_BIT; + } else { + ctx->dynamic_fb.attachments[PIPE_MAX_COLOR_BUFS].resolveMode = 0; + ctx->dynamic_fb.attachments[PIPE_MAX_COLOR_BUFS + 1].resolveMode = 0; + } } ctx->zsbuf_unused = !zsbuf_used; assert(ctx->fb_state.width >= ctx->dynamic_fb.info.renderArea.extent.width);