gzdoom/src/textures
Randy Heit 4ebfdac887 - Changed all coordinates for DrawTexture() to floating point so that the
player sprites will retain the same precision they had when they were
  rendered as part of the 3D view. (needed for propery alignment of flashes
  on top of weapon sprites) It worked just fine for D3D, but software
  rendering was another matter. I consequently did battle with imprecisions
  in the whole masked texture drawing routines that had previously been
  partially masked by only drawing on whole pixel boundaries. Particularly,
  the tops of posts are calculated by multiplying by spryscale, and the
  texture mapping coordinates are calculated by multiplying by dc_iscale
  (where dc_iscale = 1 / spryscale). Since these are both 16.16 fixed point
  values, there is a significant variance. For best results, the drawing
  routines should only use one of these values, but that would mean
  introducing division into the inner loop. If the division removed the
  necessity for the fudge code in R_DrawMaskedColumn(), would it be worth it?
  Or would the divide be slower than the fudging? Or would I be better off
  doing it like Build and using transparent pixel checks instead, not
  bothering with skipping transparent areas? For now, I chop off the
  fractional part of the top coordinate for software drawing, since it was
  the easiest thing to do (even if it wasn't the most correct thing to do).


SVN r1955 (trunk)
2009-11-01 01:27:33 +00:00
..
automaptexture.cpp - Changed: Textures without a name no longer get added to the texture manager's 2008-11-30 12:49:27 +00:00
bitmap.cpp - Fixed: Coordinate handling for multipatch texture compositing was not correct 2009-09-30 10:41:24 +00:00
bitmap.h - Fixed: Coordinate handling for multipatch texture compositing was not correct 2009-09-30 10:41:24 +00:00
buildtexture.cpp About a week's worth of changes here. As a heads-up, I wouldn't be 2008-07-23 04:57:26 +00:00
canvastexture.cpp - Changed compilation for g_doom, g_heretic, g_hexen and g_strife folders 2008-09-15 14:11:05 +00:00
ddstexture.cpp - Fixed: Coordinate handling for multipatch texture compositing was not correct 2009-09-30 10:41:24 +00:00
emptytexture.cpp - Fixed: Completely empty patches (8 0-bytes) could not be handled by the 2009-04-30 11:10:38 +00:00
flattexture.cpp - Changed: Textures without a name no longer get added to the texture manager's 2008-11-30 12:49:27 +00:00
imgztexture.cpp - Changed: Textures without a name no longer get added to the texture manager's 2008-11-30 12:49:27 +00:00
jpegtexture.cpp - Fixed: Coordinate handling for multipatch texture compositing was not correct 2009-09-30 10:41:24 +00:00
multipatchtexture.cpp - fixed: FMultiPatchTexture::MakeTexture was missing a range check for the 2009-10-18 14:08:32 +00:00
patchtexture.cpp - Fixed: S_LoadSound() did not byte-swap the frequency and length it reads 2009-09-04 22:59:41 +00:00
pcxtexture.cpp - Fixed: Coordinate handling for multipatch texture compositing was not correct 2009-09-30 10:41:24 +00:00
pngtexture.cpp - Fixed: Coordinate handling for multipatch texture compositing was not correct 2009-09-30 10:41:24 +00:00
rawpagetexture.cpp - Changed: Textures without a name no longer get added to the texture manager's 2008-11-30 12:49:27 +00:00
texture.cpp - fixed: FMultiPatchTexture::MakeTexture was missing a range check for the 2009-10-18 14:08:32 +00:00
texturemanager.cpp - fixed: FMultiPatchTexture::MakeTexture was missing a range check for the 2009-10-18 14:08:32 +00:00
textures.h - Changed all coordinates for DrawTexture() to floating point so that the 2009-11-01 01:27:33 +00:00
tgatexture.cpp - Fixed: Coordinate handling for multipatch texture compositing was not correct 2009-09-30 10:41:24 +00:00
warptexture.cpp - Fixed: Coordinate handling for multipatch texture compositing was not correct 2009-09-30 10:41:24 +00:00