Mesa (master): llvmpipe: fix multisample point rendering.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Nov 23 21:11:38 UTC 2020


Module: Mesa
Branch: master
Commit: d932720ff7dd8fafbb200d9f91c3956d5f0e775e
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d932720ff7dd8fafbb200d9f91c3956d5f0e775e

Author: Dave Airlie <airlied at redhat.com>
Date:   Tue Nov 10 07:28:53 2020 +1000

llvmpipe: fix multisample point rendering.

Fixes one case in
dEQP-VK.rasterization.primitives_multisample_4_bit.no_stipple.points

Cc: "20.3" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Roland Scheidegger <sroland at vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7705>

---

 src/gallium/drivers/llvmpipe/lp_setup_point.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/llvmpipe/lp_setup_point.c b/src/gallium/drivers/llvmpipe/lp_setup_point.c
index fde1fafaf29..a33d31de205 100644
--- a/src/gallium/drivers/llvmpipe/lp_setup_point.c
+++ b/src/gallium/drivers/llvmpipe/lp_setup_point.c
@@ -350,7 +350,7 @@ try_setup_point( struct lp_setup_context *setup,
     * slightly different rounding.
     */
    int adj = (setup->bottom_edge_rule != 0) ? 1 : 0;
-
+   float pixel_offset = setup->multisample ? 0.0 : setup->pixel_offset;
    struct lp_scene *scene = setup->scene;
    struct lp_rast_triangle *point;
    unsigned bytes;
@@ -385,8 +385,8 @@ try_setup_point( struct lp_setup_context *setup,
        */
       fixed_width = MAX2(FIXED_ONE, subpixel_snap(size));
 
-      x0 = subpixel_snap(v0[0][0] - setup->pixel_offset) - fixed_width/2;
-      y0 = subpixel_snap(v0[0][1] - setup->pixel_offset) - fixed_width/2;
+      x0 = subpixel_snap(v0[0][0] - pixel_offset) - fixed_width/2;
+      y0 = subpixel_snap(v0[0][1] - pixel_offset) - fixed_width/2;
 
       bbox.x0 = (x0 + (FIXED_ONE-1)) >> FIXED_ORDER;
       bbox.x1 = (x0 + fixed_width + (FIXED_ONE-1)) >> FIXED_ORDER;



More information about the mesa-commit mailing list