Commit graph

16753 commits

Author SHA1 Message Date
alexey.lysiuk
8a1091c6fe - fixed (un)morphing of more than one actor from ACS
https://forum.zdoom.org/viewtopic.php?t=68847
2020-06-07 12:16:46 +03:00
alexey.lysiuk
11ba0be4c2 - fixed setup of JIT functions that require extra frame space
https://forum.zdoom.org/viewtopic.php?t=68816
2020-06-07 11:34:58 +03:00
alexey.lysiuk
718e2ea0f5 - fixed compilation warnings reported by Clang
src/g_level.cpp:1575:16: warning: delete called on non-final 'DoomLevelAABBTree' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
src/p_setup.cpp:367:16: warning: delete called on non-final 'DoomLevelAABBTree' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
2020-06-07 11:32:35 +03:00
Alexander Kromm
928c738e19 make various getter and pure-math methods clearscope, and where applicable, const
Original PR: https://github.com/coelckers/gzdoom/pull/532

Status of the original PR

1. Actor
- [already in] deltaangle
- [already in] absangle
- [already in] AngleToVector
- [already in] RotateVector
- [already in] Normalize180
- [already in] BobSin
- [already in] GetDefaultSpeed
- [this PR] GetBobOffset
- [this PR] InStateSequence
- [already in] FindState
- [already in] GetDropItems
- [this PR] DistanceBySpeed
- [this PR] AccuracyFactor
- [not in original PR, for PlayerInfo.isTotallyFrozen] isFrozen

2. PlayerInfo
- [this PR] GetUserName
- [this PR] GetColor
- [this PR] GetDisplayColor
- [this PR] GetColorSet
- [this PR] GetPlayerClassNum
- [this PR] GetSkin
- [this PR] GetNeverSwitch
- [this PR] GetGender
- [this PR] GetTeam
- [this PR] GetAutoaim
- [this PR] GetNoAutostartMap
- [this PR] GetClassicFlight
- [this PR] IsTotallyFrozen

3. C++ methods, to match ZScript:

- [scriptified] AActor::AccuracyFactor() to Actor.AccuracyFactor
- [this PR] AActor::DistanceBySpeed(AActor *, double) — it is a combination of getter and pure math
- [this PR] AActor::Distance2D(AActor *, bool) — called by DistanceBySpeed
- [this PR] AActor::Distance2D(AActor *, double, double, bool) — called by DistanceBySpeed
- [not in original PR, for PlayerInfo.isTotallyFrozen] AActor::isFrozen
2020-06-07 09:39:30 +02:00
Christoph Oelckers
b06af634e2 - added a flash component to the colormap shader.
Its main purpose is for RR's lightning flash in Raze but this looks very useful for manipulating fullscreen colormaps. Currently not exposed, though.
2020-06-07 09:16:56 +02:00
Christoph Oelckers
db93f2969e - fixed offsets for hires replacements of already scaled textures. 2020-06-06 19:01:11 +02:00
Cacodemon345
9c7f5e941e Fix compilation on NetBSD 2020-06-06 19:38:47 +03:00
Christoph Oelckers
5ab648b055 - fixed texture sampler generation in the Vulkan backend. 2020-06-06 16:10:19 +02:00
Christoph Oelckers
d643a42c4f - added per pixel lighting for decals. 2020-06-06 15:18:07 +02:00
Christoph Oelckers
16e64a19ae - fixed incorrect offsets for textures in the hires/ folder. 2020-06-06 13:59:39 +02:00
Christoph Oelckers
9f6d244016 - advanced coordinate control for overlays over DTA_Fullscreen images. 2020-06-06 12:51:03 +02:00
Christoph Oelckers
e00f27ddf5 - added limited support for replacing the intermission backgrounds in Doom 1 with widescreen images.
Due to how the placement works here, it is only usable with fullscreenautoaspect mode 3.
2020-06-06 10:19:02 +02:00
Christoph Oelckers
4746d0c626 - fixed crash with texture upscaling in the software renderer. 2020-06-06 09:24:12 +02:00
Cacodemon345
9bf0f9bbfc Add option to disable SDL joystick support.
This also adds some extra sanity checks to avoid crashes when the joystick isn't initialized.
2020-06-04 17:38:49 +03:00
Christoph Oelckers
b441b649c4 - fixed some double to float conversion warnings. 2020-06-04 08:05:38 +02:00
Christoph Oelckers
8b91bf9b61 - enabled CVAR descriptions. 2020-06-04 08:04:51 +02:00
Christoph Oelckers
fd3845ce09 - fixed: vertically mirrored textures should not be subjected to empty space optimizations because the algorithm cannot deal with the inverted case. 2020-06-03 22:30:44 +02:00
Christoph Oelckers
87d81656e1 - fixed: the 3D floor processing code in the renderer did not restore the render style after finishing.
Normally this won't be noticable, the only exception is if the last processed 3D floor had additive translucency and colored fog - this case is special because for additive rendering the fog color needs to be disabled.
2020-06-03 21:35:09 +02:00
Christoph Oelckers
720853cff8 - made some changes so that material definitions can properly check automatic layers when determining their material type.
Most importantly this means that any texture with a custom material definition needs to load its automatic layers before applying the definition.
2020-06-03 21:16:36 +02:00
Edoardo Prezioso
8ab6575bd1 - Fixed OpenAL regression with looping sounds with playing length 0.
If such case occurs, the starttime parameter passed to the sound functions is ignored and truncated to 0.
2020-06-03 15:27:50 +02:00
Cacodemon345
e2e47b8d8c Include signal.h if either compiling for macOS or one of the BSD systems 2020-06-03 08:26:28 +02:00
Cacodemon345
392f78dfbc Allow dialogs to be displayed on other Unix-like OSs 2020-06-03 09:17:14 +03:00
Christoph Oelckers
fa54afbd08 - addressed a problem with materials depending on automatically added textures.
This isn't a fix, it just removes a sanity check that really shouldn't be, but thanks of an underspecification of the material definition it was never possible to do this case properly.
2020-06-03 00:16:25 +02:00
Christoph Oelckers
932b2d820d - fixed floorclipping checks for 3D floors.
Neither the setup nor the in-game checks were correct, because this code comes from a time where ceilings could not have a terrain, meaning that 3D floors couldn't have one.
2020-06-02 23:04:05 +02:00
Christoph Oelckers
c537e5a0b7 - fixed bad ACS translation indexing. 2020-06-02 22:31:04 +02:00
Christoph Oelckers
1279ec081a - Strip out any color escape sequences before setting a window title. 2020-06-02 21:49:53 +02:00
Christoph Oelckers
1881cb45d2 - reject all 0-special lines for activation.
This is to ensure consistency between all callers of this function.
2020-06-02 21:38:55 +02:00
Christoph Oelckers
c48fa818ff - use modulo, not bitwise and-ing to check the damage delay for terrain based damage.
This was apparently overlooked when refactoring the damage system 4 years ago.
2020-06-02 21:24:34 +02:00
Christoph Oelckers
96cf16c923 - fixed: Copying a texture's size must also copy the offset. 2020-06-02 21:23:38 +02:00
Christoph Oelckers
f91958e88d - fixed scale setup for multipatch textures. 2020-06-02 20:38:46 +02:00
Christoph Oelckers
f118cd78bf - fixed missing custom shader setup in cases where a shader got used more than once. 2020-06-02 20:20:18 +02:00
Christoph Oelckers
8f07ab87c8 - make sure that incomplete multipatch textures are technically complete.
They need a valid FTexture backing them and should have their name cleared so that nothing references them by accident.
2020-06-02 20:15:55 +02:00
Christoph Oelckers
8480a390a1 - synced texture sampler setup fixes from Raze. 2020-06-02 11:45:34 +02:00
Christoph Oelckers
83153efcad - refixed translations on Vulkan. 2020-06-02 11:41:49 +02:00
Christoph Oelckers
ff99dfbbc6 Merge branch 'master' of https://github.com/coelckers/gzdoom 2020-05-31 23:38:17 +02:00
Christoph Oelckers
4c11b01588 - backend sync with Raze. 2020-05-31 23:37:11 +02:00
Hugo Locurcio
80c5b4d37b Add a cvar to control weapon bobbing while firing
This simulates a feature found in Crispy Doom, which keeps the
weapon bobbing while firing. This leads to a "smoother" appearance
which may look a bit prettier to some people.

The default value of 0 preserves the old behavior.
2020-05-31 23:12:11 +02:00
drfrag
8c539539df - Fixed crash on maps with out of range sidedef and sector numbers, adapted from PRBoom. 2020-05-29 18:59:58 +02:00
Christoph Oelckers
b60fd4d8bc - removed redundant TextureFilterChanged method from DFrameBuffer. 2020-05-29 11:53:37 +02:00
Christoph Oelckers
5861fdd4bd - minor cleanup of FHardwareTexture.
Inlining of a trivial function and removing dependency on the render state, unbinding the render state should be done elsewhere.
2020-05-29 11:48:29 +02:00
Christoph Oelckers
a517b04908 - texture sampler cleanup. 2020-05-28 22:51:17 +02:00
drfrag
332dfa4d6f - Remove wrong GL includes. 2020-05-27 21:35:09 +02:00
Christoph Oelckers
c892fb1ddb - backend sync with Raze
Mostly code reformatting plus license and copyright adjustments
2020-05-26 22:59:50 +02:00
Christoph Oelckers
4881ec257a - don't let CHANF_AUTO hijack other channels.
With CHANF_OVERLAP this isn't needed anymore - any sound started on CHAN_AUTO can actually play on this channel with overlap implicitly allowed.
This has the added advantage that these sounds can be reliably accessed with other function by using CHAN_AUTO.
2020-05-26 22:19:30 +02:00
Alexander Kromm
2a063c96da more descriptive message for server CVAR change attempt in netgame
Rationale: while the previous description contains the name of a CVAR, it doesn't specify that it's a CVAR. Unsuspecting user may be not aware that the engine or a mod contains such a CVAR.
2020-05-26 19:18:22 +02:00
alexey.lysiuk
555845222d - fixed fullscreen toggle via shortcut 2020-05-26 10:02:16 +03:00
Christoph Oelckers
233d0b62b9 - fixed space calculations for oversized episode and skill menus. 2020-05-25 22:12:08 +02:00
Christoph Oelckers
3b65b0caec - fixed: The size parameters for automap sprites are floats, so they need the matching tag. 2020-05-25 21:32:49 +02:00
Christoph Oelckers
730f64e447 Merge branch 'master' of https://github.com/coelckers/gzdoom 2020-05-25 21:23:25 +02:00
Christoph Oelckers
dbb1819238 - fixed setup for translated textures in Vulkan.
It was passing the wrong IDs to high level code.
2020-05-25 21:17:28 +02:00
Christoph Oelckers
b2b1ecc11f - Single image fonts do not use translations. 2020-05-25 21:16:36 +02:00
Christoph Oelckers
29344006a0 - fixed: texture upscaling was disabled by default.
It should only be disabled if the scale of a texture is greater than 2.
2020-05-25 20:41:47 +02:00
Christoph Oelckers
3e8f53e98c - fixed shader building.
We really need a version directive for user shaders, this is getting too messy. :(
2020-05-25 20:26:58 +02:00
Christoph Oelckers
667b2d6bf4 - fixed: V_GetFont must load the translations once the game has been set up. 2020-05-25 19:44:06 +02:00
Christoph Oelckers
2828dbe095 - fixed: TRF_ALLACTORS did not consider actors without any flag being set. 2020-05-25 19:33:14 +02:00
Christoph Oelckers
ea0da8533c - added missing range check to section code.
Fixes asserts on some maps in Kama Sutra.
2020-05-25 19:20:51 +02:00
Christoph Oelckers
991661e11e - fixed missing sound for Polyobj_MoveTo. 2020-05-25 16:24:36 +02:00
Marisa Kirisame
7d5df1dd7e Add mapinfo option to disable merging of identical pickup messages on same tic 2020-05-24 08:19:14 +02:00
Rachael Alexanderson
5c86ad8507 - defcvars: handle values from a version 219 config 2020-05-23 09:08:40 -04:00
Rachael Alexanderson
00acbac04e Merge remote-tracking branch 'origin/master' into texture_rework 2020-05-23 08:53:11 -04:00
alexey.lysiuk
3f9b9314a0 - added #include to fix compilation with MSVC 16.6.0
https://forum.zdoom.org/viewtopic.php?t=68641
2020-05-21 10:06:50 +03:00
Rachael Alexanderson
58b3cb0971 Merge branch 'master' of https://github.com/coelckers/gzdoom into texture_rework 2020-05-18 23:13:37 -04:00
Alexander Kromm
53ea19c6a8 fix "'ictionary' is freed outside the GC process" warning 2020-05-18 18:32:53 +02:00
alexey.lysiuk
dd40778c75 - fixed map things erroneously treated as polyobject anchors/spots
https://forum.zdoom.org/viewtopic.php?t=68601
2020-05-18 17:48:10 +03:00
Rachael Alexanderson
6e3ec96250 - export common formulae to functions instead of copy-pasting them
- screen bevel now enlarges also when screenblocks <= 11

- make intermission and status bar scaling game-specific in the config

- add scaling customization for classic ui flat scaling

- make screen border flat scale up

- inter_classic_scaling now defaults to true
- fixed: last commit I accidentally left hardcoded testing values and did not change them back to check for the texture's original size

- implement cvar 'inter_classic_scaling' to render the intermission flat as if it were 320x200
2020-05-07 04:34:17 -04:00
Rachael Alexanderson
0f0768652a - force player respawn to call up the player's default class settings before determining where to respawn the player 2020-05-07 04:33:28 -04:00
Rachael Alexanderson
192882f63a Merge branch 'master' of https://github.com/coelckers/gzdoom into texture_rework 2020-05-07 04:32:46 -04:00
Mekboss
4807f4240b Fix MSVS compile bug and add offset parameter for SprayDecal 2020-05-07 09:35:48 +02:00
Mekboss
0e9ca3c850 Replace function variables to DVector3 2020-05-07 09:35:48 +02:00
Mekboss
ba43244764 Add optional direction parameters for SprayDecal and its A_SprayDecal zscript counterpart 2020-05-07 09:35:48 +02:00
Christoph Oelckers
0cf967dc06 - fixed wrong order of actions on shadow map updater. 2020-05-04 22:15:18 +02:00
Christoph Oelckers
c6cc763907 - fixed: screen resolution changes did not notify the 2D drawer. 2020-05-04 22:14:50 +02:00
Christoph Oelckers
192ea40634 - fixed order of multipatch texture initialization.
This didn't play well with hires replacements - the texture size needs to be set as early as possible.
2020-05-04 21:24:36 +02:00
Christoph Oelckers
3fd4d08004 - fixed startup and font init crashes. 2020-05-04 20:06:54 +02:00
PaulyB
a528290b5c Fix single top level filter folder not being read
I have no idea why the missing comma broke it in this particular way...
2020-05-03 11:26:57 +03:00
alexey.lysiuk
028cc6a828 - fixed compilation of SDL backend 2020-04-30 11:28:35 +03:00
Cacodemon345
4b4ff8dd0e
Fix bouncing missiles not dealing damage when hitting top/bottom (#1068)
* Fix bouncing missiles not dealing damage when hitting top/bottom
2020-04-30 08:55:09 +02:00
arookas
6b70cad6e1 Add option to invert mouse x 2020-04-30 08:54:10 +02:00
Christoph Oelckers
3eecb6b3b6 - fixed creation of multipatch textures using other multipatch textures as their source. 2020-04-30 00:12:28 +02:00
Christoph Oelckers
d71ef66957 - fixes copied from Raze. 2020-04-29 23:58:50 +02:00
Christoph Oelckers
652712d970 - moved Vulkan and Softpoly backends to 'common'. 2020-04-29 22:17:35 +02:00
Christoph Oelckers
bc8335de3b - Vulkan backend dependency cleanup. 2020-04-29 18:52:08 +02:00
Christoph Oelckers
68630d6782 - sanitized dependencies of the softpoly render backend.
This included half the game state and lots of unneeded parts of the software renderer.
The two modules that are shared between softpoly and the classic software renderer have been moved to a neutral place.
2020-04-29 18:48:15 +02:00
Christoph Oelckers
8cce6207c7 - sanitized includes in a few files. 2020-04-29 18:15:56 +02:00
Christoph Oelckers
e3fdf2194e - moved a few leftover utility classes to 'common'. 2020-04-29 17:51:04 +02:00
Christoph Oelckers
808a7d28cf - moved benchmark fps output to the custom part of it because it depends on game data. 2020-04-29 17:44:43 +02:00
Christoph Oelckers
5d10d6c448 - directory structure cleanup.
The hwrenderer folder did not contain sufficient files anymore for such extensive subgrouping.
2020-04-29 17:36:58 +02:00
Christoph Oelckers
6cf91d3941 - moved the remaining core parts of the GL renderer to 'common'. 2020-04-29 17:19:17 +02:00
Christoph Oelckers
9be63a5093 Merge branch 'master' into texture_rework 2020-04-29 08:04:15 +02:00
Christoph Oelckers
c996600de7 - gl_renderer.cpp include cleanup 2020-04-29 08:01:29 +02:00
Christoph Oelckers
2adf1c6a6b - fixed ZScript compiler crash with dereferencing null pointers 2020-04-29 07:59:06 +02:00
Christoph Oelckers
64e301130b - moved low level sky rendering to 'common' 2020-04-29 00:21:30 +02:00
Christoph Oelckers
4b8fb7d48b - moved around some sky rendering code so that the game independent parts are grouped together. 2020-04-29 00:14:42 +02:00
Christoph Oelckers
b1dd1eff50 - moved video files to 'common'. 2020-04-28 23:08:27 +02:00
Christoph Oelckers
ddef3f7b98 - made video base code game independent 2020-04-28 22:54:53 +02:00
Christoph Oelckers
2196b4fb04 - moved the frame rate drawer out of DFrameBuffer.
Too much of this is not shareable and all it consists of are drawing operations on the 2D drawer.
2020-04-27 23:53:26 +02:00
Christoph Oelckers
5f3e4a5d0e - did a bit of cleanup on DFrameBuffer, most notably taking GetCaps out of it.
With the old softpoly renderer and OpenGL 2.x being gone there is no more need for such complex handling, it is now a single function in d_main.cpp.
2020-04-27 22:24:41 +02:00
Christoph Oelckers
3ee1aa76c3 - moved model code to 'common'. 2020-04-27 20:50:46 +02:00
PaulyB
66bac45615 Properly namespaced UDMF flag 2020-04-27 20:30:37 +02:00
PaulyB
8d1451689b Exposed MTF_NOCOUNT to UDMF 2020-04-27 20:30:37 +02:00