Commit graph

72 commits

Author SHA1 Message Date
Magnus Norddahl
d084f77546 Fix mipmap generation bug
Fix crash due to dc_source2 not always being set
Add r_lod_bias to control mipmap selection
Improve LOD calculations to take the U texture coordinate into account
2016-11-05 16:12:59 +01:00
Magnus Norddahl
1ccf190c4f Merge remote-tracking branch 'zdoom/master' into qzdoom 2016-11-01 19:51:17 +01:00
Marisa Heit
9388597443 Add 1 pixel tall and wide texture support to the renderer
- These require manual detection and overriding of the scaling factors to
  0, because a right shift of (32-0) bits wraps around to 0 and results in
  no shift at all rather than leaving the register zeroed out.
2016-11-01 00:08:16 -05:00
Rachael Alexanderson
9ed45c7e03 Merge branch 'master' of http://github.com/rheit/zdoom 2016-10-26 22:06:25 -04:00
Christoph Oelckers
327d4d85a7 - fixed: UseOffsets can only be handled after the patch is has been set up. 2016-10-26 15:02:20 +02:00
raa-eruanna
a4393d352f Merge http://github.com/rheit/zdoom 2016-10-20 03:30:51 -04:00
Christoph Oelckers
19d070c9bd - fixed: averageColor swapped red and blue.
- renamed some stuff
2016-10-20 09:08:07 +02:00
Magnus Norddahl
0888fc0cde Merge remote-tracking branch 'origin/capsky' into qzdoom 2016-10-20 00:13:58 +02:00
Magnus Norddahl
5de8112578 Add support for capping sky with a solid color 2016-10-19 23:52:09 +02:00
Magnus Norddahl
f56250b910 Remove premultiplied alpha 2016-08-14 05:10:34 +02:00
Magnus Norddahl
3c8719f945 Fix buffer overflow in FTexture::GenerateBgraMipmaps 2016-08-08 22:35:26 +02:00
Magnus Norddahl
7000d0ccf9 Change GetPixelsBgra to use CopyTrueColorPixels 2016-08-06 22:59:16 +02:00
Magnus Norddahl
d1617fcdf0 GCC compile fixes 2016-06-30 13:45:06 +02:00
Magnus Norddahl
8f38d3af99 Replaced the bicubic interpolation filter with a simple sharpening filter 2016-06-27 10:49:15 +02:00
Magnus Norddahl
3b6d177787 Added bicubic interpolation when generating mipmaps 2016-06-25 12:14:15 +02:00
Magnus Norddahl
c235de5c22 Native mipmap support to FTexture 2016-06-21 21:55:08 +02:00
Magnus Norddahl
6daeb5a158 Blend mode fixes 2016-06-20 02:36:54 +02:00
Magnus Norddahl
e72a032a11 Fixed alpha channel issue with textures 2016-06-19 23:12:10 +02:00
Magnus Norddahl
8ba6a4f175 Precache, Unload and FillSimplePoly bug fix 2016-06-13 21:39:55 +02:00
Magnus Norddahl
cc10c2a970 Fix cameras and kdizd intro for true color mode 2016-06-13 03:16:48 +02:00
Magnus Norddahl
ffcfe0b54f Fix warning 2016-06-10 17:08:45 +02:00
Magnus Norddahl
05b6fe6174 Added true color texture support for walls and floors 2016-06-10 13:50:34 +02:00
Christoph Oelckers
0c39bdd04c - floatified texture scale values. 2016-03-26 13:37:44 +01:00
Randy Heit
55142078d8 Normalize line endings 2016-03-01 09:47:10 -06:00
Shawn Walker
59885b856d - remove texture name length limits for udmf maps 2014-05-18 15:38:46 -07:00
Christoph Oelckers
ca4179caa3 - allow texture lookup by full path names. Due to technical limitations this may result in double textures if the same graphics lump is also referenced by its short texture name. 2014-05-13 20:51:16 +02:00
Randy Heit
1d4f4b25d7 Don't free replaced textures that are used as patches.
- Fixed: If a part of a multipatch texture is replaced by a HIRESTEX
  version, the original patch must not be deleted, since the multipatch
  texture still needs it for compositing.
2014-02-24 19:01:36 -06:00
Braden Obrzut
b493d8e823 - Just remembered that the true color stuff generates textures differently. Changed the previous commit to expand 1, 2, and 4 bit grayscale images while reading the PNG instead of changing the palette.
SVN r4289 (trunk)
2013-05-26 04:56:52 +00:00
Braden Obrzut
dabd48ab81 - Fixed: 4, 2, and 1 bit grayscale images weren't properly supported.
- Fixed: Valgrind uninitialized memory error and a signed/unsigned warning.

SVN r4288 (trunk)
2013-05-26 04:03:47 +00:00
Christoph Oelckers
fbff5ca932 - moved r_interpolate.cpp and r_translate.cpp to r_data.
- merged r_jpeg.h into jpegtexture.cpp because that's the only place where it's ever used.


SVN r3255 (trunk)
2011-07-06 08:50:15 +00:00
Christoph Oelckers
17ed7aaabd - moved the code from r_data.cpp to some better fitting places and deleted this file and r_data.h because the remaining parts of it were just a random collection of unrelated functions.
SVN r3248 (trunk)
2011-07-05 10:02:38 +00:00
Randy Heit
29e486495b - Fixed: The sign in Eternall.wad, map25 on line 2236 rendered at the wrong height because Doom
ignored the Y locations of patches drawn on two-sided midtextures and always drew them at the
  top of the texture. Added a compatibility flag.

SVN r3205 (trunk)
2011-05-13 03:29:48 +00:00
Randy Heit
d3b44a4172 - Fix errors/warnings from MinGW 4.5.0 (tdm-1).
- Disable the missing field initializers warnings that -Wextra produces from GCC.

SVN r3173 (trunk)
2011-03-29 05:20:33 +00:00
Christoph Oelckers
1993e969b7 - GCC warning fixes (GCC stupidity for the most part.)
SVN r3154 (trunk)
2011-02-19 08:59:43 +00:00
Christoph Oelckers
545a892faa - added Firebrand's patch to rename 'swap' due to naming conflicts in newer MSVC compilers.
SVN r2449 (trunk)
2010-07-23 21:19:59 +00:00
Christoph Oelckers
82af1640fd - fixed: HI_START/HI_END must be checked after parsing the TEXTURES lump, not before it.
SVN r2297 (trunk)
2010-04-21 17:39:52 +00:00
Christoph Oelckers
87f3c9c5b7 - fixed: The floor waggle code used FloatBobOffsets as sine table but this
only has 64 entries and is not precise enough. It now uses finesine instead.
- fixed: When compositing a multipatch texture any patch that is a multpatch
  texture itself and contains rotations may not be composited directly into
  the destination buffer. This must be done with an intermediate buffer.
- Fixed: Drawing a slider in the options menu did not scale the x-coordinate.
- Fixed: If the alt HUD had to draw negative numbers the minus sign was misplaced
  due to incorrect texture coordinate calculations.
- changed option menu scaling for widescreen modes so that it doesn't scale down
  so quickly. 
- made some error messages in DECORATE that don't affect the parsing non-fatal
  so that the parser can continue to find more problems.

SVN r2076 (trunk)
2010-01-02 11:38:27 +00:00
Christoph Oelckers
6161702703 - fixed: The sky baseline position needs to take texture scaling into account.
SVN r1982 (trunk)
2009-11-15 08:11:14 +00:00
Christoph Oelckers
8390184839 - fixed: FMultiPatchTexture::MakeTexture was missing a range check for the
special colormap index.


SVN r1928 (trunk)
2009-10-18 14:08:32 +00:00
Christoph Oelckers
7e4504f9d6 - Fixed: Coordinate handling for multipatch texture compositing was not correct
for true color. Instead of using a clipping rectangle on the destination it
  tried to alter the source offsets which produced incorrect results for
  mirrored or rotated patches.


SVN r1889 (trunk)
2009-09-30 10:41:24 +00:00
Christoph Oelckers
74bdfe19c5 - Fixed: The true color texture compositing code did not clip the edges
of multipatch textures used as patches on other multipatch textures.


SVN r1766 (trunk)
2009-08-10 18:30:25 +00:00
Christoph Oelckers
b37d0ba2ea - Fixed: Completely empty patches (8 0-bytes) could not be handled by the
texture manager. They now get assigned a new FEmptyTexture object
  that is just a 1x1 pixel transparent texture.
- Fixed: Multiple namespace markers of the same type were no longer detected.
- Fixed sprite renaming.


SVN r1566 (trunk)
2009-04-30 11:10:38 +00:00
Randy Heit
6a9acc2cf8 - Fixed: World panning was ignored for the X offset of masked midtextures.
SVN r1541 (trunk)
2009-04-11 04:28:06 +00:00
Christoph Oelckers
3f2d5db348 - Changed: Textures without a name no longer get added to the texture manager's
hash chains.
- Fixed: specifying texture patches or font characters by full lump name instead
  of texture name didn't work. To do this properly the texture manager needs
  an option to look for a texture by lump number so that such textures can
  be maintained without interfering with regular operation.
- added 'skystretch' and 'autosequences' keywords for MAPINFO so that the effects
  of 'noautosequences' and 'forcenoskystretch' can be cancelled.
- Added a 'gamedefaults' section to MAPINFO after discovering that 'defaultmap'
  gets reset for each MAPINFO. A global section is needed to define a game's
  default setting in zdoom.pk3. The gamedefaults should normally not be changed 
  by PWADs but it can be done if some mod intends to change gameplay settings 
  but wants to allow custom add-ons on its own.


SVN r1300 (trunk)
2008-11-30 12:49:27 +00:00
Christoph Oelckers
db5723997c - Cleaned up some include dependencies.
SVN r1224 (trunk)
2008-09-14 23:54:38 +00:00
Christoph Oelckers
61cbb1d2e1 - Fixed: A_Jump used a wrong index into the jump address table.
- Fixed: The recent changes in the DECORATE parser require the special parameter
  to A_CallSpecial to be an expression, not a constant.
- Removed game filters from old style decorations. No WAD in existence ever 
  used them and removing them allows to make the parser more robust.


SVN r1170 (trunk)
2008-08-14 19:08:38 +00:00
Christoph Oelckers
b1d36182c4 - Changed handling of AUTOPAGE texture so that it is properly inserted into
the texture manager even if it is from Raven's IWADs.
- Removed code related to internal ActorInfo definitions from dobjtype.cpp.
- removed unneeded file dehackedactions.h


SVN r1162 (trunk)
2008-08-12 09:57:59 +00:00
Christoph Oelckers
47aacc45c8 - Made all the basic texture classes local to their implementation.
They are not needed anywhere else.
- Changed the HackHack hack for corrupt 256 pixel high textures that
  FMultiPatchTexture only calls a virtual function instead of doing any
  type checks of the patch itself.
- Cleaned up the constant definitions in doomdata.h.
- Moved the TEXTUREx structures from doomdata.h to multipatchtexture.cpp
  because they are used only in this one file.
- Removed some more typedefs from r_defs.h and doomdata.h
- Moved local polyobject data definitions from p_local.h to po_man.cpp.


SVN r1012 (trunk)
2008-06-01 20:43:02 +00:00
Randy Heit
32557c4a28 - Fixed: 3D hardware texture filling did not copy pixels with 0 alpha,
preserving whatever was underneath in the texture box previously.


SVN r976 (trunk)
2008-05-16 23:36:47 +00:00
Christoph Oelckers
4667bfe46f - Added translucent blending modes to FMultipatchTexture (not tested yet!)
- Also changed all true color texture creation functions to use proper alpha
  values instead of inverted ones.
- Changed FRemapTable so that all palette entries must contain proper alpha
  values. 
- Fixed: The F1 screen check in m_menu.cpp was missing a NULL pointer check.
- Changed: The boss brain's explosions play weapons/rocklx which is an 
  unlimited sound. This can become extremely loud. Replaced with a new
  sound which is just an alias to weapons/rocklx but has a limit of 4.


SVN r932 (trunk)
2008-04-22 18:48:30 +00:00