diff options
author | Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> | 2021-01-20 21:26:30 +0100 |
---|---|---|
committer | Mike Blumenkrantz <michael.blumenkrantz@gmail.com> | 2021-03-31 20:48:38 -0400 |
commit | 6dc07a173ea6d9960227bc477691ce6b4474da15 (patch) | |
tree | 0d2f4db2c43a9e997194b96e9370d7395e5fdab0 | |
parent | bde229153133172d182e7ff1192564d29e6a8294 (diff) |
zink: Only set the needed number of scissors.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9968>
-rw-r--r-- | src/gallium/drivers/zink/zink_draw.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/zink/zink_draw.c b/src/gallium/drivers/zink/zink_draw.c index aedcb7631c7..1e36779a889 100644 --- a/src/gallium/drivers/zink/zink_draw.c +++ b/src/gallium/drivers/zink/zink_draw.c @@ -430,7 +430,7 @@ zink_draw_vbo(struct pipe_context *pctx, screen->vk_CmdSetViewportWithCountEXT(batch->state->cmdbuf, ctx->vp_state.num_viewports, viewports); else vkCmdSetViewport(batch->state->cmdbuf, 0, ctx->vp_state.num_viewports, viewports); - VkRect2D scissors[PIPE_MAX_VIEWPORTS] = {}; + VkRect2D scissors[PIPE_MAX_VIEWPORTS]; if (ctx->rast_state->base.scissor) { for (unsigned i = 0; i < ctx->vp_state.num_viewports; i++) { scissors[i].offset.x = ctx->vp_state.scissor_states[i].minx; @@ -438,8 +438,10 @@ zink_draw_vbo(struct pipe_context *pctx, scissors[i].extent.width = ctx->vp_state.scissor_states[i].maxx - ctx->vp_state.scissor_states[i].minx; scissors[i].extent.height = ctx->vp_state.scissor_states[i].maxy - ctx->vp_state.scissor_states[i].miny; } - } else if (ctx->fb_state.width && ctx->fb_state.height) { + } else { for (unsigned i = 0; i < ctx->vp_state.num_viewports; i++) { + scissors[i].offset.x = 0; + scissors[i].offset.y = 0; scissors[i].extent.width = ctx->fb_state.width; scissors[i].extent.height = ctx->fb_state.height; } |