Revert "r600g: truncate point sampled texture coordinates"
This reverts commit 1dc204d145
.
MC_COORD_TRUNCATE is for MPEG and produces quite an interesting behavior
on regular textures. Anyway that commit broke filtering in demos/cubemap.
This commit is contained in:
parent
fb8786bda3
commit
72c6a748b9
|
@ -307,16 +307,11 @@ static void *evergreen_create_sampler_state(struct pipe_context *ctx,
|
|||
{
|
||||
struct r600_pipe_state *rstate = CALLOC_STRUCT(r600_pipe_state);
|
||||
union util_color uc;
|
||||
uint32_t coord_trunc = 0;
|
||||
|
||||
if (rstate == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if ((state->mag_img_filter == PIPE_TEX_FILTER_NEAREST) ||
|
||||
(state->min_img_filter == PIPE_TEX_FILTER_NEAREST))
|
||||
coord_trunc = 1;
|
||||
|
||||
rstate->id = R600_PIPE_STATE_SAMPLER;
|
||||
util_pack_color(state->border_color, PIPE_FORMAT_B8G8R8A8_UNORM, &uc);
|
||||
r600_pipe_state_add_reg(rstate, R_03C000_SQ_TEX_SAMPLER_WORD0_0,
|
||||
|
@ -335,7 +330,6 @@ static void *evergreen_create_sampler_state(struct pipe_context *ctx,
|
|||
0xFFFFFFFF, NULL);
|
||||
r600_pipe_state_add_reg(rstate, R_03C008_SQ_TEX_SAMPLER_WORD2_0,
|
||||
S_03C008_LOD_BIAS(S_FIXED(CLAMP(state->lod_bias, -16, 16), 8)) |
|
||||
S_03C008_MC_COORD_TRUNCATE(coord_trunc) |
|
||||
S_03C008_TYPE(1),
|
||||
0xFFFFFFFF, NULL);
|
||||
|
||||
|
|
|
@ -366,16 +366,11 @@ static void *r600_create_sampler_state(struct pipe_context *ctx,
|
|||
{
|
||||
struct r600_pipe_state *rstate = CALLOC_STRUCT(r600_pipe_state);
|
||||
union util_color uc;
|
||||
uint32_t coord_trunc = 0;
|
||||
|
||||
if (rstate == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if ((state->mag_img_filter == PIPE_TEX_FILTER_NEAREST) ||
|
||||
(state->min_img_filter == PIPE_TEX_FILTER_NEAREST))
|
||||
coord_trunc = 1;
|
||||
|
||||
rstate->id = R600_PIPE_STATE_SAMPLER;
|
||||
util_pack_color(state->border_color, PIPE_FORMAT_B8G8R8A8_UNORM, &uc);
|
||||
r600_pipe_state_add_reg(rstate, R_03C000_SQ_TEX_SAMPLER_WORD0_0,
|
||||
|
@ -392,9 +387,7 @@ static void *r600_create_sampler_state(struct pipe_context *ctx,
|
|||
S_03C004_MIN_LOD(S_FIXED(CLAMP(state->min_lod, 0, 15), 6)) |
|
||||
S_03C004_MAX_LOD(S_FIXED(CLAMP(state->max_lod, 0, 15), 6)) |
|
||||
S_03C004_LOD_BIAS(S_FIXED(CLAMP(state->lod_bias, -16, 16), 6)), 0xFFFFFFFF, NULL);
|
||||
r600_pipe_state_add_reg(rstate, R_03C008_SQ_TEX_SAMPLER_WORD2_0,
|
||||
S_03C008_MC_COORD_TRUNCATE(coord_trunc) |
|
||||
S_03C008_TYPE(1), 0xFFFFFFFF, NULL);
|
||||
r600_pipe_state_add_reg(rstate, R_03C008_SQ_TEX_SAMPLER_WORD2_0, S_03C008_TYPE(1), 0xFFFFFFFF, NULL);
|
||||
if (uc.ui) {
|
||||
r600_pipe_state_add_reg(rstate, R_00A400_TD_PS_SAMPLER0_BORDER_RED, fui(state->border_color[0]), 0xFFFFFFFF, NULL);
|
||||
r600_pipe_state_add_reg(rstate, R_00A404_TD_PS_SAMPLER0_BORDER_GREEN, fui(state->border_color[1]), 0xFFFFFFFF, NULL);
|
||||
|
|
Loading…
Reference in New Issue