Commit Graph

16236 Commits

Author SHA1 Message Date
Christoph Oelckers cc52f89372 - fixed: For non-persistent buffers, sprite vertices need to be recalculated in the splitter code of the translucent sorter. 2018-12-16 12:06:17 +01:00
Magnus Norddahl 6648f4e47f Merge branch 'master' of https://github.com/coelckers/gzdoom 2018-12-16 11:31:18 +01:00
Magnus Norddahl 88751a320c - fix sky drawers not staying within their numa node 2018-12-16 11:31:05 +01:00
Christoph Oelckers 881fc89fe8 - removed redundant std::move. 2018-12-16 11:29:22 +01:00
Christoph Oelckers 1422a95aa8 Merge branch 'Texture_Cleanup'
# Conflicts:
#	src/textures/formats/multipatchtexture.cpp
2018-12-16 10:19:58 +01:00
Christoph Oelckers a38e75db00 - improved error reporting for badly defined translations.
This needs to be handled by the caller for all use cases because the translation parser lacks the context to do a proper error report.
2018-12-16 09:56:53 +01:00
Christoph Oelckers a96b86b13b - fixed: sidedef-less GLWalls may not apply per-sidedef render properties.
These always come from open-sector render hacks where the renderer tries to fill in some gaps
2018-12-16 09:38:22 +01:00
Christoph Oelckers d0ce021805 - fixed: Both main and worker thread were modifying the portal state.
The parts in the main thread have been offloaded to a new worker job to avoid having to use a mutex to protect the portal state.
2018-12-16 09:05:02 +01:00
Christoph Oelckers 51f03c8215 - a few more fixes. 2018-12-16 00:37:34 +01:00
Christoph Oelckers 87b0567cd7 - the font character substitution logic needed more fixes.
The ZScript DrawChar function was incomplete and FFont::GetChar did not always return the proper texture.
To make things clearer the OriginalPic is now only used in the few cases where substitution takes place and nothing else.
2018-12-15 23:32:49 +01:00
Christoph Oelckers c92e6b03ac - why wasn't this saved? 2018-12-15 21:39:00 +01:00
Christoph Oelckers 39f6489ac5 - two more places where explicit allocations could be replaced. 2018-12-15 20:41:21 +01:00
Christoph Oelckers 091f73b833 - fixed: no sprites were drawn in a sector if it only had ones in its sectorportal_thinglist. 2018-12-15 20:22:42 +01:00
Christoph Oelckers 8e24a50b36 - let FxNop have a value type, even if it's just TypeError. 2018-12-15 20:08:05 +01:00
Christoph Oelckers e6e4f0f305 - disabled redirection to the original patch for FSpecialFont.
Using the same code as for the standard font does not work as intended, the reason still needs to be investigated.
2018-12-15 19:15:05 +01:00
Christoph Oelckers d1ca2a91f3 - fixed: ThePatchRemap table was only initialized in one of FFont's constructors. 2018-12-15 17:49:12 +01:00
Christoph Oelckers c105a1f670 - fixed two broken ScriptUtil calls in FraggleScript. 2018-12-15 16:57:20 +01:00
Rachael Alexanderson 14e9e3ac56 - use software mipmaps for truecolor for scaled textures 2018-12-15 10:50:59 -05:00
Christoph Oelckers 74ea9143ee - added a 'forceworldpanning' map flag.
Since unfortunately this cannot be set as a general default, let's at least make it as easy as possible to disable that panning+scaling madness without having to edit the texture data.
2018-12-15 16:29:37 +01:00
Rachael Alexanderson 3fc9dd4144 Merge remote-tracking branch 'origin/Texture_Cleanup' into softwarescaling 2018-12-15 10:18:39 -05:00
Rachael Alexanderson 2e927c7026 - port texture upscaler code to truecolour 2018-12-15 10:13:28 -05:00
Christoph Oelckers dc9c7afa24 - reimplemented the GetRawTexture redirect. 2018-12-15 16:05:48 +01:00
Rachael Alexanderson aaabefbfab Merge branch 'master' into softwarescaling 2018-12-15 09:51:50 -05:00
Christoph Oelckers 1aba33122b - fixed: The light defaults were not fully deleted on an engine restart. 2018-12-15 15:36:43 +01:00
Christoph Oelckers faa4bb45c9 - store UnchangedSpriteNames in Dehacked in a less hacky manner. 2018-12-15 15:36:33 +01:00
Christoph Oelckers d937c50726 - use a TArray in PPUniforms.
This makes the vast majority of code in that class just go away
2018-12-15 14:59:49 +01:00
Christoph Oelckers 056b2c3a80 - handle CR_UNTRANSLATED so that it doesn't force CR_UNTRANSLATED to the palette.
Since the entire font setup is very much incapable of handling this during rendering, short of a complete rewrite, it was necessary to put the relevant code into the places which process the characters for drawing so that it can disable the translation table (which needs to be passed as raw data to the draw functions) and keep track of both the translatable and the original variant of the character graphics.
2018-12-15 14:51:03 +01:00
Christoph Oelckers 48d87e3dcf - use TArrays for most buffers being used in the font class. 2018-12-15 11:55:21 +01:00
Christoph Oelckers cd25b4be4f - use a TArray to store the particles and remove all 16 bit global variables.
This means one less exit function to deal with - and these days 16 bit variables are a pointless attempt at saving space.
2018-12-15 10:04:49 +01:00
Magnus Norddahl f1fe9a0286 - fix vanilla light mode angle calculation 2018-12-15 10:02:57 +01:00
Christoph Oelckers 3d0fb6cf90 Merge branch 'master' into Texture_Cleanup 2018-12-15 09:45:26 +01:00
Christoph Oelckers 1187906a61 - use symbolic constants for the light modes. 2018-12-15 09:40:39 +01:00
Christoph Oelckers 15949102da Merge branch 'master' of https://github.com/coelckers/gzdoom 2018-12-15 08:27:32 +01:00
Magnus Norddahl 3af6ae4b37 - add vanilla lightmode that behaves exactly as Doom's original light did 2018-12-15 07:11:28 +01:00
Christoph Oelckers 4d8e8e7741 - enable the texture scalers in software mode.
Currently only implemented for 8 bit in the classic renderer.
2018-12-15 00:38:27 +01:00
Christoph Oelckers 656dbc9647 Merge branch 'master' into Texture_Cleanup
# Conflicts:
#	src/textures/texture.cpp
2018-12-14 22:36:26 +01:00
Christoph Oelckers 013d3e2368 - code simplification. 2018-12-14 22:34:28 +01:00
Christoph Oelckers f373752b4f - fixed incorrect alignment of scaled world panned textures combined with per-sidedef scaling in the hardware renderer
This particular case incorrectly factored in the sidedef's scaling factor for how to calculate the offset.
Fortunately this is a very rare case - a quick check yielded no maps depending on it.
Should any map surface that depends on this bug a compatibility option may be needed but it doesn't seem likely that this may be the case.
2018-12-14 20:00:44 +01:00
Christoph Oelckers a19f297ae0 - fixed incorrect alignment of scaled world panned textures combined with per-sidedef scaling in the hardware renderer
This particular case incorrectly factored in the sidedef's scaling factor for how to calculate the offset.
Fortunately this is a very rare case - a quick check yielded no maps depending on it.
Should any map surface that depends on this bug a compatibility option may be needed but it doesn't seem likely that this may be the case.
2018-12-14 19:59:19 +01:00
alexey.lysiuk 4a83f4d251 - disable music playback if WinMM stream cannot be opened
https://forum.zdoom.org/viewtopic.php?t=62888
2018-12-14 15:58:08 +02:00
Christoph Oelckers e157e36b43 - the texture still needs to be added to the texture manager. 2018-12-14 01:48:53 +01:00
Christoph Oelckers bd6ba47d63 - fixed: The multipatch texture builder may not store the texture IDs on assignment.
Between creation and resolving the texture manager will resort the textures and after that the old ids are no longer valid. The textures themselves have the correct one, so that should be used.
2018-12-14 01:47:39 +01:00
Christoph Oelckers 1e844336b9 - fixed memory leak with texture creation. 2018-12-14 01:46:26 +01:00
Christoph Oelckers fc5dd17d77 - fixed 3D floor texture setup.
This code really makes zero sense, it looks like the cases for upper and lower texture should never be entered ever.
2018-12-14 01:31:40 +01:00
Christoph Oelckers 7ffc2f1275 - fixed invalid texture accesses in the software renderer. 2018-12-13 23:25:55 +01:00
Player701 74ec789d0e - Force node rebuild for Plutonia 2 MAP29 to fix BSP glitches 2018-12-13 14:54:33 -05:00
Christoph Oelckers 134460bae6 - one final fix. 2018-12-12 20:16:02 +01:00
Christoph Oelckers 01e05c9b70 - now it's correct. 2018-12-12 20:11:09 +01:00
Christoph Oelckers 7ea1e8acee - fixed layer creation. 2018-12-12 20:08:12 +01:00
Christoph Oelckers 173b8beb33 - cleaned out the FHardwareTexture class, now that the translations are finally handled on a higher level. 2018-12-12 18:55:55 +01:00