From 3ac54ac2c85d3ed035a9f1cbcc7de7010c609cfb Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 23 Aug 2012 00:39:01 +0200 Subject: [PATCH] r600g: fix evergreen 8x MSAA sample positions The original samples positions took samples outside of the pixel boundary, leading to dark pixels on the edge of the colorbuffer, among other things. Reviewed-by: Jerome Glisse --- src/gallium/drivers/r600/evergreen_state.c | 32 +++++++++++----------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index 4e86693be45..e12706e856b 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -1516,24 +1516,24 @@ static uint32_t evergreen_set_ms_pos(struct pipe_context *ctx, struct r600_pipe_ static unsigned max_dist_4x = 6; /* 8xMSAA */ static uint32_t eg_sample_locs_8x[] = { - FILL_SREG(-2, -5, 4, -4, 1, 6, -6, -2), - FILL_SREG( 6, 1, 0, 0, -5, 4, 7, -8), - FILL_SREG(-2, -5, 4, -4, 1, 6, -6, -2), - FILL_SREG( 6, 1, 0, 0, -5, 4, 7, -8), - FILL_SREG(-2, -5, 4, -4, 1, 6, -6, -2), - FILL_SREG( 6, 1, 0, 0, -5, 4, 7, -8), - FILL_SREG(-2, -5, 4, -4, 1, 6, -6, -2), - FILL_SREG( 6, 1, 0, 0, -5, 4, 7, -8), + FILL_SREG(-2, -5, 3, -4, -1, 5, -6, -2), + FILL_SREG( 6, 0, 0, 0, -5, 3, 4, 4), + FILL_SREG(-2, -5, 3, -4, -1, 5, -6, -2), + FILL_SREG( 6, 0, 0, 0, -5, 3, 4, 4), + FILL_SREG(-2, -5, 3, -4, -1, 5, -6, -2), + FILL_SREG( 6, 0, 0, 0, -5, 3, 4, 4), + FILL_SREG(-2, -5, 3, -4, -1, 5, -6, -2), + FILL_SREG( 6, 0, 0, 0, -5, 3, 4, 4), }; static uint32_t cm_sample_locs_8x[] = { - FILL_SREG(-2, -5, 4, -4, 1, 6, -6, -2), - FILL_SREG(-2, -5, 4, -4, 1, 6, -6, -2), - FILL_SREG(-2, -5, 4, -4, 1, 6, -6, -2), - FILL_SREG(-2, -5, 4, -4, 1, 6, -6, -2), - FILL_SREG( 6, 1, 0, 0, -5, 4, 7, -8), - FILL_SREG( 6, 1, 0, 0, -5, 4, 7, -8), - FILL_SREG( 6, 1, 0, 0, -5, 4, 7, -8), - FILL_SREG( 6, 1, 0, 0, -5, 4, 7, -8), + FILL_SREG(-2, -5, 3, -4, -1, 5, -6, -2), + FILL_SREG(-2, -5, 3, -4, -1, 5, -6, -2), + FILL_SREG(-2, -5, 3, -4, -1, 5, -6, -2), + FILL_SREG(-2, -5, 3, -4, -1, 5, -6, -2), + FILL_SREG( 6, 0, 0, 0, -5, 3, 4, 4), + FILL_SREG( 6, 0, 0, 0, -5, 3, 4, 4), + FILL_SREG( 6, 0, 0, 0, -5, 3, 4, 4), + FILL_SREG( 6, 0, 0, 0, -5, 3, 4, 4), }; static unsigned max_dist_8x = 8; /* 16xMSAA */ -- 2.30.2