Ricardo Luís Vaz Silva
0caa036a96
fix compilation
2024-07-09 12:25:28 -03:00
Ricardo Luís Vaz Silva
7ddd4ec245
handle freeze in decoupled animations
2024-07-09 12:25:28 -03:00
nashmuhandes
2e4bf697b8
Add X, Y and Z offsets for VOXELDEF. Needed for voxelized weapons which would typically be very large and take up the majority of the 256x256x256 canvas, therefore making precise positioning of the models relative to the screen pretty much impossible without tweakable offsets.
2024-06-21 08:17:54 -03:00
Ricardo Luís Vaz Silva
9af3d54a19
Fix Decoupled Animation Crash, Interpolation Bugs, Simplify Interpolation code
2024-04-17 21:38:27 -03:00
Ricardo Luís Vaz Silva
7c93cfa97b
Decoupled Animation fixes and improvements
...
* fixes looping that uses `loopFrame`
* adds `endFrame`
* adds `SAF_NOOVERRIDE`
* fixes crash on SetAnimation if a BaseFrame isn't defined
2024-04-16 20:27:44 -03:00
Ricardo Luís Vaz Silva
ce479e09ff
Fix A_ChangeModel serialization
...
I overlooked this part on my first A_ChangeModel fix
2024-03-17 18:07:50 -03:00
Ricardo Luís Vaz Silva
0092aa0772
Fix crash with DecoupledModels flag defined but no actual model
2024-03-15 21:08:59 +01:00
Christoph Oelckers
520b960ca5
Reverted the path node system
...
Code reviews were unfavorable so better nix it before it finds wider use.
2024-03-15 20:24:39 +01:00
Ricardo Luís Vaz Silva
341c1bbede
Fix crash with DecoupledModels flag defined but no actual model
2024-03-14 18:52:04 -03:00
Ricardo Luís Vaz Silva
98e6330eaa
allow modeldef flags to be overriden
2024-01-16 10:27:08 -05:00
Christoph Oelckers
f13ae3b706
addressed a few things pointed out by static analysis
...
* marking move assignments noexcept
* using [[fallthrough]] consistently.
* getting rid of alloca.
2024-01-07 08:46:47 +01:00
Christoph Oelckers
fe106d9bfe
merge FileData and ResourceData.
2023-12-14 17:22:29 +01:00
Ricardo Luís Vaz Silva
5d5e7ca042
Decoupled IQM Model Animations
2023-11-20 22:08:33 -05:00
Ricardo Luís Vaz Silva
1a8dfd2dfa
ActorModelData cleanup in preparation for decoupled model animations
2023-11-20 22:08:33 -05:00
Christoph Oelckers
0b36beb10d
serialize the remap data of custom translations defined at run time.
2023-11-19 12:44:22 +01:00
Christoph Oelckers
c5c822ea75
use FTranslationID in the model code.
2023-11-09 23:04:11 +01:00
Christoph Oelckers
8c5eb2c807
use FTranslationID in all places where strict type checking is needed.
...
This means all properties in serializable classes now use this wrapper type. The backend hasn't been changed yet
2023-11-09 23:04:10 +01:00
Christoph Oelckers
f0c9b1765e
gave translations a dedicated scripted type.
...
This is needed for implementing reliable serialization of custom translations. As long as they are merely ints they cannot be restored on loading a savegame because the serialization code does not know that these variables are special.
2023-11-09 23:04:10 +01:00
Rachael Alexanderson
6d1ebf5f27
- allow FORCEBACKCULLFACES to work with hud models
2023-10-25 10:57:48 -04:00
Rachael Alexanderson
e2a9208c56
- fix error in last commit, >> should be <<
2023-10-15 11:16:24 -04:00
Rachael Alexanderson
bac12948e5
- add forcecullbackfaces in modeldef
2023-10-14 14:37:40 -04:00
Christoph Oelckers
c8ee0cd5cc
fixed another bad string validation check involving GetChars
2023-10-08 09:37:12 +02:00
Christoph Oelckers
7a5a2858a2
yet even more GetChars calls added.
2023-10-07 23:29:24 +02:00
Christoph Oelckers
c94c63110e
added a third batch of GetChars call to FStrings.
2023-10-07 23:03:40 +02:00
Christoph Oelckers
ebb71cebf1
- put the entire filesystem code into a namespace and created some subdirectories.
2023-08-22 22:54:54 +02:00
Christoph Oelckers
a0d679b84b
- FileData cleanup and uncoupling from FString.
...
Work is still needed to allow this to use the lump cache directly because some decisions in the past made this data padded by a zero byte.
2023-08-22 22:54:52 +02:00
Christoph Oelckers
25b7b18c3d
- got rid of the two copying variants of fileSystem.GetFileShortName.
2023-08-22 22:18:53 +02:00
Christoph Oelckers
81fb9a26b2
- backend update from Raze.
...
* add QualifiedName to VMFunction and allocate these static names from the class data memory arena instead of using FStrings.
* null pointer type checks in the VM added to avoid crash on bad codegen.
2023-07-22 09:55:49 +02:00
Ricardo Luís Vaz Silva
0e438f10f3
fix CMDL_HideModel
2023-06-26 00:36:36 -04:00
Ricardo Luís Vaz Silva
61d68eb2d6
Rewrite changed model rendering code, and change how model skins are handled
2023-06-26 00:36:36 -04:00
Ricardo Luís Vaz Silva
b55ffdbfd3
major A_ChangeModel cleanup
2023-06-26 00:36:36 -04:00
l2ksolkov
245dac814e
Add missing include guards
2023-05-29 07:35:26 +02:00
Christoph Oelckers
087050c201
- use uniform buffers for dynamic lights everywhere.
...
Branching on SSBO content does not work that well on NVidia so it is better disabled.
So far only implemented for OpenGL - Vulkan needs more work.
2023-02-18 12:22:26 +01:00
Christoph Oelckers
1561616498
- pass colormap to MakeGoodRemap as parameter.
...
Removes a Doom dependency and avoids double reading of the COLORMAP lump.
2023-01-15 08:34:32 +01:00
Christoph Oelckers
941c0850ba
- Backend update from Raze.
...
Mainly optimizations for the sound system and texture manager.
2022-12-18 16:19:18 +01:00
Ricardo Luís Vaz Silva
46d36cf5c7
add BobWeapon3D
2022-12-09 21:49:38 +01:00
9ad7b8a048
Look up named frames using the Animation ID (if any).
2022-12-03 23:30:59 +01:00
b002d5b8ec
Fix crash if Animation is not explicitly assigned in MODELDEF.
2022-11-25 00:37:38 +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
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
eab675c0cb
Make model stretch fix opt-in with a flag.
2022-11-22 17:58:32 +01:00
0509d3a4e7
Fix incorrect pixelratio handling on rotated models.
2022-11-22 07:44:22 +01:00
Christoph Oelckers
706d465781
- removed the unused BaseBlend* variables and the testblend CCMD.
...
When this was still working it was software rendering only anyway so no real loss here.
2022-11-08 11:46:13 +01:00
Christoph Oelckers
4ebcff8573
- remaining changes for moving bone data to the backend
2022-11-06 10:59:33 +01:00
crashmahoney
0ca868d93f
Fix HUD models not drawing if MODELDEF has been changed with A_ChangeModel
2022-11-01 11:48:16 +01:00
Shiny Metagross
f7c3615d3b
IQM Refactor Milestone
...
- Removed bone manipulation code
- Implemented an index in calculateBones to optimize multi-armature actors
- Moved the bone storage object's creation to RenderModels so that the armature array can be sized there
2022-10-31 11:34:55 +01:00
Shiny Metagross
3f3cc5bbc3
IQM Refactor start
...
- Refactored IQM and calculateBones to process TRS at runtime which resolves some of the faulty animations with large rotations. Will also make bone manipulations much easier to do
2022-10-31 11:34:55 +01: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