[Mesa-dev] [PATCH 2/3] gallium/auxiliary/vl: Change grid setting
Zhu, James
James.Zhu at amd.com
Tue Mar 12 15:12:22 UTC 2019
Using draw area for grid setting instead of destination
buffer size.
Signed-off-by: James Zhu <James.Zhu at amd.com>
Tested-by: Bruno Milreu <bmilreu at gmail.com>
---
src/gallium/auxiliary/vl/vl_compositor_cs.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/src/gallium/auxiliary/vl/vl_compositor_cs.c b/src/gallium/auxiliary/vl/vl_compositor_cs.c
index 70898be..de0a3c7 100644
--- a/src/gallium/auxiliary/vl/vl_compositor_cs.c
+++ b/src/gallium/auxiliary/vl/vl_compositor_cs.c
@@ -221,7 +221,8 @@ const char *compute_shader_rgba =
static void
cs_launch(struct vl_compositor *c,
- void *cs)
+ void *cs,
+ const struct u_rect *draw_area)
{
struct pipe_context *ctx = c->pipe;
@@ -241,8 +242,8 @@ cs_launch(struct vl_compositor *c,
info.block[0] = 8;
info.block[1] = 8;
info.block[2] = 1;
- info.grid[0] = DIV_ROUND_UP(c->fb_state.width, info.block[0]);
- info.grid[1] = DIV_ROUND_UP(c->fb_state.height, info.block[1]);
+ info.grid[0] = DIV_ROUND_UP(draw_area->x1, info.block[0]);
+ info.grid[1] = DIV_ROUND_UP(draw_area->y1, info.block[1]);
info.grid[2] = 1;
ctx->launch_grid(ctx, &info);
@@ -346,7 +347,7 @@ draw_layers(struct vl_compositor *c,
c->pipe->set_sampler_views(c->pipe, PIPE_SHADER_COMPUTE, 0,
num_sampler_views, samplers);
- cs_launch(c, layer->cs);
+ cs_launch(c, layer->cs, &(drawn.area));
if (dirty) {
struct u_rect drawn = calc_drawn_area(s, layer);
--
2.7.4
More information about the mesa-dev
mailing list