From dc2f94bc786768329973403248820a2e5249f102 Mon Sep 17 00:00:00 2001 From: Anuj Phogat Date: Wed, 22 Jan 2014 15:41:58 -0800 Subject: [PATCH] i965: Ignore 'centroid' interpolation qualifier in case of persample shading I missed this change in commit f5cfb4a. It fixes the incorrect rendering caused in Dolphin Emulator. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73915 Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Anuj Phogat Tested-by: Markus Wick Reviewed-by: Matt Turner --- src/mesa/drivers/dri/i965/brw_wm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index b7afcf28b1e..a0758d2527f 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -62,7 +62,8 @@ brw_compute_barycentric_interp_modes(struct brw_context *brw, for (attr = 0; attr < VARYING_SLOT_MAX; ++attr) { enum glsl_interp_qualifier interp_qualifier = fprog->InterpQualifier[attr]; - bool is_centroid = fprog->IsCentroid & BITFIELD64_BIT(attr); + bool is_centroid = (fprog->IsCentroid & BITFIELD64_BIT(attr)) && + !persample_shading; bool is_sample = (fprog->IsSample & BITFIELD64_BIT(attr)) || persample_shading; bool is_gl_Color = attr == VARYING_SLOT_COL0 || attr == VARYING_SLOT_COL1; -- 2.30.2