diff options
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/softpipe/sp_tex_sample.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/softpipe/sp_tex_sample.c b/src/gallium/drivers/softpipe/sp_tex_sample.c index f8de104bae3..41bd57c9241 100644 --- a/src/gallium/drivers/softpipe/sp_tex_sample.c +++ b/src/gallium/drivers/softpipe/sp_tex_sample.c @@ -1932,10 +1932,12 @@ compute_lod(const struct pipe_sampler_state *sampler, switch (control) { case TGSI_SAMPLER_LOD_NONE: case TGSI_SAMPLER_LOD_ZERO: - /* XXX FIXME */ - case TGSI_SAMPLER_DERIVS_EXPLICIT: lod[0] = lod[1] = lod[2] = lod[3] = CLAMP(biased_lambda, min_lod, max_lod); break; + case TGSI_SAMPLER_DERIVS_EXPLICIT: + for (i = 0; i < TGSI_QUAD_SIZE; i++) + lod[i] = lod_in[i]; + break; case TGSI_SAMPLER_LOD_BIAS: for (i = 0; i < TGSI_QUAD_SIZE; i++) { lod[i] = biased_lambda + lod_in[i]; |