Ricardo Luís Vaz Silva
c6978c23ab
Disable FName as a native parameter
2023-06-26 00:36:36 -04:00
Ricardo Luís Vaz Silva
0e438f10f3
fix CMDL_HideModel
2023-06-26 00:36:36 -04:00
Ricardo Luís Vaz Silva
49eae74272
assert that FName is a POD and as such is passed directly on registers, so that if it changes to be a non-pod, it won't silently break parameters
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
Ricardo Luís Vaz Silva
5b85557ddb
add TArray::AppendFill for appending a single value multiple times
2023-06-26 00:36:36 -04:00
Ricardo Luís Vaz Silva
30e7b30c45
Simplify DirectNativeDesc, allow FName as a native parameter
2023-06-26 00:36:36 -04:00
Ricardo Luís Vaz Silva
7dda6570ec
remove memory leak in A_ChangeModel
2023-06-26 00:36:36 -04:00
Rachael Alexanderson
bc41356b35
- minor formatting fix
2023-06-19 04:38:35 -04:00
l2ksolkov
01dfcc7d95
Fix compilation on FreeBSD
...
Fixes #2073
Changes get_current_dir_name to functionally equivalent getcwd. Also moves "printf.h" to outside linux ifdef.
2023-06-19 04:31:18 -04:00
Christoph Oelckers
c675d60bac
- finish the implementation for nosectionmerge.
2023-06-18 09:44:34 +02:00
Christoph Oelckers
4538236a38
- cleaned i_music.h off external dependencies.
...
* take I_BuildMIDIMenuList out of it
* pass the command line state to disable music from the init call.
* don't declare internal 'nomusic' variable in the header.
2023-06-17 09:49:15 +02:00
Christoph Oelckers
99c76a3ff5
- BCOMPATF_NOSECTIONMERGE is not safe for the self referencing sector hacks in the Final doom IWADs.
2023-06-16 21:53:42 +02:00
Christoph Oelckers
89d8c7b4fe
- minor cleanup of i_soundinternal.h.
2023-06-16 20:51:26 +02:00
Christoph Oelckers
62b9243142
- made some changes to vectors.h so that it can be used without the floating point function replacements.
...
Using __has_include and providing fallback implementations.
2023-06-16 20:51:25 +02:00
Christoph Oelckers
40679294df
- fixed some warnings.
2023-06-16 20:50:48 +02:00
alexey.lysiuk
3ddf72104b
- added detection of macOS 14
2023-06-11 12:14:58 +03:00
alexey.lysiuk
170cc8d7ba
- reduced string duplication in macOS detection
2023-06-11 12:14:35 +03:00
l2ksolkov
245dac814e
Add missing include guards
2023-05-29 07:35:26 +02:00
Christoph Oelckers
acfe82b9a8
- Backend update from Raze.
2023-05-27 09:31:17 +02:00
Ricardo Luís Vaz Silva
1589afb46e
Add Voodoo Zombie Compatflag
2023-05-14 08:14:47 +02:00
Chris Cowan
ca0db39027
Fix BUILD_SHARED_LIBS build option on Windows
...
This commit fixes the build error "unresolved external symbol GetModuleInformation" when the project is built on Windows with BUILD_SHARED_LIBS enabled.
Gzdoom must be linked against "psapi". When BUILD_SHARED_LIBS is off (default), it gets linked because the discord-rpc library is linked against it and then statically linked into the project. The issue is fixed by making Gzdoom itself explicitly link against "psapi" too.
2023-05-14 07:21:27 +02:00
Chris Cowan
6f964e8d35
add changeskill command
2023-05-14 07:20:09 +02:00
Ricardo Luís Vaz Silva
9ca30826db
Fix win32 mouse cursor permanently disappearing
2023-05-14 07:15:41 +02:00
Rachael Alexanderson
a5f0174e07
- addendum to previous commit: forgot one line
2023-04-30 10:50:14 -04:00
Rachael Alexanderson
e5fcb331df
- remove vid_gpuswitch
and all its handling; it is only as of now useful in old unsupported versions of Windows 7/8/10 which are no longer supported
2023-04-30 10:38:46 -04:00
Ricardo Luís Vaz Silva
86bc9cafd4
Fix value of X = Y
when Y is an int constant
2023-04-12 22:57:06 +02:00
Christoph Oelckers
e3f8230035
- fixed handling for Turkish i's.
...
* islowermap and isuppermap were not set for the new characters.
* special handling for the lowercase dotted i in allcaps fonts returned the wrong character.
2023-04-05 19:01:19 +02:00
Mitchell Richters
f1f6e3a607
- Move invertmouse
CVARs into common code.
...
* Removes duplication of CVAR definitions between Raze and GZDoom.
2023-04-04 17:11:28 +02:00
Mitchell Richters
034202e6f6
- Properly fix default mouse x sensitivity.
2023-04-04 17:08:02 +02:00
Christoph Oelckers
25c984ff6e
- fixed crash when checking the extended character list for the current language.
...
For English this will be null because it got no extended characters.
2023-04-03 17:03:44 +02:00
Christoph Oelckers
15465f0785
- backported RapidJSON fix from Raze.
2023-04-01 12:45:55 +02:00
Christoph Oelckers
7e1982fa65
- adapted font system to properly handle Turkish.
...
Those i's are really messy, especially when dealing with allcaps or pure lowercase fonts.
2023-03-31 17:40:19 +02:00
Christoph Oelckers
9fbac8f1d4
- moved all service code to 'common'.
...
This needs to work on Raze as well!
2023-03-26 10:55:09 +02:00
Christoph Oelckers
7537f415ce
- update comment on SSBOs.
2023-03-26 10:43:27 +02:00
Christoph Oelckers
cffe67dcee
- fixed a few warnings pointed out by GCC.
2023-03-26 10:35:33 +02:00
Christoph Oelckers
72d7a70732
- avoid arithmetics with literal null pointers in ParseCommandLine.
...
Also avoid using longs.
2023-03-26 09:49:40 +02:00
Christoph Oelckers
c1cb7783a6
- fixed a few more leftover Clang warnings.
2023-03-26 09:27:46 +02:00
Christoph Oelckers
ee5b6e45f8
- made D_WriteUserInfoStrings memory safe.
...
Its callers are anything but for now but this function was the main blocker for refactoring so it had to come first.
2023-03-26 09:27:26 +02:00
Christoph Oelckers
cbff526cc7
- updated RapidJson library.
...
This still needed the Nan hotfix to be reapplied. The problem hasn't been addressed yet. :(
2023-03-26 08:48:54 +02:00
Christoph Oelckers
47b76180d6
- fixed several warnings emitted by Clang.
2023-03-26 08:48:54 +02:00
Ricardo Luís Vaz Silva
9e19134016
Fix possible memory corruption in TArray::Delete(index, count)
2023-03-22 18:59:59 +01:00
RaveYard
c041b437e1
Use simpler constructor for TArray in FBlockThingsIterator
2023-03-19 16:11:07 +01:00
RaveYard
9514d1b120
Fix TArray allocating 0 bytes in constructor
2023-03-19 16:11:07 +01:00
CandiceJoy
89fb5d0a92
Fixed incorrect parameter type in A_CheckForResurrection.
2023-03-18 08:47:19 +01:00
John Stebbins
c3d99fa699
Allow GAMEINFO LOAD to load directories
...
Addresses part of enhancement issue #2011
2023-02-23 18:35:15 +01:00
Christoph Oelckers
7acf23f213
- fixed typo in string label.
2023-02-19 12:47:16 +01:00
Ricardo Luís Vaz Silva
590475a8e3
Improve Services
2023-02-19 08:11:08 +01:00
Magnus Norddahl
b0dfa06201
Add dynamic light support to true color slope drawer
2023-02-19 08:06:49 +01:00
Magnus Norddahl
99f2b5d891
Fix misc bugs for dynamic lights in the pal slope drawer
2023-02-19 08:06:49 +01:00
Magnus Norddahl
18bc384807
Add dynamic lights to pal slope drawer
2023-02-19 08:06:49 +01: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
Ricardo Luís Vaz Silva
b84bf176e1
Fix Software Slope Rendering for non-1.2 pixel ratios
2023-02-17 14:15:46 -05:00
Rachael Alexanderson
4475240da8
- rename the flags MNOTVISIBLE and VISALWAYSFAIL to MINVISIBLE and MVISBLOCKED respectively, to reflect what they really do
2023-02-15 11:51:48 -05:00
Rachael Alexanderson
ee18123f01
- check VISALWAYSFAIL against SF_IGNOREVISIBILITY
2023-02-15 10:47:31 -05:00
Rachael Alexanderson
45f67bdd50
- add +VISALWAYSFAIL flag
2023-02-14 23:14:35 -05:00
Rachael Alexanderson
8af2f5aaf6
- add +mnotvisible flag as per feature suggestion: https://forum.zdoom.org/viewtopic.php?t=77277
2023-02-13 13:32:44 -05:00
Rachael Alexanderson
ea720605d4
Revert "Fixed an error where implicit pointer casts should've failed but didn't."
...
This reverts commit 68d3f474ce
.
# Conflicts:
# src/common/scripting/backend/codegen.cpp
2023-02-11 11:30:05 -05:00
Christoph Oelckers
17800f2504
- removed bad #include
2023-02-11 12:37:28 +01:00
Christoph Oelckers
f6bfc48d9f
- Backend update from Raze.
2023-02-11 12:05:45 +01:00
CandiceJoy
68d3f474ce
Fixed an error where implicit pointer casts should've failed but didn't.
...
Signed-off-by: CandiceJoy <candice@candicejoy.com>
2023-02-11 00:02:51 -05:00
Emile Belanger
c41b07531a
Fixing GLES mode to work on real GLES hardware and OpenGL 2 again
2023-02-10 13:44:11 -05:00
CandiceJoy
a5a7e2d19b
Added the rest of the Apple frameworks used.
...
Signed-off-by: CandiceJoy <candice@candicejoy.com>
2023-02-09 17:42:51 -05:00
CandiceJoy
ef0dcc9956
Easier MacOS Compilation w/Open AL
...
Added frameworks CoreAudio and AudioUnit for OpenAL on Mac.
Signed-off-by: CandiceJoy <candice@candicejoy.com>
2023-02-09 17:42:51 -05:00
Ricardo Luís Vaz Silva
1dcdfcc4d3
Mark const methods as const in pseudo-generics
2023-02-09 17:02:40 +01:00
Ricardo Luís Vaz Silva
569263efe9
Extend pseudo-generics system used by maps to dynarrays
2023-02-09 17:02:40 +01:00
Rachael Alexanderson
e29011ecde
- (win32) increase compatibility with indirect renders/inputs - instruct the operating system that the cursor is actually hidden - for some API's this actually gives a hint that the cursor is grabbed, which allows for relative mouse movement. In particular, Parallels and Microsft RDP need this.
2023-02-07 13:47:39 -05:00
Rachael Alexanderson
4ac76d82d8
- redirected maps need to be defined in order to redirect
2023-02-03 20:21:40 -05:00
Ricardo Luís Vaz Silva
b50d7f4db5
Let custom CVar handlers to be called on cloned cvars
2023-02-01 10:35:28 -05:00
Rachael Alexanderson
82b7e93d26
- oops, nullptr check
2023-02-01 10:23:30 -05:00
Rachael Alexanderson
33b217bcc9
- unlatch cvars before checking cvar map redirections
2023-02-01 01:56:10 -05:00
Rachael Alexanderson
04ea28defc
- add RedirectCVAR directive for loading alternate maps based on a Bool CVAR setting
2023-02-01 00:06:01 -05:00
Ricardo Luís Vaz Silva
c8f3aa3fd1
ZScript Custom CVars -- ONLY WORKS FROM THE CONSOLE
2023-01-29 14:42:20 -05:00
Ricardo Luís Vaz Silva
8dbe0ae353
Don't change static variable when updating callback for single CVars
2023-01-29 14:42:20 -05:00
Emile Belanger
7349c95623
Fixes bones when using OpenGL 3.3 (UBO bone data)
2023-01-29 20:03:58 +01:00
Emile Belanger
c8bd2deb1e
GLES: Fix first wipe
2023-01-29 20:03:05 +01:00
CandiceJoy
4d9e60574d
Added scroll bar for wad picker to Linux.
...
Min height is set to 150 for GTK3, or none for GTK2.
Signed-off-by: CandiceJoy <candice@candicejoy.com>
2023-01-29 04:14:20 -05:00
Christoph Oelckers
ec04a95929
- validate the buffer size in HWViewpointBuffer::Set2D.
...
This was causing crashes in Dragon Sector when writing past the buffer's end.
2023-01-27 18:25:13 +01:00
CandiceJoy
70d355cfa3
Fixed a bug where calling an invalid virtual function would cause a crash.
2023-01-26 08:52:23 -05:00
Hugo Locurcio
ad49d52b1c
Add cvars to sprite shadows progressively according to thing <-> floor distance
...
This also adds the `r_actorspriteshadowalpha` and `r_actorspriteshadowfadeheight`
cvars for greater control (only effective in hardware renderers).
These are set to 0.5 and 0 by default, which means this fading behavior
is disabled by default.
When enabled, this has two benefits:
- It becomes easier for the player to judge an entity's height since
the shadow opacity now gives this information.
- Entities that are far high above the ground no longer cast a shadow,
which looked strange.
2023-01-25 17:43:04 -05:00
Boondorl
2d94321887
Added OnEngineInitialize() for static event handlers
2023-01-25 17:41:48 -05:00
Ricardo Luís Vaz Silva
4c7e9c6193
Change CheckValue
to multi-return, due to unsupported out int/bool
2023-01-25 17:32:54 +01:00
CandiceJoy
1e39202484
Added check for invalid class on in-VM instantiation
...
Signed-off-by: CandiceJoy <candice@candicejoy.com>
2023-01-24 22:10:34 +01:00
Emanuele Disco
faaf938b18
refactor: add some logs to help understand what is happening during soundfont selection.
...
It helps understand what soundfont is currently used
refs: https://github.com/ZDoom/ZMusic/pull/44
2023-01-24 07:19:23 -05:00
Ricardo Luís Vaz Silva
b47aa37919
Add missing methods (GetIfExists/CheckValue) to Map pseudo-generics
2023-01-23 17:15:08 +01:00
Hugo Locurcio
2fa88aa5a7
Implement antialiasing for automap lines
...
This implements a bruteforce approach for 2D line antialiasing.
It's not perfect by any means, but it seems to do its job well enough.
Since it draws 9 lines instead of 1 line per segment, it's significantly
more expensive but should still be usable on modern hardware (except
on very complex maps).
Automap line antialiasing is disabled by default and can be enabled
with the `am_lineantialiasing 1` cvar.
2023-01-21 11:40:25 -05:00
Ricardo Luís Vaz Silva
a397a93c25
Add Missing Read Barriers to Map Get Functions
2023-01-21 16:40:47 +01:00
Ricardo Luís Vaz Silva
fed2d11be5
Fix iterator invalidation for Map::Get
2023-01-21 16:40:47 +01:00
Ricardo Luís Vaz Silva
decba68225
Map::GetIfExists and Map::CheckValue
2023-01-21 16:40:47 +01:00
Ricardo Luís Vaz Silva
ed6384edc6
Add internal
variable support to files outside gzdoom.pk3
2023-01-20 22:34:26 +01:00
Ricardo Luís Vaz Silva
d4e9438273
rename CheckWritable to IsWritable, and invert its output since it's always negated
2023-01-20 22:34:26 +01:00
Ricardo Luís Vaz Silva
da06212134
Add mDefFileNo to Fields
2023-01-20 22:34:26 +01:00
Ricardo Luís Vaz Silva
5ba1e96d29
Add mDefFileNo to Classes/Structs
2023-01-20 22:34:26 +01:00
Boondorl
f6128f0e9e
Fixed global TerrainDef array not being exported correctly
2023-01-20 22:33:12 +01:00
Rachael Alexanderson
20eb821acb
- indicate in the startup window title when GZDoom is compiled for ARM64 Windows
2023-01-17 02:36:21 -05:00
Sally Coolatta
45796505de
Fix two different portable names
...
M_GetConfigPath uses GAMENAMELOWERCASE_portable.ini, but IsPortable() checks for GAMENAME_portable.ini. Doesn't have much of an impact on base GZDoom since it's case-insensitive, but can matter for engine forks -- IMO it should just be consistent either way.
2023-01-16 23:22:36 -05:00
Marisa Heit
258f4b6786
Check all ACS functions for minimum number of arguments.
...
Also fixes SpawnForced not respecting the minimum declared in zspecial.acs. (https://forum.zdoom.org/viewtopic.php?t=77027 )
2023-01-16 16:53:10 +01:00
Boondorl
dd7cb8649f
Exported LinePortals
...
Added helper functions for lines related to portals
2023-01-15 22:01:37 +01:00
Christoph Oelckers
3ea49a66d1
- cleaned up the pitch management in the sound backend.
...
This now treats all pitch methods equally instead of the preferential treatment of Doom's original pitch hack. Most importantly, the sound channel now stores the pitch as a floating point value instead of 9.7 fixed point.
snd_pitched now also gets checked in the sound engine, not the low level interface.
2023-01-15 14:01:37 +01:00
Christoph Oelckers
5b7826f68b
- set lightblendmode to 0 when setting up a 2D viewpoint.
...
2D never uses dynamic lights so this should always be 0 - and eliminates another place in the backend referencing game data.
2023-01-15 09:21:01 +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
bafd6be342
- removed backend dependencies on game data.
2023-01-15 08:23:26 +01:00
Christoph Oelckers
c8b3d95d6f
- backend update from Raze.
2023-01-15 08:23:26 +01:00
Kevin Caccamo
26518f8660
Fix Y position of characters in monospace fonts
...
The issue was either a typo, or a false assumption that all monospace font characters would be in squares on the sheet. Fixes #1937
2023-01-15 07:41:54 +01:00
Ricardo Luís Vaz Silva
5e464d3e93
expose WallMask and ignore actor, allow disabling Actor Tracing for LineTracer::Trace
2023-01-14 11:33:22 -05:00
inkoalawetrust
458142eb8b
Added flags to SetPlayerProperty.
...
Added all of the missing player cheats to the SetPlayerProperty special.
2023-01-14 11:32:21 -05:00
inkoalawetrust
6f4a29b5e5
Added APROP_WaterDepth.
2023-01-14 11:31:22 -05:00
Major Cooke
aed72f58f3
Converted A_Quake(Ex) intensity parameters from ints to doubles.
2023-01-14 11:30:00 -05:00
Ricardo Luís Vaz Silva
9468ff85a2
Add missing error for mapinfo tonemap
2023-01-14 11:29:12 -05:00
Ricardo Luís Vaz Silva
1ebd4f0d41
Add Tonemap support for Unclamped lighting mode
2023-01-14 11:29:12 -05:00
Ricardo Luís Vaz Silva
8e7897233e
Add Alternate Light Blending Options
2023-01-14 11:29:12 -05:00
Rachael Alexanderson
aa061562cd
- manually reimplement pull request #1850
2023-01-14 11:23:10 -05:00
yqco
e0275df931
CCMD listmaps: Colorize maps loaded from pwads in blue text
...
Colorize maps added from pwads differently so they stand out better
2023-01-14 07:58:16 +01:00
Ricardo Luís Vaz Silva
80d1c61714
Fix MapIterator<X, String>::GetValue
2023-01-14 00:30:43 +01:00
Boondorl
3dce874621
Exported bounce functions
2023-01-12 17:44:28 +01:00
CandiceJoy
955a841884
Fixed a bug where static events would fail to halt propagation.
...
Signed-off-by: CandiceJoy <candice@candicejoy.com>
2023-01-12 17:43:09 +01:00
Marisa the Magician
81e7d77b44
Fix diffuse-only material shaders not applying.
2023-01-12 17:01:59 +01:00
Rachael Alexanderson
cb3662dc24
- fix nullptr crash
2023-01-11 13:33:02 -05:00
Boondorl
769796800d
Minor tweaks to no player clipping
2023-01-09 12:31:08 -05:00
Rachael Alexanderson
af0f84183a
- fix a few errors in last commit
2023-01-09 12:02:41 -05:00
Rachael Alexanderson
5aba0c144c
- optimize P_ShouldPassThroughPlayer checks - move down in the check list, move thing->player check out of the function
2023-01-09 11:53:24 -05:00
Rachael Alexanderson
9777cfd500
- change P_ShouldPassThroughPlayer to static inline to improve performance on repeated calls
2023-01-08 22:12:37 -05:00
nashmuhandes
2fa2533982
- enable DM support for sv_noplayerclip
...
- fixed voodoo dolls with sv_noplayerclip
- fixed autoaim working incorrectly with sv_noplayerclip
2023-01-08 22:55:10 +08:00
nashmuhandes
3d6cc47dc1
Add sv_noplayerclip to allow players to walk through and shoot each other (only in coop)
2023-01-08 19:10:49 +08:00
Christoph Oelckers
aceafecce6
- optimized sheet font texture generation.
...
Instead of reloading the base image over and over again, let's cache it so that less time is needed for each single character.
2023-01-07 19:12:19 +01:00
Christoph Oelckers
4c751db489
- silence some warnings.
2023-01-07 18:35:30 +01:00
Christoph Oelckers
1a0aa95ff4
- changed return value of CreatePalettedPixels.
...
The new struct will allpw return of static pixel data without reallocation and copying.
2023-01-07 17:55:55 +01:00
Christoph Oelckers
4e4642d0ed
- fixed buffer size checks for raw textures.
2023-01-07 16:15:32 +01:00
Marisa the Magician
0e5c6e37b1
Prevent important messages from being accidentally filtered.
2023-01-04 17:54:09 +01:00
Boondorl
0d23816179
Added FlyBob Multiplier for Player
2023-01-02 08:14:24 +01:00
Boondorl
73159dac3e
Added WaterClimbSpeed Property to Players
2023-01-02 08:13:13 +01:00
CandiceJoy
b61be581d9
Fixed custom height and width not saving.
...
Signed-off-by: CandiceJoy <candice@candicejoy.com>
2023-01-01 22:52:55 -05:00
CandiceJoy
269431575b
Fixed implicit cast from bool to double.
2022-12-26 16:45:54 -05:00
Marisa the Magician
6f8901ea87
Rename ValidLock to IsLockDefined (more descriptive).
2022-12-23 22:48:01 +01:00
Marisa the Magician
b85add01c7
Additional lock-related ZScript functions.
...
* Key.ValidLock: returns whether a lock number is valid (can be unlocked) or belongs to a "does not work" door.
* Key.GetMapColorForLock: returns the automap color for a lock number (or -1 if the lock isn't valid).
* Key.GetMapColorForKey: likewise, but for a specific key.
2022-12-23 17:47:31 +01:00
Ricardo Luís Vaz Silva
6072260b3f
Fix FxMultiAssignDecl type
2022-12-23 15:54:23 +01:00
Rachael Alexanderson
adfef56fd8
- fix OpenGL ES selection on the windows startup dialog
2022-12-21 11:04:41 -05:00
Ricardo Luís Vaz Silva
c8fe074041
Multi-Assign Declarations
2022-12-20 23:22:37 +01:00
CandiceJoy
7b9a36c8fd
Fixed the ACS PLAYERINFO_FVIEWBOB to be a bool instead of a double.
2022-12-20 00:58:30 -05:00
Magnus Norddahl
7b864fd665
Add vulkan pipeline cache
2022-12-19 17:40:27 +01:00
Marisa the Magician
e99bf2b036
Update and clean up UE1 model loader.
2022-12-19 14:00:43 +01:00
Ricardo Luís Vaz Silva
43880bbbe1
Expose StripLeft and StripLeftRight to ZScript
2022-12-19 14:00:09 +01:00
Ricardo Luís Vaz Silva
3ffbda5526
Fix StripLeftRight
2022-12-19 14:00:09 +01:00
Ricardo Luís Vaz Silva
fb33a29400
Error out instead of crashing for vector out variables
2022-12-18 19:46:22 +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
Christoph Oelckers
79a38f1f3a
Merge branch 'master' of https://github.com/coelckers/gzdoom
2022-12-18 15:21:42 +01:00
Boondorl
0d4d5587b5
Added FOV Interpolation
2022-12-18 08:23:19 +01:00
Rachael Alexanderson
b08295e7e1
- fix spacing
2022-12-16 20:40:05 -05:00
CandiceJoy
0fdb740ac7
Added toggle control for weapon bob while flying
2022-12-16 17:12:03 -06:00
Ricardo Luís Vaz Silva
de65d1b96f
Misc Fixes for BobWeapon3D
...
- Fix inverted Y axis for offset/old BobWeapon
- finish adding PSPF_MIRROR
- fix missing pivot
2022-12-12 15:23:12 +01:00
Christoph Oelckers
e17e6868e6
- removed bogus errno check from Dehacked parser.
...
This checked errno without first confirming that there has been an error, it is also pointless because the value range check will automatically catch the error case as well.
2022-12-11 21:08:22 +01:00
Ricardo Luís Vaz Silva
46d36cf5c7
add BobWeapon3D
2022-12-09 21:49:38 +01:00
Boondorl
9a1e666303
Exposed Box and PointOnLineSide
2022-12-08 20:33:11 +01:00
Ricardo Luís Vaz Silva
dce456783d
Add support for Vector types as properties
2022-12-08 18:12:27 +01:00
Christoph Oelckers
68f48f3830
- removed bogus errno check from Dehacked parser.
...
This checked errno without first confirming that there has been an error, it is also pointless because the value range check will automatically catch the error case as well.
2022-12-08 09:50:06 +01:00
Ricardo Luís Vaz Silva
b610f4206f
Fix wrong assumptions about actor initialization in Map/MapIterator
2022-12-05 19:23:42 +01:00
Rachael Alexanderson
911d27148b
g4.11pre
2022-12-05 10:31:11 -05:00
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
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
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
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
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
Christoph Oelckers
4d1b44d9e3
- eliminated GetSounds from the sound engine's interface.
2022-11-24 23:52:51 +01:00
Christoph Oelckers
419e593a4c
- allow SNDINFO to declare sound mappings by using 'sounda = soundfle'.
...
This works similar to MAPINFO: The first definition in a file declares the format, all later ones must be the same.
This change in syntax increases robustness significantly because it avoids the problems with the original syntax not being able to detect badly formatted names.
2022-11-24 23:52:51 +01:00
Rachael Alexanderson
f7f67114ed
- move posix I_GetGogPaths() stub to program-specific code for use later
2022-11-24 17:40:26 -05:00
Gutawer
8db4c5ea71
- process events every frame as well to ensure that menus can run at any framerate
2022-11-24 00:56:44 +01:00
Marisa the Magician
eab675c0cb
Make model stretch fix opt-in with a flag.
2022-11-22 17:58:32 +01:00
Marisa the Magician
0509d3a4e7
Fix incorrect pixelratio handling on rotated models.
2022-11-22 07:44:22 +01:00
Boondorl
599b00f2ea
Extended MENUDEF Functionality
...
*Added Font and TextureID types to Option and Image Scroller items (List items already have these)
*Added "Class" instruction for Image Scrollers
*Added ability for Option items to read in their OptionMenuDescriptor (List and Image Scroller items already have this)
*Added "ForceList" instruction for Lists so that skill, playerclass, and episode menus don't get overridden
2022-11-22 07:43:23 +01:00
Gutawer
63c2d93033
- quaternion improvements
2022-11-21 07:20:43 +01:00
Gutawer
9f0c518be9
- add remaining quaternion function implementations
2022-11-21 07:20:43 +01:00
RaveYard
540f778047
Quaternion structure and math ops
2022-11-21 07:20:43 +01:00
Ricardo Luís Vaz Silva
802f77ab19
Fix checking of wrong variable in String..Float concatenation
2022-11-19 23:55:17 +01:00
Rachael Alexanderson
b082ad9cef
- fix colormap remapping when colormap entries may have fullbright entries which should not be considered duplicates
...
- this should address the "fullbright teeth" issue with the imps in KDiKDiZD: https://forum.zdoom.org/viewtopic.php?t=76790
2022-11-18 07:42:09 +01:00
Christoph Oelckers
eb97346b0e
- stop all sound before showing ENDOOM.
2022-11-16 17:08:11 +01:00
Christoph Oelckers
d0c86952ee
- disabled shortcutting the intermission code if no summary screen is wanted.
...
This also disabled all cutscenes being attached to the completed map.
2022-11-16 16:29:02 +01:00
Christoph Oelckers
29b4418c3a
- added 'foreach' loop to ZScript.
...
Syntax:
foreach(variable : array)
{
}
the variable's type is automatically deducted.
2022-11-15 21:34:45 +01:00
Christoph Oelckers
4994e114c8
- backported Vector*::Sum() from Raze.
2022-11-14 19:49:37 +01:00
RaveYard
31ac1bd414
Initial implementation of Quaternion type in ZScript
2022-11-13 22:48:19 +01:00
Emile Belanger
f41f393e91
GLES: Added IQM bone support.
2022-11-13 21:19:54 +01:00
Boondorl
7517b64aee
Updated to Interface Event
...
Changed SendConsoleEvent to SendInterfaceEvent to make functionality clearer. Added InterfaceProcess virtual to EventHandlers. Added CCMD for sending interface events.
2022-11-13 21:04:38 +01:00
Boondorl
b4a8b1278f
SendConsoleEvent function for EventHandlers
2022-11-13 21:04:38 +01:00
Major Cooke
a483ad20be
Replaced memset for particles as recommended by dpJudas
2022-11-13 21:02:59 +01:00
Major Cooke
f044695d28
Future-proof particles by resetting them completely when replaced.
2022-11-13 21:02:59 +01:00
Christoph Oelckers
1047b766df
- added PlusZ intrinsic to Vector3 and ToVector intrinsic to numeric values.
...
These just mirror features of the internal vector classes.
2022-11-13 08:07:20 +01:00
Christoph Oelckers
f3b33f7cf8
- added LengthSquared and Angle intrinsics for all vector types, also allow calling VectorAngle with a full vector as a single parameter.
2022-11-13 08:07:12 +01:00
Christoph Oelckers
54f1cabed9
- backend update from Raze.
...
Progdir stuff for POSIX.
2022-11-13 07:44:36 +01:00
UnizoneDev
a21d0c70e4
Mark the PushSound property as meta
2022-11-13 07:38:07 +01:00
UnizoneDev
b66433478c
Simplify sliding objects for now
2022-11-13 07:38:07 +01:00
UnizoneDev
9af664d117
Add PushSound property and Slide state
...
First Commit, hip hip hooray!
2022-11-13 07:38:07 +01:00
Major Cooke
2a9e28d949
Added PS_REPLACE flag for A_SpawnParticle(Ex).
...
- When used, new particles that spawn when the limit is reached will replace the oldest particle.
2022-11-12 09:13:37 +01:00
RaveYard
31db5847cc
Finish Vector4 implementation
2022-11-12 09:04:38 +01:00
Shiny Metagross
a525233914
Attempted to add Vector4 to ZScript
2022-11-12 09:04:38 +01:00
Christoph Oelckers
31d8a23046
- avoid infinite portal recursion.
2022-11-12 09:00:18 +01:00
Boondorl
fc7bb4a7e6
Exposed LevelLocals' LookupString functionality
2022-11-11 07:32:56 +01:00
Boondorl
aea346f1f3
Improved Slam functionality:
...
*Added ONLYSLAMSOLID flag to ignore non-solid Actors that aren't shootable while SKULLFLY is on.
*Added Slam state that gets entered when slamming an Actor.
2022-11-10 22:55:43 +01:00
Yukita Mayako
15e00f22e8
Normalize angle in AngleToACS
...
Fixes GetActorAngle returning negative or large values with no range limit.
2022-11-10 07:20:28 +01:00
Ricardo Luís Vaz Silva
31ded6dd8a
Enable ANIMDEFS for particles
2022-11-08 23:56:03 -05:00
Rachael Alexanderson
a0786253c7
- add some more blacklisted cvars to defcvars
2022-11-08 14:51:41 -05:00
Christoph Oelckers
c39b7c7c7b
- fixed background setup for intermissions to apply tiling only where intended.
2022-11-08 20:50:08 +01:00
Christoph Oelckers
df7a58d756
- missed one BaseBlend use.
2022-11-08 12:01:34 +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
dab61709f8
- added a compile option to fully disable the software renderer.
...
This is mainly for new games which have been designed for hardware rendering.
Note that this does not remove the software renderer's code - all it does is to disable the vid_rendermode CVAR by turning it into a static constant with the value 4.
2022-11-08 11:24:35 +01:00
Rachael Alexanderson
c860e2d732
- add the following command line parameters:
...
- -noextras: disable loading of any extras (lights, brightmaps, widescreen)
- -nolights: disable loading of lights
- -nobrightmaps: disable loading of brightmaps
- -nowidescreen: disable loading of included widescreen assets
2022-11-08 00:13:30 -05:00
Christoph Oelckers
d422737a7e
- fixed statistics code to do proper checks for OpenGL's capabilities.
2022-11-06 23:29:29 +01:00
Marisa Heit
f34d4d2033
Fix compilation on Linux
2022-11-06 12:50:51 -06:00
Marisa Heit
7f899bd412
GC fixes/improvements
...
- Have a real finalizer stage for destroying objects instead of mixing them
in to the sweep stage.
- Base GC rate on a running average of the allocation rate instead of basing
it on the amount of time taken since the last sweep started.
- More GC stats for better tweaking.
2022-11-06 19:39:00 +01:00
Christoph Oelckers
5ea57a6c64
- when converting to a portable install, flag the current session accordingly.
2022-11-06 10:59:33 +01:00
Christoph Oelckers
4ebcff8573
- remaining changes for moving bone data to the backend
2022-11-06 10:59:33 +01:00