Commit Graph

19588 Commits

Author SHA1 Message Date
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
Blue Shadow acd553aa6f - account for KEEPDEPLETED flag when destroying items with InterHubAmount of 0 upon leaving a level 2021-03-19 20:10:25 +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 229b065289 Add missing tag for Strife's KneelingGuy. 2021-03-18 19:11:37 +01:00
K0stov 3892e42f7c New letter И for Strife
The old one was a simple mirror of the letter N, switching around the proportions. The new variant is designed to look more faithful to the letter it’s based on.
2021-03-18 12:35:32 +01:00
nashmuhandes 43937e4338 Add missing tag for the sub-Entity bosses. This was missed in the previous commit. 2021-03-15 22:05:25 +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
nashmuhandes 45c1cc8c08 Add tag properties to Strife's enemies. 2021-03-15 20:10:49 +01:00
alexey.lysiuk 1b3c67ee1f - fixed cross-compilation support
Lemon's post build command aborts configuration step after CMake version bump to 3.1.0 in ba618d308c
When CMake version was 2.8.7 the same command produced a warning

CMake Error at tools/lemon/CMakeLists.txt:11 (add_custom_command):
  TARGET 'lemon' is IMPORTED and does not build here.
2021-03-14 15:01:51 +02:00
Christoph Oelckers 5c84177142 - lower the step size for module master volume to adapt to the altered value range. 2021-03-14 08:50:42 +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
nashmuhandes bf33403381 Show subtitles for the Entity's greeting lines in Strife. 2021-03-10 14:41:36 +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
nashmuhandes c7edb9d22f Add a null check in PlayerPawn::CheckFOV 2021-02-28 20:01:59 +01: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