Commit Graph

20351 Commits

Author SHA1 Message Date
Rachael Alexanderson f1dec835d7 - add `i_pauseinbackground` to the menu. note: please pull the language file for this 2022-06-09 04:13:55 -04:00
Rachael Alexanderson 0344462684 - set `i_pauseinbackground` to match `!(i_soundinbackground)` for all configs before this commit. 2022-06-09 04:11:44 -04:00
Christoph Oelckers 013f2003e8 Revert "-got rid of shared_ptr in postprocessing system"
This reverts commit 40872a2b21.

This crashed on Vulkan in a very weird way.
2022-06-09 09:16:58 +02:00
Christoph Oelckers 86a5545fa8 - fixed division by zero with unvalidated ticdup values. 2022-06-09 08:36:11 +02:00
Christoph Oelckers eb56eb380e - reinstated con_scale. 2022-06-08 16:42:32 +02:00
James Le Cuirot 3f9842dabb Exclude the Discord RPC library from "all" in CMake
Otherwise the headers and separate library file get installed
system-wide with the rest of GZDoom.
2022-06-07 23:35:54 +02:00
Christoph Oelckers 07a8701f8d - make sure the last notch on the start screen is rendered. 2022-06-07 23:14:17 +02:00
Ricardo Luís Vaz Silva 121045e48d move relative path resolution earlier, to prevent problems with include deduplication 2022-06-07 20:16:50 +02:00
Ricardo Luís Vaz Silva 6f6942609c fix relative include path when loading folders 2022-06-07 10:02:12 -04:00
Christoph Oelckers 9454ba1009 - eliminated more unneeded shared_ptr’s. 2022-06-07 14:09:00 +02:00
Christoph Oelckers 40872a2b21 -got rid of shared_ptr in postprocessing system 2022-06-07 13:59:00 +02:00
Christoph Oelckers c7798d5503 - use a unique_ptr for the GL debug object.
This doesn’t get shared and the containing class doesn’t need to be copied so this is sufficient.
2022-06-07 00:11:56 +02:00
Christoph Oelckers 989dcfcf1c - avoid storing texture pointers in longer lived data
* these circumvented all internal texture replacement logic. Texture objects should only be resolved right before drawing them
* added an explicit ‚tilebackground‘ option for the summary screen to fix problems with bad decision logic based on incorrect texture type checks. Automatic tiling no longer depends on texture type, but solely on size.
* added a DrawTexture variant that can be passed a texture ID instead of a pointer
2022-06-07 00:00:54 +02:00
Christoph Oelckers 21b6f722be - actually GCC is really dumb. 2022-06-06 20:11:01 +02:00
Christoph Oelckers f4d240b05d - this behaves a little better on OpenGL. 2022-06-06 19:50:10 +02:00
Christoph Oelckers 90def7e8b0 - GCC is dumb 2022-06-06 19:49:57 +02:00
Christoph Oelckers d1caf3a471 - made TObjPtr as trivial as possible.
Mainly to avoid problems with Raze, but eliminating this constructor lets us catch erroneous local definitions via 'auto', which can cause major problems if left undetected.
2022-06-06 15:19:31 +02:00
Christoph Oelckers 71ce8aa79a - block wipes when streaming movies are playing.
For synchronization purposes they cannot be interrupted by the wipe loop.
This also groups the cutscene state in a struct for readability purposes.
2022-06-06 12:30:47 +02:00
Christoph Oelckers c62e14d2c1 - Backend update from Raze
Mostly cleanup and better separation of game/backend concerns.
2022-06-06 12:09:29 +02:00
Christoph Oelckers b7f3cc157d - remove accidentally committed file. 2022-06-06 08:53:22 +02:00
Christoph Oelckers 7e57aeb24a - re-enabled translation initialization.
This had been commented out for testing and was forgotten.
2022-06-06 08:50:27 +02:00
Christoph Oelckers 4cb7c70e27 - restored accidentally deleted line of code. 2022-06-05 16:43:12 +02:00
Christoph Oelckers efd4a0b33a - the chat should use the console's scaling, not the one for the messages printed with the small font. 2022-06-05 16:29:42 +02:00
Christoph Oelckers a59436c4c2 - fixed auto-scaling for console. 2022-06-05 12:34:22 +02:00
Christoph Oelckers e266fb1c16 - removed all vid_fps offsetting.
To compensate there is now also a "stat fps" which displays the FPS rate in the lower left corner. This had to go because unconditionally altering positions was causing problems with custom HUDs.
2022-06-05 12:16:56 +02:00
Christoph Oelckers 24a275804c - HUD scaling for automap HUD. 2022-06-05 12:16:15 +02:00
Christoph Oelckers efaaa3c118 - added Raze-style HUD scaling. 2022-06-05 10:57:21 +02:00
Christoph Oelckers 0ee1cc85ec - fixed: The IVF decoder never accounted for odd dimensions when applying the UV subsampling.
To simplify the code the 'optimized' loop was replaced with one iterating over all pixels - even in the worst of cases the little savings are hardly performance relevant.
2022-06-05 08:09:50 +02:00
Christoph Oelckers 6f22eeac00 - added a few more names to the reserved names for main folder detection.
Also consolidated the access into a single function to avoid indexing errors.
2022-06-04 22:11:14 +02:00
Christoph Oelckers 3c96f7e21c - added handling for start-of-episode cutscenes. 2022-06-04 21:58:46 +02:00
Christoph Oelckers c597ba2fef - made cutscenes at engine startup work. 2022-06-04 21:31:19 +02:00
Christoph Oelckers ab856e4f6a - consider "fonts" and "models" reserved folder names. 2022-06-04 18:49:31 +02:00
Christoph Oelckers 26a377c009 - fixed undefined behavior with Dehacked's value parser.
From the looks of it MSVC's strtoul function does parse negative values, while GCC's does not. Since negative values are allowed for some properties this now uses strtoll and stores the value with 64 bit to preserve both the value range of signed int and unsigned int.
2022-06-04 09:23:46 +02:00
Christoph Oelckers e619e40f92 - text update. 2022-06-03 23:56:08 +02:00
Player701 b91f87e4ed - Rebuild nodes for 1024.wad MAP02 to fix invisible obstacle near the exit area 2022-06-03 19:43:50 +02:00
Christoph Oelckers df74288f7b - use the same rules for cutscenes as for old intermissions when travelling in a hub 2022-06-03 00:30:34 +02:00
Christoph Oelckers 608b387e04 - use correct mapping for IBM437’s lower characters
For use on text screens these need to be mapped to the printable characters they represent on screen, not the control characters of ASCII.
2022-06-03 00:12:45 +02:00
Christoph Oelckers 99d98cf79d - added cutscene creation code 2022-06-03 00:03:57 +02:00
Alexander Kromm ea007f56f2 fix scrolling when selecting item by key 2022-06-02 19:49:39 +02:00
Christoph Oelckers 15a5554f8d - fixed fast crushers going out of sync if something is being crushed by them. 2022-06-02 16:48:07 +02:00
Christoph Oelckers 05c846c4eb - fixed: the last column of a text-type start screen was not rendered. 2022-06-02 08:32:39 +02:00
Christoph Oelckers 092eb1eb6f - use StartupTexture, not HeaderTexture to clear the screen.
HeaderTexture does not exist for the Endoom screen.
2022-06-01 18:00:03 +02:00
Christoph Oelckers b615019715 - fixed: sound must be initialized before the start screen. 2022-06-01 17:44:07 +02:00
Christoph Oelckers c11729c2bb - fixed: Vulkan descriptor sets must check the real translation, not just the translation ID.
In particular the one for the menu's player sprite and ACS translations can alter a translation ID's actual translation at run time, these changes never triggered a descriptor set change.
2022-06-01 16:47:54 +02:00
Christoph Oelckers 298407aaf3 - workaround for clearing the start screen in Vulkan.
There seems to be a bug in the backend, but I have no idea what's wrong.
Clearing the start screen with a ClearRect call renders the 2D drawer in an unstable state. So for now, clear the screen by rendering a texture, but with light color black, which produces the same effect without later breaking stuff.
2022-06-01 16:02:24 +02:00
Rachael Alexanderson c8156fa581 - add keybinds for F17-F24 2022-06-01 10:23:08 +02:00
Christoph Oelckers 3b87c19b5b - fixed startuo screen creation 2022-06-01 10:20:32 +02:00
Christoph Oelckers 2d901eca7f - added missing #include. 2022-06-01 09:34:07 +02:00
Christoph Oelckers 7787a410ea - Startscreen fixes.
* for Strife the game palette must be loaded before the start screen.
* increase update frequency of start screen to roughly 35 fps
* fixed Strife's laser sprite names.
* do not show the native progress bar if a graphical start screen is used.
2022-06-01 09:30:20 +02:00
Christoph Oelckers 344c6348fd - sprite lightlevel cleanup and fixes.
* consolidated the getter functions on the game data side
* better handling of per-sprite lighting with fog
* allow negative values for additive per-sprite lighting.
* also fixed return type of UpdateWaterDepth.
2022-06-01 08:37:13 +02:00