Commit graph

16400 commits

Author SHA1 Message Date
Magnus Norddahl
2ce91ea62f - delay converting sprite lightlevels to a shade until we hit ColormapLight 2018-12-17 07:54:46 +01:00
Magnus Norddahl
66b5e6e2ee - delay converting wall lightlevels to a shade until we hit the drawer 2018-12-17 06:47:26 +01:00
Magnus Norddahl
946f657a37 - fix heretic light torch in software renderer and remove some code duplication 2018-12-17 06:13:00 +01:00
Magnus Norddahl
f35aeec6c3 - move visibility calculation to LightVisibility 2018-12-17 05:10:26 +01:00
Magnus Norddahl
9787e32d28 Merge branch 'SoftwareScaling' 2018-12-17 01:33:22 +01:00
Magnus Norddahl
c3477e9197 - softpoly decals were upside down 2018-12-17 01:32:46 +01:00
Magnus Norddahl
9e15f26923 - fix decal upscaling 2018-12-17 01:32:15 +01:00
Christoph Oelckers
4cd745db48 - fixed: Patch rotations were not applied during true color texture composition. 2018-12-17 00:03:36 +01:00
Christoph Oelckers
87953020ba - fixed: FImageSource::GetCachedBitmap did not pass the translucency information along to the caller. 2018-12-16 19:17:53 +01:00
Christoph Oelckers
cce82e99d6 - fixed: The texture compositor did not use a patch's translation. 2018-12-16 19:03:04 +01:00
Magnus Norddahl
15d599813b - add support for scaled textures in softpoly 2018-12-16 15:12:45 +01:00
Magnus Norddahl
eaf1c4f1e2 - implement the physical texture scaling at the drawer transition level as the frontend of the software renderers do not even need to know the textures are scaled 2018-12-16 14:34:44 +01:00
Christoph Oelckers
e776dbce55 - use TArrays for MD3 storage. 2018-12-16 13:33:42 +01:00
Magnus Norddahl
57525f1505 Merge remote-tracking branch 'origin/master' into SoftwareScaling 2018-12-16 12:10:53 +01:00
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