Texturing fixes for Savage3D/MX/IX:
authorFelix Kuehling <fxkuehl@gmx.de>
Sat, 23 Apr 2005 17:18:57 +0000 (17:18 +0000)
committerFelix Kuehling <fxkuehl@gmx.de>
Sat, 23 Apr 2005 17:18:57 +0000 (17:18 +0000)
commit9b4536a654774e3df330e9f238475aa20e30f7a3
tree0914b87511904e1553c9737fbda0c03f8e56f2b2
parentdf943a40411d2b71381e5053d7c59e8cd2400fff
Texturing fixes for Savage3D/MX/IX:
- force emitting texAddr when the texture image changed (flush caches)
- set transparent texture color key to something improbable
  (couldn't find a way to disable it completely)
- fixed texture environment modes GL_DECAL and GL_REPLACE
- made texture environment mode GL_BLEND a software fallback
- added two custom texture formats for promoting from GL_ALPHA to ARGB8888
  and 4444. Since the hardware can't be made to ignore the RGB color
  components, set them to 1 instead of 0. This gives the correct results
- disabled GL_EXT_texture_env_add on Savage3D/MX/IX
- map both GL_CLAMP and GL_CLAMP_TO_EDGE to hardware mode "wrap". It doesn't
  match either mode exactly by the spec, so we should either fall back on both
  or none. I chose the latter.
- fall back to software when s and t wrapping modes differ (hardware has only
  one bit for both)
src/mesa/drivers/dri/savage/savage_xmesa.c
src/mesa/drivers/dri/savage/savagestate.c
src/mesa/drivers/dri/savage/savagetex.c