summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRune Petersen <rune@megahurts.dk>2006-07-15 10:44:25 +0000
committerRune Petersen <rune@megahurts.dk>2006-07-15 10:44:25 +0000
commit416ac254c262d307608c14509725d1574205deff (patch)
tree021ac5030a9c58033e786d0d4452a01f5febd5c7
parentf4e46e1a463be580d14d1b14fe1b9c85d4572e61 (diff)
A small logic error.
We need to call do_swizzle() when the scaler _or_ vector unit have a swizzle other 000/ZERO/111/ONE. This ensures that the gloss on banners in ut2004 is not angel-dependent (since when was banners glossy?).
-rw-r--r--src/mesa/drivers/dri/r300/r300_fragprog.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_fragprog.c b/src/mesa/drivers/dri/r300/r300_fragprog.c
index e045f0c6a1..61efdec6a8 100644
--- a/src/mesa/drivers/dri/r300/r300_fragprog.c
+++ b/src/mesa/drivers/dri/r300/r300_fragprog.c
@@ -529,7 +529,7 @@ static pfs_reg_t t_src(struct r300_fragment_program *rp,
}
/* no point swizzling ONE/ZERO/HALF constants... */
- if (r.v_swz < SWIZZLE_111 && r.s_swz < SWIZZLE_ZERO)
+ if (r.v_swz < SWIZZLE_111 || r.s_swz < SWIZZLE_ZERO)
r = do_swizzle(rp, r, fpsrc.Swizzle, fpsrc.NegateBase);
#if 0
/* WRONG! Need to be able to do individual component negation,