Commit Graph

20828 Commits

Author SHA1 Message Date
Christoph Oelckers 671b8696bb - made CVar declarations type safe again. 2022-10-22 09:29:38 +02:00
Christoph Oelckers 453688ccc6 - reworked CVARs to not use a linked list and to be initialized manually.
This solves two problems:

* The linked list is too slow, a map is better. A map cannot be used with statically allocated CVARs because order of initialization is undefined.
* The current CVAR system is an unordered mishmash of static variables and dynamically allocated ones and the means of identification are unsafe. With this everything is allocated on the heap so it can all be handled the same by the cleanup code.
2022-10-21 18:56:43 +02:00
Christoph Oelckers ef887403cf - marked a few Printf calls in critical error paths as PRINT_NONOTIFY. 2022-10-20 23:55:29 +02:00
Christoph Oelckers 07f08de474 - fixed some warnings. 2022-10-20 22:22:30 +02:00
Christoph Oelckers 7abe718abb - removed some stuff from CMake that no longer applies. 2022-10-20 22:16:34 +02:00
Christoph Oelckers 0ba5803111 - two more CMake checks that are not needed anymore.
Neither of these function is in use so we do not need to check for them.
2022-10-20 21:19:01 +02:00
Christoph Oelckers 9e76faff1f - removed some 32bit only CMake code. 2022-10-20 21:11:18 +02:00
Christoph Oelckers 5a52f61096 - fixed: R_LoadVoxelDef did not fully initialize the voxel descriptor it creates. 2022-10-20 20:23:35 +02:00
Christoph Oelckers 96e98fc4a8 - use field initializers for VoxelOptions 2022-10-20 20:17:14 +02:00
Christoph Oelckers 70df444660 - Backend update from Raze
* fix for serializing vector arrays.
* a few adjustments for asan on Windows.
* NOMUSICCUTOFF flag for movie player.
* a bit of cleanup.
2022-10-20 20:12:06 +02:00
Christoph Oelckers ca8897028f - stupid typo... 2022-10-20 19:06:07 +02:00
Christoph Oelckers ba8a334862 - removed two bogus asserts from the script compiler. 2022-10-20 18:39:51 +02:00
Christoph Oelckers 1855edba37 - don't crash on null pointers in V_GetFont. 2022-10-20 18:18:22 +02:00
Christoph Oelckers 4686d10f41 - zero the velocity of crunched sprites.
Since their size is zeroed, they are no longer subject to collision detection and may slide out of the level otherwise.
2022-10-20 17:12:43 +02:00
Christoph Oelckers 55402ff734 - added 'rebuildnodes' for tnt2fix2.wad map01 2022-10-20 17:12:43 +02:00
Christoph Oelckers 6ba4295136 - don't crash when destroying incomplete textures.
This can happen during TEXTURES parsing in case of an error.
2022-10-20 17:12:43 +02:00
Christoph Oelckers b6c5232fea - try to keep the engine stable for as long as possible if a VM exception occurs in OnDestroy while running a cleanup.
This will still crash, but run long enough for the exception message to be visible.
2022-10-20 17:12:43 +02:00
Christoph Oelckers 936e89e3d4 - fixed F2DDrawer::SetClipRect. 2022-10-20 17:12:43 +02:00
Christoph Oelckers 54e0201204 - added vanilla donut handling to compat_floormove. 2022-10-20 17:12:43 +02:00
nashmuhandes 8394de00ca Fixed: voxel models pitch/roll properties weren't initialized correctly 2022-10-20 08:05:14 -04:00
Christoph Oelckers 457b9b71d9 - disable the native part of coronas as well. 2022-10-20 07:50:53 +02:00
nashmuhandes 80a31b074d Disable coronas for now 2022-10-19 22:52:27 +02:00
inkoalawetrust ea8e3da672 Updated constants.zs. 2022-10-19 22:50:50 +02:00
inkoalawetrust 29421e6975 Added QF_SHAKEONLY
The QF_SHAKEONLY flag changes the behavior of earthquakes with a damage radius, so that they only shake actors around, without also harming them.
2022-10-19 22:50:50 +02:00
inkoalawetrust 457ad97553 Added QF_AFFECTACTORS.
The QF_AFFECTACTORS flag makes the thrusting and harming of damaging earthquakes also affect monsters. Monsters with DONTTHRUST will not be flung around by earthquakes.
2022-10-19 22:50:50 +02:00
inkoalawetrust 05a5a4be51 Added the QF_GROUNDONLY flag.
The QF_GROUNDONLY flag makes earthquakes only shake the player while they are standing on the ground.
2022-10-19 22:50:50 +02:00
Shiny Metagross 7722784de6 Voxels did not have an animationID causing a crash
- Needed to assign -1 to the first index of animations for voxels or a crash occurs
2022-10-19 22:48:57 +02:00
Shiny Metagross 7972afc350 Revert "Before moving boneSelector from unsigned complete"
This reverts commit 8f2b8fa8789a5d4aff3890334e2f7368efa99572.
2022-10-19 22:48:57 +02:00
Shiny Metagross ee7c467a17 Before moving boneSelector from unsigned complete
- boneSelector being unsigned might be the reason why gles is having a hard time. Just stashing this commit here as a bookmark in case I need it
2022-10-19 22:48:57 +02:00
Shiny Metagross 13edabac19 Fixed crash on Intel cards with less than 64 uniform block align
- This should fix the crash with Intel cards. Sprite blinking appears to not occur either
2022-10-19 22:48:57 +02:00
Shiny Metagross cd4345373d Fixed improper casting
- Made a mistake on the casting in the shader that only worked for Intel
2022-10-19 22:48:57 +02:00
Shiny Metagross a8bab6a21d Intel fix
- GZDoom can launch for Intel users - IQMs work for Intel too
2022-10-19 22:48:57 +02:00
Shiny Metagross 5b60118af2 HUD models now render properly
- IQM HUD Models will now render properly
2022-10-19 22:48:57 +02:00
Shiny Metagross 6564adf310 Fixed a couple bugs
- MODELSAREATTACHMENTS was basically being applied anyways
- Fixed a crash related to using an animation that never had the vertex buffer drawn because it was never used as a model
2022-10-19 22:48:57 +02:00
Shiny Metagross be9a671217 Update models_iqm.cpp
- Fixed an issue with IQMs exported from blender that caused some issues in the blend weights
2022-10-19 22:48:57 +02:00
Shiny Metagross ab7be9b4a4 This fixes models without animation clips
- IQMs lacking animation clips would not appear
2022-10-19 22:48:57 +02:00
Shiny Metagross b7c1c53eb0 Almost done with To-Dos
- The compile errors should be fixed
- Implemented a way for skeletal models using the MODELSAREATTACHMENTS flag to not upload duplicate bones to the bone buffer
2022-10-19 22:48:57 +02:00
Shiny Metagross 3f8141ed04 I'm not done with this
- I need to figure out how I'm gonna reference the same boneStartIndex between the indices. Maybe some property in smf? The problem is that even though the bone calculations are done just once per instance of the actor when the flag is enabled, the bone buffers are being copied still, and if there's too much data, some will quit uploading because it's full. Besides doing this, I may just see about increasing the buffer size if possible. It's really just not very big.
2022-10-19 22:48:57 +02:00
Shiny Metagross 3c9a1ffe5e Give a fatal error when no mesh data is loaded
- Part of having mesh data in an IQM includes joints. If a model doesn't have any mesh data to it, it won't have joints, and those are necessary. Poses are a different story however.
2022-10-19 22:48:57 +02:00
Shiny Metagross 5f0bf8eda6 Update models.cpp
- Removed an unnecessary bool
2022-10-19 22:48:57 +02:00
Shiny Metagross 5670e6f54c Some of the to-dos
- Implemented Animation parameters for A_ChangeModel
- Made a modeldef flag to treat additional model indices as just attachments, meaning they will use armature data from index 0
- Fixed an issue with A_ChangeModel where generated indices lower than smf frame amounts could not actually generate anything
2022-10-19 22:48:57 +02:00
Shiny Metagross e9e919b54c Changes before To-Dos
- Removed redundant AttachAnimationData functions from derived model classes
- Fixed indentation in IQM loader
- Fixed a merging issue in the MD3 FindFrame
- Fixed a formatting issue in FindFrame in Model.h?
2022-10-19 22:48:57 +02:00
Shiny Metagross 08f520f1c6 IQM Support Implemented
More info to come
2022-10-19 22:48:57 +02:00
Christoph Oelckers dbd6a9dea1 - fixed DrawLine commands by giving them a consistent floating point interface. 2022-10-19 20:39:41 +02:00
Rachael Alexanderson c2373fed99 - heretic: e2m7 - missing texture 2022-10-17 15:48:50 -04:00
Christoph Oelckers 57add9a45c - fixed some warnings and updated vectors.h 2022-10-15 12:10:01 +02:00
Christoph Oelckers 1241b277f3 - fixed direct native interface for Draw(Thick)Line. 2022-10-15 09:10:49 +02:00
Christoph Oelckers c0c9f8e15c - Backend update from Raze. 2022-10-14 20:11:05 +02:00
Christoph Oelckers 169053587c - fixed: The main loop never checked the cutscene flag for disabling wipes. 2022-10-14 07:10:15 +02:00
Chris Robinson 9aee7415eb Sync movie video playback to the audio, when possible 2022-10-14 07:10:06 +02:00