summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/radeonsi/si_state.c
diff options
context:
space:
mode:
authorErik Faye-Lund <erik.faye-lund@collabora.com>2023-01-20 11:39:27 +0100
committerMarge Bot <emma+marge@anholt.net>2023-01-23 08:41:04 +0000
commit9f4f131f2e9403f8757be33b3a5c10bcbe9b7644 (patch)
treec47708a3e2496cb68359d8ce3085ad27d5f94151 /src/gallium/drivers/radeonsi/si_state.c
parent3325950648103ee7fd3fb435eca64a0b75beac97 (diff)
downloadmesa-9f4f131f2e9403f8757be33b3a5c10bcbe9b7644.tar.gz
radeonsi: respect smoothing_enabled
When this was last changed, the smoothing_enabled flag seems to have been forgotten about, breaking line-smoothing (and probably also polygon smoothing). Fixes: 4147add280e ("radeonsi: update db_eqaa even if msaa is disabled") Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20810>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_state.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_state.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
index b9a9b8949ed..9129d417271 100644
--- a/src/gallium/drivers/radeonsi/si_state.c
+++ b/src/gallium/drivers/radeonsi/si_state.c
@@ -3804,7 +3804,8 @@ static void si_emit_msaa_config(struct si_context *sctx)
unsigned sc_line_cntl = 0;
unsigned sc_aa_config = 0;
- if (coverage_samples > 1 && rs->multisample_enable) {
+ if (coverage_samples > 1 && (rs->multisample_enable ||
+ sctx->smoothing_enabled)) {
/* distance from the pixel center, indexed by log2(nr_samples) */
static unsigned max_dist[] = {
0, /* unused */
@@ -3826,7 +3827,8 @@ static void si_emit_msaa_config(struct si_context *sctx)
S_028BE0_COVERED_CENTROID_IS_CENTER(sctx->gfx_level >= GFX10_3);
}
- if (sctx->framebuffer.nr_samples > 1) {
+ if (sctx->framebuffer.nr_samples > 1 ||
+ sctx->smoothing_enabled) {
if (sctx->framebuffer.state.zsbuf) {
z_samples = sctx->framebuffer.state.zsbuf->texture->nr_samples;
z_samples = MAX2(1, z_samples);