Module: Mesa
Branch: staging/23.3
Commit: 73b6b7497edb0ec28bf2fb635dab1f76585a1957
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=73b6b7497edb0ec28bf2fb635dab1f76585a1957

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 86e4306d5b9..c7bd49231af 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);

Reply via email to