Commit Graph

20981 Commits

Author SHA1 Message Date
Christoph Oelckers aedf0e3ce5 - fixed GC::FullGC not collecting everything anymore.
With the delayed handling of internal references of destroyed objects the function now returned without making sure that it really got everything.
Repeating until it cannot delete anything new anymore makes it work again as intended.
2022-12-05 12:29:03 +01:00
Christoph Oelckers 2ed8e6780e - fixed some bad character offsets in Doom's and Raven's small fonts and deleted an incomplete character. 2022-12-05 12:05:26 +01:00
Magnus Norddahl 449501c75b Fix compile error on macOS 2022-12-05 07:49:43 +01:00
Magnus Norddahl 4c85f461b1 Avoid calling vulkan functions before the instance has been created 2022-12-05 07:49:43 +01:00
Magnus Norddahl 0a80ad3b83 Add missing forward declarations 2022-12-05 07:49:43 +01:00
Magnus Norddahl cc96742d18 Add missing include statement 2022-12-05 07:49:43 +01:00
Magnus Norddahl 03ab65ab1e Fix linux compile errors from the zvulkan switch 2022-12-05 07:49:43 +01:00
Magnus Norddahl 6a005e3a2a Switch vulkan backend to use the zvulkan library 2022-12-05 07:49:43 +01:00
Ricardo Luís Vaz Silva 854c57611f Fix Quicksave Rotation 2022-12-05 07:48:51 +01:00
Magnus Norddahl 7ae07d614e Add all the functionality from the win32 startup window to the GTK version 2022-12-05 07:48:21 +01:00
Ricardo Luís Vaz Silva 24d27a6746 Fix PMapValueReader warning on Clang/GCC 2022-12-04 23:53:51 +01:00
Ricardo Luís Vaz Silva 92761feee1 Add casts to F32 Map/MapIterator functions to get rid of double to float conversion warnings 2022-12-04 21:15:46 +01:00
Christoph Oelckers 5b3f597438 - text update. 2022-12-04 15:34:47 +01:00
Mitchell Richters 6629944d39 - Make the new scaled angle changes at frame rate opt-in behind new flag `SPF_SCALEDNOLERP`.
* This will still test whether the game needs to lerp and will force `SPF_INTERPOLATE` if needed.
2022-12-04 15:11:17 +01:00
Mitchell Richters cf1ac82da3 - Set up interpolated camera angle changes to occur at framerate when all conditions in `P_NoInterpolation()` are met. 2022-12-04 15:11:17 +01:00
Mitchell Richters 20bf9e89f5 - Split insane interpolation test if statement into a function, we'll need this elsewhere later on. 2022-12-04 15:11:17 +01:00
Mitchell Richters 9f9c1eb18a - Make view angles interpolate on a separate flag to the one that forces interpolation for the entire frame.
* As view angles are an offset, there's no reason why these cannot lerp separately.
2022-12-04 15:11:17 +01:00
Mitchell Richters 6594ec0750 - Remove local angle truncation in `R_InterpolateView()`.
* Genuinely see no need for this. If the local angle is BAM, why not just use it to its maximum precision?
2022-12-04 15:11:17 +01:00
Mitchell Richters c99b18dc45 - Bring in `interpolatedvalue()` for `TRotator<>` objects from Raze.
* Would have come in eventually but I may need it.
2022-12-04 15:11:17 +01:00
Ricardo Luís Vaz Silva 8b6a714d41 Map<K,V> and MapIterator<K,V> for ZScript 2022-12-04 15:11:00 +01:00
Christoph Oelckers 1e5e65546d Revert "- add support for not localizing some text functions, and modify menu text fields to use this"
This reverts commit 91d3c4b606.

This completely breaks the menus, so it needs to go.
2022-12-04 08:13:04 +01:00
Ricardo Luís Vaz Silva cd46f97dcc Structified A_SpawnParticle/Ex 2022-12-03 23:54:52 +01:00
Marisa the Magician 9ad7b8a048 Look up named frames using the Animation ID (if any). 2022-12-03 23:30:59 +01:00
Gutawer 91d3c4b606 - add support for not localizing some text functions, and modify menu text fields to use this 2022-12-03 23:30:38 +01:00
Ricardo Luís Vaz Silva f666edc60c Allow Disabling of XY Billboard for Particles 2022-12-03 23:27:46 +01:00
Boondorl 964534f4b0 Added Method For Getting Portal Group Count 2022-12-03 23:27:01 +01:00
Boondorl ad80593cb7 Allow Getting Portal Group Offsets 2022-12-03 23:27:01 +01:00
Christoph Oelckers e8d7e0227b - fixed two memory leaks. 2022-12-03 20:39:54 +01:00
Shiny Metagross 169139c22c Fixed A_Changemodel crash from invalid modeldef names
- Invalid modeldef names no longer result in a crash

https://forum.zdoom.org/viewtopic.php?t=76810
2022-11-30 18:26:26 +01:00
Kevin Caccamo 6cf3dc045f Fix SNDINFO $rolloff always changing global rolloff
I investigated the issue a bit more by copying the grenade sounds from Wolfenstein: Blade of Agony and the definitions for the sounds from its SNDINFO lump, and then copying the entire SNDINFO lump from Wolfenstein: Blade of Agony into a small test mod, and disabling tags like $volume and $rolloff using sed. It turns out disabling $rolloff tags fixed the issue, and looking into the code, it seems as though the global rolloff was always being changed, or that rolloff was picking up a garbage pointer.

Fixes #1849
2022-11-27 21:02:07 +01:00
Ricardo Luís Vaz Silva 1a7a56ce39 Fix GC ignoring DynArrays inside fixed Arrays 2022-11-27 08:19:41 +01:00
alexey.lysiuk d4f4b9b599 - fixed continuous integration of Windows targets 2022-11-26 09:39:48 +02:00
Marisa the Magician f256e7bb3d Fix UV "fix" for OBJ models. 2022-11-25 23:57:44 +01:00
Marisa Heit 70df34674b AST debug cleanup
- Add ArrayIterationStmt printer.
- Mark ZCC_TreeNodes as const for the AST printers.
- Use static_assert to catch missing printers without needing to run with -dumpast.
2022-11-25 19:20:24 +01:00
Christoph Oelckers 4103b282bb - fixed: The raw texture caching in the texture manager did not work.
This erroneously checked for FrontSkyLayer.
Also including some change here that allows explicit setting of the RawTexture (not used yet.)
2022-11-25 12:29:36 +01:00
Christoph Oelckers 28f8d4570d - silence compiler warning 2022-11-25 12:27:54 +01:00
Christoph Oelckers 473221bb33 - fixed SoundEngine::isValidSoundId.
This never accounted for linked and random sounds. It never got noticed because it never was used to validate anything essential before.
2022-11-25 10:28:18 +01:00
Marisa the Magician 8206c29edf Allow assigning IQM frames by animation name plus frame offset. 2022-11-25 08:12:23 +01:00
Ricardo Luís Vaz Silva 58a64e4f5d Remove leftover variable in CustomMessageBox 2022-11-25 00:39:35 +01:00
Boondorl f322792783 Added animation support for OptionMenus
Adds Animated and AnimatedTransition MENUDEF instructions for OptionMenus. Added DontDim and DontBlur MENUDEF instructions for all menus.
2022-11-25 00:39:05 +01:00
Marisa the Magician b002d5b8ec Fix crash if Animation is not explicitly assigned in MODELDEF. 2022-11-25 00:37:38 +01:00
Christoph Oelckers ffdd0a11ea - fixed memory leak in ZScript backend.
This allocated some memory and never freed it again. A TArray would have been better - but since we know the maximum size is 4 we may just use a static array here to keep things as efficient as possible.
2022-11-24 23:52:53 +01:00
Christoph Oelckers 65a26d6779 - removed the string constructors from FSoundID.
Due to C++ conversion rules this was a bit too volatile. There's really not enough places where being able to pass a string directly into the sound API was beneficial - the two most frequent functions now got overloaded variants.
2022-11-24 23:52:52 +01:00
Christoph Oelckers b89c4affae - removed the string assignment operators.
These all caught literal 0's as well
2022-11-24 23:52:52 +01:00
Christoph Oelckers d173c0453c - handle all remaining places of sound ID conversions after removing the conversion operators. 2022-11-24 23:52:52 +01:00
Christoph Oelckers 160633a4a2 - migrate a large part of the sound code to FSoundIDs.
This has always been a wild mixture of IDs and ints.
2022-11-24 23:52:52 +01:00
Christoph Oelckers 1a6da52961 - use FSoundID in SoundEngine's interface. 2022-11-24 23:52:52 +01:00
Christoph Oelckers d13f12cc37 - this should take care of the S_* interface. 2022-11-24 23:52:52 +01:00
Christoph Oelckers 7e8de9d1ba - made more use of FSoundID. 2022-11-24 23:52:52 +01:00
Christoph Oelckers 225399a1ef - use TMap for the playersound hashtable. 2022-11-24 23:52:51 +01:00