summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300/r300_state.c
diff options
context:
space:
mode:
authorCorbin Simpson <MostAwesomeDude@gmail.com>2008-06-29 10:30:47 -0700
committerCorbin Simpson <MostAwesomeDude@gmail.com>2008-06-29 10:32:19 -0700
commita74d22ba715da5e52efb15aebd15a74851f87d43 (patch)
treee4df3b713a86f6793a55e2e7d723bf2a0a207033 /src/mesa/drivers/dri/r300/r300_state.c
parent543893eefdc82ecd21e346320e89a471c5c12158 (diff)
r300: Change LOD bias emission to more closely follow per-tex rules.
Okay, this time it's for real, and for good. This should be a perma-fix.
Diffstat (limited to 'src/mesa/drivers/dri/r300/r300_state.c')
-rw-r--r--src/mesa/drivers/dri/r300/r300_state.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_state.c b/src/mesa/drivers/dri/r300/r300_state.c
index 1d4472d59e..00351014af 100644
--- a/src/mesa/drivers/dri/r300/r300_state.c
+++ b/src/mesa/drivers/dri/r300/r300_state.c
@@ -1456,8 +1456,10 @@ static void r300SetupTextures(GLcontext * ctx)
r300->hw.tex.filter.cmd[R300_TEX_VALUE_0 +
hw_tmu] =
gen_fixed_filter(t->filter) | (hw_tmu << 28);
- r300->hw.tex.filter_1.cmd[R300_TEX_VALUE_0 + hw_tmu] = t->filter_1
- | r300CalculateTexLodBias(r300->LODBias);
+ /* Make LOD bias a bit more per-tex and less per-everything. */
+ t->filter_1 &= ~R300_LOD_BIAS_MASK;
+ t->filter_1 |= r300CalculateTexLodBias(ctx->Texture.Unit[i].LodBias);
+ r300->hw.tex.filter_1.cmd[R300_TEX_VALUE_0 + hw_tmu] = t->filter_1;
r300->hw.tex.size.cmd[R300_TEX_VALUE_0 + hw_tmu] =
t->size;
r300->hw.tex.format.cmd[R300_TEX_VALUE_0 +