Commit graph

17405 commits

Author SHA1 Message Date
Christoph Oelckers
e1eb54ecda - replaced sectordist with a floating point variant with better precision. 2022-08-05 17:04:46 +02:00
Christoph Oelckers
b31e6c0bdf - replaced getclosestpointonwall_internal with a floating point version based on NearestPointLine. 2022-08-05 17:04:46 +02:00
Christoph Oelckers
c2fc7577db - cleanup of 3D viewport code.
Removes all the hackery that Polymost needed and now uses a sane struct to store the info.
2022-08-05 17:04:45 +02:00
Christoph Oelckers
4ec748a92b - removed some unused variables and declarations. 2022-08-05 17:04:45 +02:00
Christoph Oelckers
c5ec2af020 - Exhumed: fix position init in BuildfRat
This is only the cheat case, which is why this wasn’t detected earlier.
2022-08-05 09:41:25 +02:00
Christoph Oelckers
7e36e57639 - fix dangerous pointer arithmetic in ParseCommandLine
Should be rewritten entirely to sanitize, though.
2022-08-05 09:40:37 +02:00
Christoph Oelckers
8d423fdc6f - toned down the fov change a bit.
With real projection math it was a bit extreme.
2022-08-03 19:59:46 +02:00
Christoph Oelckers
0fd42a50e8 -fixed ZScript warnings with comparison signedness. 2022-08-03 19:44:37 +02:00
Christoph Oelckers
e6ca0f4817 - made fov change for RRRA's drug mode work. 2022-08-03 19:41:30 +02:00
Christoph Oelckers
b60181eed5 - variable cleanup. 2022-08-03 15:58:18 +02:00
Christoph Oelckers
291726cc55 - removed the Polymost renderer. 2022-08-03 15:50:27 +02:00
Christoph Oelckers
7debab7ff4 - refined wall sprite check so that orthogonally aligned sprites are only aligned to orthogonal walls.
Here even the slightest deviation can create problems.
2022-08-03 14:13:42 +02:00
Christoph Oelckers
cac54d42e9 - fixed script warnings after updating to version 4.9.0 2022-08-03 13:49:17 +02:00
Christoph Oelckers
89e8d7ad58 - removed all remnants of the softpoly renderer which was never used in Raze. 2022-08-03 13:27:48 +02:00
Rachael Alexanderson
8de8e51d9d - add libvpx (arm64) from gzdoom 2022-07-26 23:08:39 -04:00
Christoph Oelckers
1df66f4971 - clear all collision flags from generic controller sprites
Taken from EDuke32 - there seem to be a few maps which need this.
Also consolidate a bit of setup code between Duke and RR.
2022-07-26 00:13:11 +02:00
Rachael Alexanderson
7e8e6b1cde
update badge, again, one last time 2022-07-24 16:26:05 -04:00
Mitchell Richters
8fb4549998 - Replicate GZDoom fix on POSIX systems to ensure GameConfig global is initialised before trying to load the ENGINERES file.
* Same fix as 0f0b4b7620.
2022-07-24 20:11:00 +10:00
alexey.lysiuk
e9fd96fd20
- updated continuous integration badge in readme
[skip ci]
2022-07-24 10:12:49 +03:00
Rachael Alexanderson
00efeaa02a - transition commit change from gzdoom 27d4fc28db 2022-07-23 19:13:49 -04:00
Christoph Oelckers
6591b3b090 - Backend update from GZDoom.
Mainly new features for 2D drawer and model renderer.
2022-07-23 12:05:27 +02:00
Mitchell Richters
79022e8afa - Clean up and simplify getincangle()/getincanglebam() functions and inline them. 2022-07-23 12:57:45 +10:00
Mitchell Richters
5dce9c8ff2 - Simplify tosigned() method inside of binangle class. 2022-07-23 12:43:54 +10:00
Christoph Oelckers
abb7f87de3 - Backend update from GZDoom. 2022-07-23 12:10:08 +10:00
Mitchell Richters
b9ee6c327d - Change internals of bsinf() and bcosf() to use BAM sine functions instead of coverting build angle into radians, then into BAM. 2022-07-23 10:37:33 +10:00
Mitchell Richters
4324f923bc - Call updateTurnHeldAmt() after doing the turn, not before it. This gives one tic more preamble. 2022-07-23 10:37:32 +10:00
Mitchell Richters
e016f65321 - Don't adjust joystick pitch/yaw speeds based on whether autorun is enabled or not.
* Only SW did this out of the box.
* Duke never did, NBlood has no working joystick setup to compare with, and GZDoom doesn't either.
* Fixes #693.
2022-07-23 10:37:32 +10:00
Mitchell Richters
a423b93ad8 - Use turnscale in controller pitch calculations, which is only used in SW when on a sector object, and is original behaviour. 2022-07-23 10:37:32 +10:00
Mitchell Richters
00e12ea031 - Remove some uses of xs_Float.h functions in game-side code where overflow protection isn't needed.
* Went a little bit nuts and just used this everywhere back way back when.
2022-07-23 10:37:32 +10:00
Mitchell Richters
78fcf2b4f0 - Move invertmouse and invertmousex CVARs from gameinput.cpp to inputstate.cpp.
* Old setup was inverting the entire player's horz/avel, even for joystick input while not inverting `mousemovex` or `mousemovey` at all.
2022-07-23 10:37:32 +10:00
Mitchell Richters
c68e112867 - Remove some unnecessary branching and abs() calls in processMovement().
* Since fvel/svel is clamped at the end of the function, these tests just aren't necessary.
* Reversed the logic in some if statements so the most likely outcome doesn't fall to the else branch.
2022-07-23 10:37:32 +10:00
Mitchell Richters
ea17352aea - Do some small tidying up in gameinput.cpp and change how some constants are stored. 2022-07-23 10:37:32 +10:00
Mitchell Richters
1906491129 - Move some PlayerHorizon/PlayerAngle class methods out into inlines in gameinput.cpp.
* These class methods did nothing with the objects inside the class, they worked generically so they're better as inlines.
* Also tidied up some of the internals so they're easier to read.
2022-07-23 10:37:32 +10:00
Dale Whinham
7856d30957 Improve KDE/kdialog detection
If KDE is running but kdialog is not present on the system (e.g. as is
the case on SteamOS), allow falling back on the GTK dialogs instead.
2022-07-23 10:36:15 +10:00
Mitchell Richters
6b4561f3bd - Commit changes that Discord compilation always makes on Linux, leading to -m on compiles. 2022-07-20 11:18:31 +10:00
Christoph Oelckers
6c915d7940 - Blood may not abort on a bogus start position.
There seem to be ways to override it elsewhere.
The initial position gets used by some code, so it still needs to be validated, though.
2022-07-12 09:52:30 +02:00
Dale Whinham
ed4e23f1ec Fix crash when exiting with no game data
When shutting down with no game data, GameConfig is saved and the
pointer is nulled. If a joystick was present, a null dereference occurs
when the engine tries to save the joystick config later in the shutdown
sequence.

Add a check to avoid a crash in this scenario.
2022-07-10 22:30:18 +02:00
Christoph Oelckers
390cd2ca98 - fixed rendering of non-orthogonal wall sprites.
These cannot be done in a simple two-pass approach, for wall sprites attached to walls it requires doing the two passes per wall to ensure proper depth buffer coverage.
2022-07-04 09:11:24 +02:00
Christoph Oelckers
2c3fcbaf51 - glslang compiler and Vulkan backend update. 2022-07-02 10:20:11 +02:00
Christoph Oelckers
0c03d3e364 - lzma and zlib update. 2022-07-02 09:58:48 +02:00
Christoph Oelckers
3ec8a96ddf - partial backend update from GZDoom. 2022-07-02 09:30:37 +02:00
Christoph Oelckers
486da6922d - fixed automap angle in unrotated mode. 2022-06-28 22:33:53 +02:00
alexey.lysiuk
fd3fccdc7a - updated continuous integration workflow
* Use macOS 12 runners
* Test Xcode project generation in addition to Makefile one
* Remove obsolete CMake options
* Use ZMusic 1.1.9
2022-06-26 11:34:32 +03:00
Christoph Oelckers
9e6fe2cbaa - added workaround to render the crane in WT's 'Docks' map correctly.
This one violates engine specifications by creating overlapping walls when the crane is rotated.
2022-06-26 09:36:01 +02:00
Christoph Oelckers
eb8fae761e - backend update from GZDoom. 2022-06-26 09:35:21 +02:00
Christoph Oelckers
30b81c0920 - SW: changed fullscreen HUD to display all 8 keys without gaps ans overlapping. 2022-06-06 22:03:42 +02:00
Christoph Oelckers
f8aacb3825 - fixed crash in Last Warrior map 9.
Really, asserts should not be used to test for errors that can actually happen!
2022-06-06 20:56:50 +02:00
Christoph Oelckers
998def2487 - another backend update from GZDoom. 2022-06-06 15:28:41 +02:00
Christoph Oelckers
f599040212 - GCC needs this commented out but really shouldn't. 2022-06-06 13:08:23 +02:00
Christoph Oelckers
d2eaaf7ac1 - for Raze hud_aspectscale needs to default to true 2022-06-06 12:42:45 +02:00