diff options
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/state_tracker/st_atom_sampler.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_atom_sampler.c b/src/mesa/state_tracker/st_atom_sampler.c index 23ccd55a05..151d724863 100644 --- a/src/mesa/state_tracker/st_atom_sampler.c +++ b/src/mesa/state_tracker/st_atom_sampler.c @@ -137,8 +137,18 @@ update_samplers(struct st_context *st) sampler.mag_img_filter = gl_filter_to_img_filter(texobj->MagFilter); sampler.lod_bias = st->ctx->Texture.Unit[u].LodBias; +#if 1 sampler.min_lod = texobj->MinLod; sampler.max_lod = texobj->MaxLod; +#else + /* min/max lod should really be as follows (untested). + * Also, calculate_first_last_level() needs to be overhauled + * since today's hardware had real support for LOD clamping. + */ + sampler.min_lod = MAX2(texobj->BaseLevel, texobj->MinLod); + sampler.max_lod = MIN2(texobj->MaxLevel, texobj->MaxLod); +#endif + sampler.max_anisotropy = texobj->MaxAnisotropy; /* XXX more sampler state here */ |