Module: Mesa Branch: staging/23.3 Commit: 8fb0a376aba7a3ffb0c2f400fae21e5ee39eaa95 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8fb0a376aba7a3ffb0c2f400fae21e5ee39eaa95
Author: David Rosca <[email protected]> Date: Wed Sep 27 14:40:12 2023 +0200 gallium/auxiliary/vl: Fix coordinates clamp in compute shaders Fixes: a6a43963ed0 ("gallium/auxiliary/vl: Clamp coordinates in compute shaders") Acked-by: Thong Thai <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26123> (cherry picked from commit ef0546152fd1aed1d4175097c6361860c42f459e) --- .pick_status.json | 2 +- src/gallium/auxiliary/vl/vl_compositor_cs.c | 12 ++++-------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 0fafe89a48a..65282c6701f 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -424,7 +424,7 @@ "description": "gallium/auxiliary/vl: Fix coordinates clamp in compute shaders", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "a6a43963ed0648649d70bfe7998971c1927d9b51", "notes": null diff --git a/src/gallium/auxiliary/vl/vl_compositor_cs.c b/src/gallium/auxiliary/vl/vl_compositor_cs.c index 3f4f0cee79c..35755081f26 100644 --- a/src/gallium/auxiliary/vl/vl_compositor_cs.c +++ b/src/gallium/auxiliary/vl/vl_compositor_cs.c @@ -956,14 +956,10 @@ draw_layers(struct vl_compositor *c, drawn.translate_y = layer->viewport.translate[1]; drawn.sampler0_w = (float)layer->sampler_views[0]->texture->width0; drawn.sampler0_h = (float)layer->sampler_views[0]->texture->height0; - drawn.clamp_x = (float)samplers[0]->texture->width0 * - (layer->src.br.x - layer->src.tl.x) - 0.5; - drawn.clamp_y = (float)samplers[0]->texture->height0 * - (layer->src.br.y - layer->src.tl.y) - 0.5; - drawn.chroma_clamp_x = (float)sampler1->texture->width0 * - (layer->src.br.x - layer->src.tl.x) - 0.5; - drawn.chroma_clamp_y = (float)sampler1->texture->height0 * - (layer->src.br.y - layer->src.tl.y) - 0.5; + drawn.clamp_x = (float)samplers[0]->texture->width0 * layer->src.br.x - 0.5; + drawn.clamp_y = (float)samplers[0]->texture->height0 * layer->src.br.y - 0.5; + drawn.chroma_clamp_x = (float)sampler1->texture->width0 * layer->src.br.x - 0.5; + drawn.chroma_clamp_y = (float)sampler1->texture->height0 * layer->src.br.y - 0.5; drawn.chroma_offset_x = chroma_offset_x(s->chroma_location); drawn.chroma_offset_y = chroma_offset_y(s->chroma_location); set_viewport(s, &drawn, samplers);
