Commit graph

17482 commits

Author SHA1 Message Date
Christoph Oelckers
9082ef7d49 - MBF21: more work on flags.
* added handlers for the missing upper flags in the first flag word.
* refactored some code related to MF_BOUNCES to adapt to other flags' changes to avoid constant property updates for too many flags.
* treat anything with RF_ZDOOMTRANS as non-translucent for the purpose of the flag checks.
2021-07-02 19:48:58 +02:00
Christoph Oelckers
e82fd43313 - tweaked shadow code a bit.
* let CASTSPRITESHADOW act as an override for render style checks. If this is set we can assume that a shadow is desired regardless of style.
* reordered code to do the more costly checks only when needed.
2021-07-02 09:12:26 +02:00
Christoph Oelckers
5273ef360e - fixed: shadow alpha for translucent objects was not correct in the hardware renderer. 2021-07-02 08:54:15 +02:00
Christoph Oelckers
8547a55677 - better sprite shadow control
* exclude sprites which are not either opaque or use regular blended translucency from casting shadows.
* exclude wall and flat sprites from casting shadows.

In both of these cases the shadow math is unable to produce anything useful that doesn't look off.
2021-07-02 08:47:58 +02:00
Christoph Oelckers
ff129b26d1 - MBF21: added the code generator for the new functions. 2021-07-01 17:42:24 +02:00
Christoph Oelckers
483c1f6dcf - MBF21: added the weapon functions. 2021-07-01 17:42:24 +02:00
alexey.lysiuk
e63f3e394c - fixed format specifier compilation warnings
src/common/engine/serializer_internal.h:241: warning: format specifies type 'long long' but the argument has type 'int64_t' (aka 'long') [-Wformat]
src/common/engine/serializer_internal.h:250: warning: format specifies type 'long long' but the argument has type 'int64_t' (aka 'long') [-Wformat]
src/common/rendering/vulkan/system/vk_device.cpp:364:29: warning: format specifies type 'unsigned long long' but the argument has type 'uint64_t' (aka 'unsigned long') [-Wformat]
src/common/rendering/vulkan/system/vk_framebuffer.cpp:701:57: warning: format specifies type 'unsigned long long' but the argument has type 'VkDeviceSize' (aka 'unsigned long') [-Wformat]
2021-07-01 13:19:18 +03:00
Christoph Oelckers
c8557b8ab4 - let the DEH parser handle 64 bit values.
We may need them, depending on how the MBF21 flag stuff evolves.
2021-07-01 08:55:01 +02:00
Christoph Oelckers
7ade3b829b - moved MF_INCHASE to flags7.
Due to how the MBF21 flag checkers work the first flag word may not repurpose any unused flags in it. We still need MF_SLIDE to be usable by them, despite being totally unused.
2021-07-01 08:55:01 +02:00
alexey.lysiuk
29f6dd23b9 - fixed compilation with GCC and Clang
src/playsim/p_maputl.cpp:1691:42: error: too many arguments provided to function-like macro invocation
src/gamedata/d_dehacked.cpp:2385:62: error: cannot pass non-trivial object of type 'FString' to variadic function;
2021-07-01 09:24:33 +03:00
Christoph Oelckers
c700682a36 - MBF21: ported the code pointers to ZScript.
So far it's just the functions and some initial changes to Dehacked's parser. None of this is usable yet.
2021-07-01 00:53:15 +02:00
Christoph Oelckers
f701ef5c68 - MBF21: Added parser for the state's 'fast' flag. 2021-06-30 17:44:08 +02:00
Christoph Oelckers
1a0398ae59 - MBF21: new weapon flags.
Except for NOAUTOSWITCHTO all remappings to existing features.
2021-06-30 17:19:38 +02:00
Christoph Oelckers
b043a5a5de - add melee range support to A_Saw and A_Punch.
This is merely for MBF21 support and not a recommended editing feature! There are better ways to define the range of a player's attack!
2021-06-30 14:48:13 +02:00
alexey.lysiuk
a9ad3d1fc3 - prevent appearance of dangling pointers in corpse queue
A dangling pointer in corpse queue may appear if actor is added to the queue when GC is in propagation state.
Enqueued corpse actor remains white, and if it’s destroyed and garbage collected before dequeue, a dangling pointer will be accessed during its removal from the queue.
In console, do `summon CorpseSpawner` and `gc now` with the following script loaded. Without a write barrier, it will crash in two seconds.

```
class TestCorpse : Actor
{
	States
	{
	Spawn:
		POSS U 1 A_Die;
	Death:
		POSS U 1 A_QueueCorpse;
		Stop;
	}
}

class CorpseSpawner : Actor
{
	override void Tick()
	{
		A_SpawnItem("TestCorpse");
	}
}
```

https://forum.zdoom.org/viewtopic.php?t=69842
2021-06-30 10:19:08 +03:00
Christoph Oelckers
9b3782ea0f - MBF21: remaining actor properties. 2021-06-29 22:32:38 +02:00
Christoph Oelckers
e2e8ec8b3e - MBF21: implemented thing flags. 2021-06-29 21:08:58 +02:00
Christoph Oelckers
0bb5ec0d22 - MBF21: splash group. 2021-06-29 17:47:52 +02:00
Christoph Oelckers
cc801a7efa - MBF21: added projectile group. 2021-06-29 17:33:16 +02:00
Christoph Oelckers
bca8d01ab3 - MBF21: infighting groups. 2021-06-29 01:34:14 +02:00
Christoph Oelckers
9b4a4157b9 - added an OnDestroy method to Shape2D so that its users can explicitly free the data it holds.
In this case it is very important to care about management, because this class will hold GPU-side buffers!
2021-06-28 22:21:27 +02:00
Christoph Oelckers
3bef08b1aa - MBF21: implemented the new line scroller types.
These extend the parameter set of Scroll_Texture_Offsets, so in Hexen/UDMF format the advanced scroll types are also available for the tag-less variant.
2021-06-28 22:06:07 +02:00
Cacodemon345
5b1b6f1db4 Add Windows 11 detection 2021-06-28 20:18:52 +02:00
Christoph Oelckers
c4ed0cefde - MBF21: implemented new line flags.
While 'block players' was just a simple remap, 'block land monsters' required quite a bit of work...
This also fixes the bug that BLOCK_FLOATERS was never checked for sliding against a wall.
2021-06-28 20:17:08 +02:00
Christoph Oelckers
057cc0678b - MBF21: handling of new flags in sector special. 2021-06-28 16:20:35 +02:00
alexey.lysiuk
256451115b - report correct macOS version with older SDKs
When built against 10.15 SDK or earlier, macOS 11.0+ returns 10.16 for compatibility, and external process is needed to output the actual version for us
2021-06-15 10:35:33 +03:00
alexey.lysiuk
cf4c72d4a7 - fixed potential crash when sound sequence is destroyed
Level can be unset if sound sequence destruction happens after saved game loading failure

https://forum.zdoom.org/viewtopic.php?t=72551
2021-06-14 09:30:51 +03:00
Christoph Oelckers
4e46a83734 - fixed bad type in FxFontCast. 2021-06-14 08:00:08 +02:00
alexey.lysiuk
38f2402d2d - added TVector2<> constructor from float*
As we seem to do not like explicit constructors, this will make temporary `TVector3<>` object creation much less probable
2021-06-13 10:42:34 +03:00
alexey.lysiuk
ff784fc905 - fixed parsing of 2D vectors in OBJ model loader
There is no `TVector2<>` constructor that accepts a pointer to float. However, there is such constructor in `TVector3<>`, so `TVector2<>` can be constructed from `float*` implicitly via temporary `TVector3<>` object.
2021-06-13 10:42:34 +03:00
alexey.lysiuk
e0f07d7088 - fixed initialization of model frames
Replaced loop arrays initialization and obvious comments with something more readable, I hope

https://forum.zdoom.org/viewtopic.php?t=72523
2021-06-10 11:54:26 +03:00
alexey.lysiuk
5b1c73e15f - prevent redundant string copying in Strife conversation parser
strifedialogue.cpp:110:22: warning: loop variable 'addd' of type 'const FString' creates a copy from type 'const FString' [-Wrange-loop-analysis]
2021-06-08 10:31:45 +03:00
alexey.lysiuk
e166eeb13d - added detection of macOS 12 Monterey 2021-06-08 10:25:05 +03:00
Christoph Oelckers
b3fd8ce12a - fixed permission validation in OptionMenuItemCommand.DoCommand.
This was missing the InMenu check like the other critical menu functions.
2021-06-07 08:16:53 +02:00
emily
4f034950be Make sprite shadows ignore float bob 2021-06-06 13:40:17 +02:00
Christoph Oelckers
8b5847d4a2 - corrected the NUL checks in S_FindSkinnedSound. 2021-06-04 08:26:29 +02:00
alexey.lysiuk
7d1ce1c8cd - fixed parsing of MAPxx par times in BEX lumps
https://forum.zdoom.org/viewtopic.php?t=72458
2021-06-03 16:46:55 +03:00
Christoph Oelckers
30e24938ca - let dynamic lights call UpdateLocation instead of just setting their position right after being spawned.
This ensures that the position is correct and that everything gets set up properly.
2021-05-31 22:13:40 +02:00
Christoph Oelckers
b0ccd3a7df - moved Doom specific font init code out of the backend. 2021-05-31 22:13:40 +02:00
drfrag
d9db8984af - Fixed crash calling ChangeSky() with an invalid texture. 2021-05-29 15:07:45 -04:00
Zandrewnum
acb4d89f52 APROP_Soundclass update again
- Just set init for SoundClass to empty.
- Removed code block from SetActorProperty for APROP_Soundclass that does nothing
- Lower-cased soundclass in FSerializer
- Created a new const char to read the player's soundclass. If the playerpawn returns NAME_None for it's default, then it will set defaultsoundclass to "player". After running the skin code, the function now returns defaultsoundclass or soundclass, depending if soundclass is empty or not.
- Renamed GetSoundClass to S_GetSoundClass
2021-05-28 20:22:37 +02:00
Zandrewnum
a5cf0c6605 Sound Class renovations
- SoundClass is instantiated to "" by default. Since this property is only used when it is not empty (otherwise GetSoundClass just defaults to player), we can get away with this.
- We may want the soundclass to remain the same if we explicitly set it to the same one that is currently used (say, we set SoundClass to "Caleb" so all other skins can use it)
- GetActorProperty for APROP_SoundClass just calls GetSoundClass,
- CheckActorProperty also just runs GetSoundClass
- GetSoundClass is no longer a static method. We needed to access it in other places.
- Made renovations to GetSoundClass. First of all, SoundClass is no longer instantiated there. Secondly, skinned sounds are now returned if SoundClass is empty. Thirdly, "sclass" in this method will return the default soundclass of the player pawn or SoundClass, depending on if SoundClass is empty. Finally, sclass will retrieve "player" if it is empty.
2021-05-28 20:22:37 +02:00
Shiny Metagross
4c9461d364 Update d_player.h
- Deleted some comment fragments I left when trying to get the SoundClass to init to NAME_SoundClass
2021-05-28 20:22:37 +02:00
Zandrewnum
c7cd25cbcc Made S_FindSkinnedSound to use GetSoundClass again
- I couldn't simply init SoundClass to NAME_SoundClass, even after converting it to the appropriate type. Probably because NAME_SoundClass hasn't been parsed from decorate yet. Instead, I change it to NAME_SoundClass through GetSoundClass if it's valid and currently "player".
- The skin checker code in GetSoundClass now checks if the SoundClass is equal to NAME_SoundClass. This mechanism exists so that way reverting the SoundClass to NAME_SoundClass processes the skin soundclass code. If it's different, the code is not processed.
- Just returns sclass. This is never null, so there's no need to check if so.
- S_FindSkinnedSound just uses GetSoundClass. This makes sure skins are checked.
2021-05-28 20:22:37 +02:00
Zandrewnum
f6bdbfe535 APROP_SoundClass inits a default value and checks for null pointers
- Gave default init value to SoundClass as "Player"
- Changed SoundClass detection to use the if/else structure
- Checked for null pointer in S_FindSkinnedSound when reading the player's sound class
2021-05-28 20:22:37 +02:00
Zandrewnum
852a96497d Added APROP_SoundClass
- Added APROP_SoundClass to GetActorProperty, SetActorProperty, CheckActorProperty
2021-05-28 20:22:37 +02:00
nashmuhandes
08fc91fe3e Add 'AddDialogues' in MAPINFO to additively add Strife NPC dialogs without overwriting each other. 2021-05-28 16:15:37 +02:00
Christoph Oelckers
868220107b - added fallback to the parenthesis glyphs for the braces. 2021-05-28 12:36:47 +02:00
Christoph Oelckers
38520e36c8 - fixed generation of default color range for the option menu font. 2021-05-28 12:11:34 +02:00
Christoph Oelckers
20b665c161 - fixed: Actors did not set the position when spawning a dynamic light.
It always reused the previous content of the 'Pos' field which was either undefined or an older position where the actor was located when last spawning a light.
2021-05-28 11:25:01 +02:00
Christoph Oelckers
d36fd4f42b - fixed: GetColorTranslation did not handle translation-less single pic 'fonts' properly. 2021-05-28 10:47:11 +02:00
Christoph Oelckers
36e84a3669 - do not calculate translations for empty fonts.
FONTDEFS will create some due to lack of game filtering.
2021-05-27 13:50:02 +02:00
Christoph Oelckers
5f02b92cd0 - font system overhaul.
This eliminates nearly all palette dependencies, most importantly font translation will now be done on True Color data, making translations on True Color font less destructive.
2021-05-24 21:28:21 +02:00
Rachael Alexanderson
5cde02141c - version bump 2021-05-22 12:48:46 -04:00
nashmuhandes
aeaa7f21c7 Add some new optional parameters to A_SprayDecal:
- useBloodColor: when true, the sprayed decal will be shaded to match the calling actor's blood color.
- decalColor: when defined, the sprayed decal will be shaded to the specified color. Note that this will take precedence over useBloodColor. It is recommended to use only one parameter.

Note that due to how decals work in the engine, the "decalColor" parameter will only properly colorize the decal if the image is grayscale.
2021-05-22 10:20:52 -04:00
Christoph Oelckers
7eef7614f8 - do not send depth bias changes to the GPU if nothing has changed. 2021-05-21 21:01:20 +02:00
Cacodemon345
9a860ae445 Account for portals when spawning missiles in A_FireBullets/A_CustomBulletAttack
This also gives the caller the information whether the LineAttack
hitscan passed through a portal regardless of whether it actually hit an
actor or not as a nice bonus.
2021-05-20 19:42:29 +02:00
Christoph Oelckers
e963010eea - strip trailing spaces off the lines for intermission texts.
Some mods have trailing spaces here that affect the formatting.
2021-05-19 21:28:16 +02:00
Christoph Oelckers
9df70cd0df - change switch checking back to vanilla order. 2021-05-19 19:25:32 +02:00
Christoph Oelckers
a3a65f184f - use stb-image to handle PNGs with 16 bit color channels.
It is still not recommended to use this format - images tend to be huge and setup time is normally prohibitive - but at least they work now.
2021-05-19 19:20:51 +02:00
Christoph Oelckers
bd0ca55a35 - fixed: explicit float to int casts should not emit truncation warnings. 2021-05-19 18:35:36 +02:00
Christoph Oelckers
f0d8bd0a74 - tweaked Hexen's weapon pieces so they do not floatbob into the floor with the hardware renderer. 2021-05-19 18:30:19 +02:00
Christoph Oelckers
af137dbb35 - reset the 'playedtitlemusic' flag in D_StartTitle.
When returning to the title loop the music should play once again.
2021-05-19 16:43:01 +02:00
Rachael Alexanderson
cfc080e37f - never run the shader timer on the 0th frame. fixes this bug: https://forum.zdoom.org/viewtopic.php?f=2&t=62693 2021-05-18 14:37:05 -04:00
Christoph Oelckers
8a4fa8b65f - backend update from Raze. 2021-05-17 20:44:19 +02:00
Christoph Oelckers
97b8c0ccfb Revert "- fixed some uses of postincre,ment/decrements on narrow types."
This reverts commit 668f8f2cf6.

Revert "- added a proper error message when '--' or '++' gets used on 8 or 16 bit values."

This reverts commit a94f5dd1b3.

None of this was necessary - the triggered assert was bogus and had to be removed.
2021-05-17 18:13:30 +02:00
Christoph Oelckers
6e9c85791c - pick the proper dot for cutting off the extension in ExtractFileBase. 2021-05-17 13:11:41 +02:00
Christoph Oelckers
5bf2a26b82 - removed bogus assert from FxMinMax.
This would also trigger on signed/unsigned mismatches which it is not supposed to do.
2021-05-17 12:48:22 +02:00
Christoph Oelckers
0b5b919352 - let the CSV parser for the string table handle hex escapes. 2021-05-17 12:42:45 +02:00
Christoph Oelckers
668f8f2cf6 - fixed some uses of postincre,ment/decrements on narrow types.
THe VM has no opcode for this, all these places produced code with undefined behavior.
2021-05-17 12:42:22 +02:00
Christoph Oelckers
a94f5dd1b3 - added a proper error message when '--' or '++' gets used on 8 or 16 bit values. 2021-05-17 12:27:27 +02:00
Christoph Oelckers
5077973012 - fixed A_CheckTerrain's check for instant death sectors.
This was still checking the sector special even though this had been reactored 5 years ago.
2021-05-17 12:00:16 +02:00
Christoph Oelckers
e47671c865 - make the title music only play once, unless a real demo is successfully played. 2021-05-17 11:41:43 +02:00
nashmuhandes
e2d3f26a35 Fixed wrong alpha value being applied on sprite shadows in the hardware renderer. 2021-05-12 10:48:51 -04:00
Christoph Oelckers
31b1d760b1 - include fix. 2021-05-12 09:58:26 +02:00
Cacodemon345
c1c4066c76 SDL: Report Vulkan initialization errors 2021-05-09 22:57:00 +03:00
Rachael Alexanderson
bc15ded2a1 - make DI_ALPHAMAPPED change the style to STYLE_Shaded in the status bar drawer 2021-05-07 03:41:41 -04:00
Christoph Oelckers
c51af868de Revert "- restricted the portal rendering shortcut only to real skies in the primary layer."
This reverts commit b193e582ce.

This made the one thing I hoped it would fix even worse so it's useless.
2021-05-07 09:05:56 +02:00
Christoph Oelckers
3477d6c7c1 - added missing default values. 2021-05-03 14:33:40 +02:00
Christoph Oelckers
52554dc32c - Backend update fron Raze, mainly new script exports and extensions. 2021-05-03 14:13:03 +02:00
Christoph Oelckers
b193e582ce - restricted the portal rendering shortcut only to real skies in the primary layer.
This won't work properly with sector portals that contain other portals because those setups require a proper stencil to work as expected.
2021-05-03 13:58:46 +02:00
alexey.lysiuk
66e220ff9c - removed SDL2 version check
https://forum.zdoom.org/viewtopic.php?t=72152
2021-05-03 08:20:01 +03:00
alexey.lysiuk
80ba522b20 - brought back old SDL2 CMake module
https://forum.zdoom.org/viewtopic.php?t=72152
2021-05-02 22:02:35 +03:00
alexey.lysiuk
1efb9f4def - cleaned and minimized SDL2 version check 2021-05-02 13:05:20 +03:00
Cacodemon345
e4ada10e78
Remove support for SDL2 2.0.5 and earlier 2021-05-02 12:59:38 +03:00
William Breathitt Gray
f676cd81d2 Remove FindSDL2 find-module, use sdl2-config.cmake instead
This requires SDL >= 2.0.4.

Since <https://bugzilla.libsdl.org/show_bug.cgi?id=2464> was fixed in
SDL 2.0.4, SDL behaves as a CMake "config-file package", even if it was
not itself built using CMake: it installs a sdl2-config.cmake file to
${libdir}/cmake/SDL2, which tells CMake where to find SDL's headers and
library, analogous to a pkg-config .pc file.

As a result, we no longer need to copy/paste a "find-module package"
to be able to find a system copy of SDL >= 2.0.4 with find_package(SDL2).
Find-module packages are now discouraged by the CMake developers, in
favour of having upstream projects behave as config-file packages.

This results in a small API change: FindSDL2 used to set SDL2_INCLUDE_DIR
and SDL2_LIBRARY, but the standard behaviour for config-file packages is
to set <name>_INCLUDE_DIRS and <name>_LIBRARIES. Use the CONFIG keyword
to make sure we search in config-file package mode, and will not find a
FindSDL2.cmake in some other directory that implements the old interface.

In addition to deleting redundant code, this avoids some assumptions in
FindSDL2 about the layout of a SDL installation. The current libsdl2-dev
package in Debian breaks those assumptions; this is considered a bug
and will hopefully be fixed soon, but it illustrates how fragile these
assumptions can be. We can be more robust against different installation
layouts by relying on SDL's own CMake integration.

When linking to a copy of CMake in a non-standard location, users can
now set the SDL2_DIR or CMAKE_PREFIX_PATH environment variable to point
to it; previously, these users would have used the SDL2DIR environment
variable. This continues to be unnecessary if using matching system-wide
installations of CMake and SDL2, for example both from Debian.

This is based on the patch written by Simon McVittie for OpenJK:
52030235f0
2021-05-02 12:45:45 +03:00
Rachael Alexanderson
153968dc7c - change vid_allowtrueultrawide - -1 allows for any arbitrary ratio for hud aspects, 0 changed to old behavior (max 16:9), 1 changed to old behavior except at 21:9, 1 is now the default.
- `vid_allowtrueultrawide` is now placed in game-specific config, instead of global.
2021-05-02 01:25:21 -04:00
nashmuhandes
ff35ea9ac7 Don't print the weapon tag if the game is paused 2021-04-27 00:07:24 +02:00
nashmuhandes
afd7b2e954 Allow settable render styles for status bar drawing functions DrawTexture, DrawImage and DrawString 2021-04-26 23:04:39 +02:00
alexey.lysiuk
8695325383 - fixed saving game to wrong save slot
This is a temporary solution as it makes GZDoom and Raze code bases incompatible

https://forum.zdoom.org/viewtopic.php?t=72085
2021-04-26 09:46:20 +03:00
Rachael Alexanderson
a2d3dbf74e - Change VKHardwareTexture::CreateTexture to allow a null buffer to be passed. This is used by the software renderer to create an arbitrary texture for screen rendering. 2021-04-25 02:06:40 -04:00
nashmuhandes
bfb83abbc2 Default Heretic's, Hexen's and Strife's default screen wipe styles to match their original counterparts. 2021-04-24 22:46:03 -04:00
nashmuhandes
15159a3c19 Add sprite shadows for the hardware renderer 2021-04-24 22:40:54 -04:00
nashmuhandes
5446a1a355 Add sprite shadows for the software renderer 2021-04-24 22:40:54 -04:00
Marisa Kirisame
a172513535 Expose level_info_t to scripting + helper functions. 2021-04-24 22:37:50 -04:00
James Le Cuirot
90381c4ad6 Allow ACS SpawnDecal zoffset and distance args to be fixed point
The wiki currently says they should be fixed point but the code
currently treats them as integers. Given that they are placed with
double precision horizontally, it is odd that the same precision
cannot be applied vertically. Changing this would break existing maps
so add two flags to support both types.
2021-04-24 14:37:20 -04:00
Nikolay Ambartsumov
cf30982ddf Add Polyobj_StopSound special 2021-04-24 15:31:04 -03:00
alexey.lysiuk
4bcea0ab78 - handle empty command names when getting key binds
See https://github.com/Realm667/WolfenDoom/issues/498
2021-04-19 18:09:20 +03:00
alexey.lysiuk
de0361842f - removed useless initializations in binds printing ACS code
variables are initialized by FKeyBindings::GetKeysForCommand() anyway
2021-04-19 18:05:52 +03:00
emily
e24ff0ac9c Don't warn about UDMF comments or user fields 2021-04-19 14:07:54 +02:00
Christoph Oelckers
ba146ed5e5 - Backend update from Raze 2021-04-19 12:58:35 +02:00
Rachael Alexanderson
0ecd35b0b4 - remove Vulkan button on startup if Vulkan compilation is disabled 2021-03-31 18:39:52 -04:00
drfrag
25ab8e20ba - Fix crash with fog and software light modes. 2021-03-29 09:38:51 -04:00
Magnus Norddahl
4e503a1d1b Removed depthClamp requirement (note: portals will not render correctly on such devices)
Added format fallback support for VK_FORMAT_A2R10G10B10_UNORM_PACK32 since the pi4 doesn't support it
2021-03-28 18:26:23 +02:00
Rachael Alexanderson
ad8ae0f146 - set libADL and libOPN bank settings (only) to game specific 2021-03-28 09:01:54 -04:00
Erick Vasquez Garcia
03473abea2 A software implementation for gamma, brightness, contrast and saturation effects on SoftPoly. Based on original code by @dpjudas, thanks for the code. 2021-03-27 10:35:41 +01:00
Erick Vasquez Garcia
bf3018cc84 Bug fix in invulnerability in Doom Software Render Mode and True Color SW Render in SoftPoly. 2021-03-27 10:35:41 +01:00
nashmuhandes
4d353318d9 Don't let the game start if the saved game passed to -loadgame is invalid. Often times, especially during a multiplayer game, a player can accidentally pass an invalid save file to load at the command line, which results in the netgame starting anyway before immediately desyncing. This aims to address that. 2021-03-26 07:13:39 -04:00
Magnus Norddahl
61d49a2007 Fix texture loading race condition and improve performance by only locking the load mutex if data hasn't already been updated for this frame 2021-03-26 07:09:33 -04:00
Magnus Norddahl
d1f47afd96 Add debug code for showing the render slices 2021-03-26 07:09:33 -04:00
Magnus Norddahl
272ca6cd92 Fix truecolor drawer crash 2021-03-26 07:09:33 -04:00
Magnus Norddahl
e7476e5dac Fix fullbright shade bug 2021-03-26 07:09:33 -04:00
Magnus Norddahl
bdb35e5e86 Fix some r_scene_multithreaded crashes 2021-03-26 07:09:33 -04:00
Magnus Norddahl
fb87f90d86 Fix some r_scene_multithreaded related bugs 2021-03-26 07:09:33 -04:00
Magnus Norddahl
4cd994c027 Remove threading from the drawers 2021-03-26 07:09:33 -04:00
Rachael Alexanderson
6e5dbbc8ec Revert "Merge dpJudas's renderslices branch (#1356)"
This reverts commit a5cba1aba5.
2021-03-26 07:08:31 -04:00
Xaser Acheron
a5cba1aba5
Merge dpJudas's renderslices branch (#1356)
* Remove threading from the drawers

* Fix some r_scene_multithreaded related bugs

* Fix some r_scene_multithreaded crashes

* Fix fullbright shade bug

* Fix truecolor drawer crash

* Add debug code for showing the render slices

* Fix texture loading race condition and improve performance by only locking the load mutex if data hasn't already been updated for this frame

Co-authored-by: Magnus Norddahl <dpjudas@users.noreply.github.com>
2021-03-25 20:58:08 -04:00
emily
c6073d9c9d Make i_timescale cvar virtual
Changing i_timescale in a netgame would cause its callback to recurse
into itself infinitely. CVAR_VIRTUAL prevents this.
2021-03-24 19:03:41 +01:00
Cacodemon345
3b50f7dfa6 SDL: Don't write garbage to output if it is redirected 2021-03-21 12:09:19 +02:00
sgrunt
0c776e3acd Move the modified behaviour to a new "resetvel" parameter 2021-03-19 20:12:20 +01:00
sgrunt
3873ad6151 Fix behaviour of VelIntercept's oldvel parameter
Previously Vel would be reset only if the target was moving. This change
ensures that Vel is always reset, as seems to be the intent of the
oldvel parameter.
2021-03-19 20:12:20 +01:00
drfrag
cdbae4b5d9 - Fixed crash with voodoo dolls in MP after players quit the game. 2021-03-19 20:10:39 +01:00
James Le Cuirot
8ef02544a7 Fix camera texture aspect ratio in hardware renderer
It wasn't respecting the map's pixel ratio setting. This wouldn't have
been very noticeable with the default pixel ratio of 1.2 but it was
very obvious with 1.8.
2021-03-19 00:04:46 +01:00
nashmuhandes
b28e5cb917 Add GetCharacterName() to retrieve an NPC's name as defined in its dialogue script, if it exists. Otherwise it will just return the same output as GetTag(). 2021-03-15 21:31:16 +01:00
Christoph Oelckers
798604e6de - removed config updates for pre-GZDoom versions of ZDoom.
GZDoom 0.9 had config version 205, so the adapters for 202-204 are not needed.
2021-03-14 08:44:30 +01:00
Christoph Oelckers
a80775a1e8 - adapt mod_dumb_mastervolume to the increased default volume in ZMusic. 2021-03-14 08:40:34 +01:00
Christoph Oelckers
f0ddc063b0 - do not sort level names in the statistics output when saving.
Instead do this when creating the data to avoid trashing manual edits. The old sorter resorted all data loaded from the old file as well.
2021-03-13 13:11:03 +01:00
Christoph Oelckers
fa0be28af1 - print a message if saving the statistics file fails. 2021-03-13 12:21:35 +01:00
Christoph Oelckers
ae09ca7a48 - moved EColorManipulation into the backend. 2021-03-13 12:21:07 +01:00
Christoph Oelckers
a0cffca3bb - restore accidentally deleted 'testmusicvol' CCMD. 2021-03-12 08:48:59 +01:00
Christoph Oelckers
3d55c76a89 Merge branch 'replaygain' 2021-03-12 08:48:00 +01:00
Christoph Oelckers
d1023046ba - default replay gain to 'off'. 2021-03-11 15:47:05 +01:00
Christoph Oelckers
b9dafaaa6b - fill in the MIDI defaults for generating the lookup string for replay gain.
Both synth and sound font can be very relevant here for the final volume so using the same song with different settings needs to create different strings.
2021-03-11 00:20:19 +01:00
Christoph Oelckers
f11780600f - implemented replay gain calculation and management.
This is done entirely on the streamed sound data, unlike the old relative volume which uses the backend's volume setting.
2021-03-10 23:06:21 +01:00
drfrag
12aa7a8ff6 - Fix crash with wind effect on special water sectors. 2021-03-10 13:37:57 +01:00
nashmuhandes
b7bbfd4efd Add SetSubtitleNumber(int num, str sound) ACS function. Works exactly like its ZScript counterpart. The activator of the script must be a player. 2021-03-09 09:37:10 +01:00
Christoph Oelckers
ba618d308c - bumped CMake version to 3.1.0 in all projects to reduce warning spam in recent versions.
3.1.0 is the highest minimum set in the existing subprojects so this will not exclude anything that hadn't been already.
2021-03-08 13:58:29 +01:00
alexey.lysiuk
952d43b884 - escape double quotes in Cocoa IWAD picker's extra arguments
https://forum.zdoom.org/viewtopic.php?t=71675
2021-03-08 11:44:14 +02:00
Christoph Oelckers
d18b74b537 Merge branch 'master' of https://github.com/Chernoskill/gzdoom 2021-03-06 11:32:31 +01:00
Chernoskill
bb18bbaff4
Update models.cpp 2021-03-06 11:28:13 +01:00
Chernoskill
d1ea33a815
Update models_obj.cpp 2021-03-06 11:27:23 +01:00
Chernoskill
27cf152438
Update models_ue1.cpp 2021-03-06 11:26:53 +01:00
Chernoskill
4e583772d7
Update models_md3.cpp 2021-03-06 11:26:31 +01:00
Chernoskill
72787c2c4c
Update model.h 2021-03-06 11:18:45 +01:00
Christoph Oelckers
8feba7dff9 - fixed: line portal rendering PR was missing handling for portals with z offset.
Since it used the back sector's height directly the needed offsetting was not applied to the upper and lower texture.
2021-03-05 17:19:02 +01:00
Timothy Quinn
fa2228d523 - Line_QuickPortal must check the partner line's special. 2021-03-05 16:40:12 +01:00
Christoph Oelckers
0c0ef4f938 - reinstated rendering of mid textures over two-sided wall portals.
This was removed in the last PR due to z-fighting problems which now have also been addressed
2021-03-05 12:25:41 +01:00
Timothy Quinn
a15216c90f - fixed rendering of one-sided line portals in the hardware renderer
# draw upper and lower textures when the back sector does not properly match
# do not draw middle textures on portal lines
# minor optimization to 'is***Portal' functions to avoid memory access in the most common case of no portal being present.
2021-03-05 12:02:31 +01:00
nashmuhandes
16b0dd2fe8 Fix random crash when travelling between hub maps in multiplayer. 2021-03-05 10:56:51 +01:00
Timothy Quinn
7e74d1c4a1 - ported Eternity's Line_QuickPortal 2021-03-04 22:54:36 +01:00
Christoph Oelckers
ecc4d31aa5 - fixed memory leak in UDMF loader.
When the extsector allocation was moved, this hadn't been adjusted yet, it still allocated its own buffer which never got freed again.
2021-03-04 16:55:50 +01:00
Christoph Oelckers
357163c60d - Backend update from Raze. 2021-03-04 14:45:29 +01:00
Magnus Norddahl
996b4f9f5c Implement depth clamp 2021-03-02 03:22:18 +01:00
Magnus Norddahl
d6f8e80177
Fix portals not working in softpoly (#1323) 2021-02-28 20:24:15 -05:00
Chernoskill
fa2058004b The two TArrays of type FTextureID skinIDs and surfaceskinIDs no longer have any null elements. These elements will have a textureid (FTextureID.texnum) of 0.
Re-worded error messages which were unprecise or unfitting before (model index below 0 was not acknowledged at all, or grouped together with a "too many models" message).

modelIDs are given a default value of -1.

Important: A MODELDEF's FrameIndex lines can no longer refer to model indices that are beyond the number of models of that MODELDEF entry. There is in fact a check to avoid going beyond the number of an actor's models which would abort program operation at startup, but it never caught any such occurances.

surfaceSkinIDs was two-dimensional and is now a one-dimensional TArray as well, elements are accessed via [Row + Column * NumRows], in this case surfaceIndex + modelIndex * MD3_MAX_SURFACES]
Used TArray.Alloc to make TArrays have the correct size depending on the number of models.

Also removed MAX_MODELS_PER_FRAME.
Edited skinSurfaceIDs access for one-dimensional TArray

Added MD3_MODELS_MIN
To ensure compatibility with mods, all model-related TArrays (four in total) have a minimum size of 4, defined by MD3_MODELS_MIN.
2021-02-26 22:22:33 +01:00
Christoph Oelckers
feb3520ee9 - added m_swapbuttons CVAR for the Windows RawInput and DirectInput backends.
The problem I discovered is that these backends do not respect the GUI-side system setting for swapping the buttons, so this needs to be done in-application so that swapped buttons can behave the same in the menu and the game.
2021-02-26 10:37:55 +01:00
Gutawer
73dc528112
- fix some crashes in the Shape2D VBO code due to unsound pointer usage (#1318) 2021-02-25 10:49:41 -05:00
Rachael Alexanderson
d6987ff6b2 Revert "Dynamic number of models per frame instead of a hard limit of four. (#1298)"
This reverts commit 769d60a64f.
2021-02-25 09:58:17 -05:00
Xaser Acheron
4b7560cd36 fix: MBF's A_Spawn DEH codepointer should use misc2 as spawnheight, not distance 2021-02-25 08:05:10 +01:00
Cacodemon345
a531c9c35f
Properly abort the program if the SDL window can't be created at all (#1296) 2021-02-24 15:27:42 -05:00
Chernoskill
769d60a64f
Dynamic number of models per frame instead of a hard limit of four. (#1298)
* Changed model-related arrays to TArrays.

* Update models.cpp

Used TArray.Alloc to make TArrays have the correct size depending on the number of models. 
surfaceSkinIDs was two-dimensional and is now a one-dimensional TArray as well, it's size is now (models * MD3_MAX_SURFACES)
surfaceSkinIDs was two-dimensional and is now a one-dimensional TArray as well, elements are accessed via [Row + Column * NumRows], in this case sSurfaceIndex + modelIndex * MD3_MAX_SURFACES]

* Edited skinSurfaceIDs access for one-dimensional TArray

* Edited skinSurfaceIDs access for one-dimensional TArray

* Edited skinSurfaceIDs access for one-dimensional TArray

* Changed model-related arrays to TArrays.

Also removed MAX_MODELS_PER_FRAME.

* Used TArray.Alloc to make TArrays have the correct size depending on the number of models. 

surfaceSkinIDs was two-dimensional and is now a one-dimensional TArray as well, elements are accessed via [Row + Column * NumRows], in this case surfaceIndex + modelIndex * MD3_MAX_SURFACES]

* Used TArray.Alloc to make TArrays have the correct size depending on the number of models. 

surfaceSkinIDs was two-dimensional and is now a one-dimensional TArray as well, elements are accessed via [Row + Column * NumRows], in this case surfaceIndex + modelIndex * MD3_MAX_SURFACES]

* Update models.h

* Edited MAX_MODELS_MD3

* Update models_obj.cpp
2021-02-24 15:26:47 -05:00
nashmuhandes
4d56754171 Made Strife NPC's dialog voice audible for all players. 2021-02-24 08:18:53 +01:00
Nash Muhandes
21ea68d552
Fix player not being able to talk to a Strife NPC during netplay, if another player talked to that NPC first. (#1312)
The ConversationNPC and ConversationPC fields were not cleared if the conversation was closed by selecting the goodbye option, or if the conversation was closed from the item checks.

https://forum.zdoom.org/viewtopic.php?f=2&t=53655
2021-02-23 12:35:06 -05:00
DarkOK
1cf0b18897 Fix typo with name in copyright
The first 'h' in Christopher is capitalized when it shouldn't be
2021-02-20 20:25:24 +01:00
alexey.lysiuk
e6810620cd - restored sound-related developer messages
https://forum.zdoom.org/viewtopic.php?t=71486
2021-02-20 11:00:12 +02:00
Erick Vasquez Garcia
65b0047b26 SoftPoly: Fixed the md3 models, you can now correctly display the frame of the model, in addition, interpolation is added to the model.
This error is mentioned by drfrag in the following link https://forum.zdoom.org/viewtopic.php?f=336&t=71228
2021-02-20 09:14:18 +01:00
dondiego
395fc28e12
SoftPoly: Fixed the screen turning white with invulnerability sphere in Doom and in Heretic avoiding color errors in some pixels when activating the "ring of invincibility". (#1307)
Co-authored-by: Erick Vasquez Garcia <erickv5394@gmail.com>
2021-02-18 23:37:53 -05:00
Player701
387abf81a0
- Added a new intrinsic for class pointers to check if the class is abstract (#1308) 2021-02-18 11:17:23 +01:00
Erick Vasquez Garcia
78c0ec0470 - Fixed sprites were not affected by dynamic lights on SoftPoly. 2021-02-16 08:27:02 -05:00
alexey.lysiuk
d23755f76b - fixed missing 'player left the game' message 2021-02-15 11:18:06 +02:00
Magnus Norddahl
3b7ada83bf Fix black wall sprites 2021-02-14 14:05:52 -05:00
Magnus Norddahl
2855b1c4ae Fix line portal clipping bug 2021-02-14 13:59:35 -05:00
Rachael Alexanderson
c86715e521 - add -noautoexec command line parameter to disable the execution of autoexec.cfg files 2021-02-14 10:47:00 -05:00
drfrag
97a4080496 - Amend previous commit: fix the wallsprites crash. 2021-02-13 12:34:31 -05:00
Magnus Norddahl
1a5f0fd40a Fix Additive Shaded renderstyle for UDMF things bugged 2021-02-13 12:32:28 -05:00
Raccoon
59fcf45222
Add Warnings for when PNG loads fail due to unsupported flags (#1302)
This was the result of an issue which stumped the entire Discord, which led to me having to debug from source to find why some relatively standard publicly available PBR materials work.  GZDoom is the ONLY program in the typical development stack (GIMP, Slade, UDB) with this narrow of support for the PNG format. As such, the average developer will have no other way to figure out what's going wrong without these: these CANNOT be allowed to fail silently.  As things like PNG-compression and 64-bit color become more common in royalty-free PBR materials, support should be an eventual target.  Even then, these warnings should remain to prevent this from being an issue the next time things change.
2021-02-12 19:37:18 +01:00
Christoph Oelckers
c9ed4293f7 - backend update from Raze. 2021-02-12 14:40:34 +01:00
Rachael Alexanderson
4100251e25 - another wallsprite crash fix: https://forum.zdoom.org/viewtopic.php?f=56&t=71450 2021-02-12 06:49:47 -05:00
Magnus Norddahl
7e68223794 Add support for zero size buffers as the hwrenderer uses that!
Also add a sanity check on zero size textures just in case that ever happens!
2021-02-12 06:38:26 -05:00
Cacodemon345
f2469c6dcf Change _access to _waccess 2021-02-12 09:07:09 +01:00
Cacodemon345
349a2e9235 Fix crash when trying to open unreadable IWAD files 2021-02-12 09:07:09 +01:00
Cacodemon345
0a30c19138 Fix crash when following symlinks to nonexistent IWAD files 2021-02-12 09:07:09 +01:00
alexey.lysiuk
6bc82bdeff - fixed incorrect extension of overridden function prototype
Prototype of overridden function with optional argument(s) missing could extend unrelated prototype of previously defined function when their arguments and return value(s) match

https://forum.zdoom.org/viewtopic.php?t=71340
2021-02-12 08:42:57 +01:00
Magnus Norddahl
d7924d6e9d Fix dancing sprites regression 2021-02-11 23:05:08 -05:00
alexey.lysiuk
e0e0fb0d8f - fixed uninitialized global rolloff in sound engine
Depending on SNDINFO definitions, type of global rolloff could left uninitialized, and linear rolloff might be treated as logarithmic

https://forum.zdoom.org/viewtopic.php?t=70248
2021-02-08 11:50:00 +02:00
Christoph Oelckers
917eb2b5e3 - fixed: FTextureManager::ReplaceTexture did not calculate the upscale flags. 2021-02-07 09:19:56 +01:00
alexey.lysiuk
74685a1360 - added detection of more x86 extended CPU instructions
Replaced report of 3DNow support with recent fancy CPU instructions
2021-02-06 16:56:59 +02:00
alexey.lysiuk
6d47d79e22 - removed useless x86.h #include's 2021-02-06 15:01:08 +02:00
alexey.lysiuk
d9a5c00cd4 - cleaned x86 CPU detection of obsolete code 2021-02-06 15:01:08 +02:00
alexey.lysiuk
a7e97daa86 - added detection of a few x86 extended CPU instructions
i hope this will make some people a bit happier
2021-02-06 15:01:08 +02:00
Christoph Oelckers
572db3930d - removed unused FSoftwareTexture::GenerateBgraMipmapsFast() function. 2021-02-06 13:18:15 +01:00
Gutawer
aad50cb218 - fix alpha (and other parameter properties) not reuploading the buffer on Shape2D 2021-02-06 06:49:20 -05:00
Alexander Kromm
a2f8b7d0df add "hidepartimes" MAPINFO/GameInfo property 2021-02-02 03:36:06 -05:00
Cacodemon345
b5f80bb69c Hitscan attacks can now hit SPECTRAL actors if the hitscan puff has SPECTRAL flag set 2021-02-02 03:33:23 -05:00
Cacodemon345
3c5f5f392f Add progress bar for SDL backend 2021-02-02 03:32:40 -05:00
drfrag
421b6a0343 - Fixed "Messages ON" not being printed. 2021-02-02 03:31:20 -05:00
alexey.lysiuk
9bd07e5c83 - improved JIT simple frame error message
https://forum.zdoom.org/viewtopic.php?t=71340
2021-01-31 14:47:33 +02:00
Rachael Alexanderson
ad66063354 - oops this was not supposed to be in master
Revert "- failed attempt at automap line thickness"

This reverts commit 9651dd3a48.
2021-01-31 06:24:43 -05:00
Rachael Alexanderson
8a4b5dfb77 - remove Raspberry Pi1/2 support completely 2021-01-31 06:18:21 -05:00
Rachael Alexanderson
6dc218062f Merge branch 'master' of https://github.com/coelckers/gzdoom 2021-01-30 23:28:51 -05:00
alexey.lysiuk
7e02c5f210 - replaced linked sector constructor with default initializers 2021-01-30 15:49:55 +02:00
alexey.lysiuk
ac05f0a6b2 - added initialization of linked sectors
Resizing of linked sectors arrays during serialization could lead to processing of pointers to junk data

https://forum.zdoom.org/viewtopic.php?t=71252
2021-01-30 15:09:35 +02:00
Rachael Alexanderson
b9e37ff0f4 Merge branch 'master' of https://github.com/coelckers/gzdoom 2021-01-29 22:52:33 -05:00
Rachael Alexanderson
9651dd3a48 - failed attempt at automap line thickness 2021-01-29 22:52:28 -05:00
drfrag
638c49fe0f - Fixed nodes were not rebuilt after loading broken extended nodes. 2021-01-29 20:39:27 +01:00
Christoph Oelckers
f108a106c9 - backend update from Raze. 2021-01-29 13:54:18 +01:00
Rachael Alexanderson
d3804911cf - Fix the previous commit
Revert "Fixed a missing parameter in S_Sound's ZScript prototype that was causing assertion failures."

This reverts commit 619f44decd.
2021-01-18 04:02:12 -05:00
Chronos Ouroboros
619f44decd Fixed a missing parameter in S_Sound's ZScript prototype that was causing assertion failures. 2021-01-17 22:22:40 -03:00
Rachael Alexanderson
c783b9dce9 - 21:9 improvements
- vid_aspect is now set to change to 21:9's ACTUAL aspect - 64:27
- screen elements now scale to 64:27 properly. to restore classic behavior, set cvar `vid_allowtrueultrawide` to false
2021-01-17 11:41:36 -05:00
Rachael Alexanderson
efa788cd5e - remove erroneous assert in the ZScript codegen compiler
- fixes issue #1279
2021-01-17 10:58:44 -05:00
Rachael Alexanderson
b70c66e2cc - make ARM compiler flags optional, detect based on ${ZDOOM_TARGET_ARCH}, do not activate on Apple build systems 2021-01-17 06:30:14 -05:00
Kevin Caccamo
26eac560dd Fix ScriptCall missing default arguments
There was one VMCall in DLevelScript::ScriptCall that didn't use default arguments. This was causing assertion failures in the GZDoom debug build when trying to run Wolfenstein: Blade of Agony on any map that wasn't TITLEMAP, because ACSTools.FindInventoryClass returns a boolean, and it has a default argument.
2021-01-16 17:11:39 +01:00
Marisa Kirisame
44b4359ba5 Add alternate "Full" mode for PowerIronFeet that prevents leaky damage. 2021-01-16 17:09:57 +01:00
drfrag
24cf27e9e2 - Fix ALWAYSFAST actor flag. 2021-01-13 20:13:52 +01:00
William E. Waterman
3261eb3643
Side By Side Letterbox Display mode (#1255)
* Added SBSLETTERBOX to menudef.txt

* Changed PresentSideBySide in gl_renderer

Needed for new side-by-side mode

* Added VR_SIDEBYSIDELETTERBOX to gl_stereo3d.cpp

For side by side letterbox display mode

* Added VR_SIDEBYSIDELETTERBOX to hw_modes.h

For new side by side letterbox display mode

* Added VR_SIDEBYSIDELETTERBOX to hw_vrmodes.cpp

For Side By Side Letterbox display mode
2021-01-13 07:09:13 -05:00
Rachael Alexanderson
476e59fbab - add sv_instantreaction dmflag 2021-01-13 07:04:18 -05:00
drfrag
4ff72e937f - Fixed: Monster reaction time was always zero with fast monsters and not just on nightmare. 2021-01-13 06:30:13 -05:00
Chronos Ouroboros
d8164e0050 - Fix the "Max" constant being incorrect for unsigned int types. 2021-01-06 15:50:58 -03:00
Rachael Alexanderson
7afae96530 - add new detection hashes for newer versions of nerve.wad
- partially fixes issue #1263
2021-01-06 07:05:40 -05:00
Rachael Alexanderson
65c7b77997 - update $musicalias to allow iwad remapping when used from game_support.pk3
- add music aliases for the unity version of Doom/Doom2 for digitized game soundtrack
- this fixes issue #1268
2021-01-06 06:32:04 -05:00
Rachael Alexanderson
e6c71c2f0c - reimplement fix #1267 from @drfrag666 differently - fix damagecount overflow 2021-01-05 11:09:19 -05:00
alexey.lysiuk
1767fdfe7a - extended operating system information with os-release's pretty name
https://www.freedesktop.org/software/systemd/man/os-release.html
2021-01-02 14:59:31 +02:00
Rachael Alexanderson
6089c34558 - oops forgot to add this file 2021-01-02 07:47:25 -05:00
Gutawer
276cdde112
Modify Shape2D so that it manages its own vertex buffer rather than using the draw list (#1249)
* - modify Shape2D so that it manages its own vertex buffer

* - fix the last commit failing on Shape2Ds that were modified after AddShape was called

* - make buffers an array of F2DVertexBuffers instead of an array of pointers

* - fix AddShape with the same VBO but different transformation crashing the game

* - formatting fixes
2021-01-02 07:41:32 -05:00
Emily
7db7b0c7e6
Fix IfItem amount not being checked (#1262) 2021-01-02 07:39:14 -05:00
Rachael Alexanderson
e917cd0a2c - oops, fix previous commit, that wasn't meant to be in there 2021-01-01 22:44:36 -05:00
Rachael Alexanderson
54fba4d642 - windows: create stub functions for the crash logger for ARM. this invites the possibility, hopefully, that if someone is inclined, to actually make one. it also cleans up the code a little bit for intel. 2021-01-01 20:52:18 -05:00
alexey.lysiuk
499df03821 - removed limitation on number of descriptor set layout bindings
https://forum.zdoom.org/viewtopic.php?t=70955
2021-01-01 14:46:24 +02:00
Cacodemon345
0dda8733db
Print name of OS on POSIX systems when using SDL
#1265
2020-12-31 14:48:48 +02:00
Rachael Alexanderson
df4f41f4e8 - Modified commit from @OrdinaryMagician #1261
- Always allow skyboxes by default
- Add option to disable skyboxes through mapinfo
Squashed commit of the following:

commit d4c4d9310d
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Wed Dec 30 09:58:39 2020 +0100

    Disable AO for skybox portals (can be forced back with MAPINFO flag).
2020-12-30 11:08:43 -05:00
dondiego
c59c2431ea
- Add autodetection for GOG's releases of Heretic and Hexen. (#1259) 2020-12-29 21:25:20 -05:00
Christoph Oelckers
6406427eb7 - added check for M_IsAnimated to TryRunTics. 2020-12-11 11:51:52 +01:00
Christoph Oelckers
6f4dfd9a61 - added the option to look for music by using a truncated 8-character variant of the given name.
This workaround is needed because there's known old mods depending on this legacy behavior.
2020-12-11 11:39:24 +01:00
Christoph Oelckers
423fe60080 - fixed: strbin did not check for a terminating 0-character right after an escaping backslash. 2020-12-11 11:22:07 +01:00
Rachael Alexanderson
64ff15b82b
Squashed commit of the following: (#1248)
commit bbfb934e80
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Sun Dec 6 23:50:15 2020 -0500

    - and now it builds! but ... does it run?

commit 67096c8966
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Sun Dec 6 22:25:13 2020 -0500

    - one more step closer to compile

commit 5a0c84dd2d
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Sun Dec 6 22:13:39 2020 -0500

    - set up dynamic opengl load for windows

commit 6ef8118b80
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Sat Dec 5 16:38:53 2020 -0500

    - allow compiling for win-arm64

commit 7d6f3797c4
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Fri Dec 4 05:18:29 2020 -0500

    - allow targeting ARM64 on Windows

Co-authored-by: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
2020-12-10 09:16:28 -05:00
Gutawer
f223005584 - fix keyboard repeat events not being sent to menus if TranslateKeyboardEvents is true 2020-12-09 16:20:42 -03:00
makise-homura
10c682acf6 Change type of ops[] to deal with goto *p for EDG compilers 2020-11-30 09:26:16 +02:00
Chris Robinson
51adcd45e6 Simplify manual sound rolloff handling 2020-11-25 16:26:38 +01:00
Rachael Alexanderson
93f023db80 - change all optional game support archive loaders to scan the program folder 2020-11-25 07:03:35 -05:00
Christoph Oelckers
e19b1b2ee7 - fixed: IceGuyFX2 set its owner too late. 2020-11-25 07:37:17 +01:00
Christoph Oelckers
9925cc380e - backend update from Raze. 2020-11-23 15:45:33 +01:00
Christoph Oelckers
58d8ce1a4f - cleanup of m_fixed.h.
With fixed point math barely being used anywhere with the vast majority of calls in the software voxel drawer it makes sense to reduce the function interface to the minimum possible and move the shift value into the function call as an argument.
2020-11-22 10:25:04 +01:00
Rachael Alexanderson
a2b8ad79ed - implement slider background color change - https://forum.zdoom.org/viewtopic.php?f=15&t=70616 2020-11-17 11:29:39 -05:00
Player701
7ff79546e4 - Fixed: If AbsorbDamage resulted in an item having been destroyed, the following items in the inventory chain were not processed. 2020-11-17 12:54:05 +01:00
Chronos Ouroboros
75c791ecff Fixed the previous commit not accounting for mods that already fixed this internally. 2020-11-14 14:53:43 -03:00
Chronos Ouroboros
0aefc61f86 Fixed weapon bob jittering. 2020-11-14 14:34:09 -03:00
alexey.lysiuk
38d29c235b - fixed incorrect autosegs section addresses on macOS
It appeared that getsectbyname() returns address stored in executable header as is, i.e. without adjusting it for ASLR
2020-11-14 12:16:51 +02:00
alexey.lysiuk
18b5928f49 - eliminate dependency on linking order for autosegs registration 2020-11-13 11:03:16 +02:00
alexey.lysiuk
013078a02f - fixed compilation with MSVC 14.28.29333 from VS2019 16.8.0
include\algorithm(7419,17): error C3892: '_First': you cannot assign to a variable that is const (compiling source file src\rendering\hwrenderer\scene\hw_drawlist.cpp)
2020-11-12 12:06:03 +02:00
alexey.lysiuk
381d2bcd73 - do not keep impact decal that fails to stick to a wall
Such invisible decals were not taken into account when calculating their total number
Changing cl_maxdecals CVAR may not work as expected because of limit counter's inconsistent value

https://forum.zdoom.org/viewtopic.php?t=70457
2020-11-01 11:36:32 +01:00