Mesa (master): r300g: lod min/ max clamping should be relative to the base level

Marek Olšák mareko at kemper.freedesktop.org
Fri Mar 19 03:52:28 UTC 2010


Module: Mesa
Branch: master
Commit: 12a40dda394bd14e31c679551bc5abc8b601fdbf
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=12a40dda394bd14e31c679551bc5abc8b601fdbf

Author: Marek Olšák <maraeo at gmail.com>
Date:   Fri Mar 19 04:46:15 2010 +0100

r300g: lod min/max clamping should be relative to the base level

---

 src/gallium/drivers/r300/r300_state_derived.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c
index 8594735..8178d55 100644
--- a/src/gallium/drivers/r300/r300_state_derived.c
+++ b/src/gallium/drivers/r300/r300_state_derived.c
@@ -375,9 +375,9 @@ static void r300_merge_textures_and_samplers(struct r300_context* r300)
             } else {
                 /* determine min/max levels */
                 /* the MAX_MIP level is the largest (finest) one */
-                max_level = MIN3(sampler->max_lod, tex->tex.last_level,
-                                 view->last_level);
-                min_level = MIN2(MAX2(sampler->min_lod, view->first_level),
+                max_level = MIN3(sampler->max_lod + view->first_level,
+                                 tex->tex.last_level, view->last_level);
+                min_level = MIN2(sampler->min_lod + view->first_level,
                                  max_level);
                 texstate->format[0] |= R300_TX_NUM_LEVELS(max_level);
                 texstate->filter[0] |= R300_TX_MAX_MIP_LEVEL(min_level);




More information about the mesa-commit mailing list