From: Marek Olšák Date: Wed, 22 Aug 2012 22:39:01 +0000 (+0200) Subject: r600g: fix evergreen 8x MSAA sample positions X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3ac54ac2c85d3ed035a9f1cbcc7de7010c609cfb;p=mesa.git 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 --- 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 */