Christoph Oelckers
aa67875792
- enabled r_shadows in Blood.
...
This was the only game not allowing to switch off the shadows.
2020-06-12 21:46:24 +02:00
Christoph Oelckers
9b03537f3a
- fixed shadows in Shadow Warrior.
...
They use a shade of 127 which wasn't clamped to a valid range in the backend.
2020-06-12 21:40:49 +02:00
Christoph Oelckers
65ddb6cb59
- disabled the game side frame limiter.
...
The backend has its own one, and unlike the one on the game side, it actually suspends execution when waiting.
2020-06-12 21:08:47 +02:00
Christoph Oelckers
1311db9ac9
- changed all places clearing the screen in 2D display code to use the 2D drawer's ClearScreen method.
2020-06-12 20:52:01 +02:00
Christoph Oelckers
60b18c7ec9
- Blood: use the 2D drawer to clear the screen for 2D display.
2020-06-12 20:31:23 +02:00
Christoph Oelckers
4f0e3adfbb
- removed pointless constexpr declaration on numeric constants.
2020-06-12 16:49:35 +02:00
Christoph Oelckers
3b7f494a88
Merge branch 'master' of https://github.com/coelckers/Raze
2020-06-12 16:44:14 +02:00
Mitchell Richters
d79a5d256d
- fix joystick scaling for all games.
...
* Repairs https://forum.zdoom.org/viewtopic.php?f=340&t=67239 and https://forum.zdoom.org/viewtopic.php?f=340&t=67933
* Values that come from GZDoom backend are too low to be suitable for the Build games which were dividing by 'analogExtent'.
* Remove definition of analogExtent from all games and define in inputstate.h, then define joyaxesScale as 75% of analogExtent to provide a bit of headroom and not have a scale of 1.0 be full speed.
* Invert the returned results of GetAxes() as the returned floats are reversed for build games.
* Leverage scaleAdjustmentToInverval() on game-side code to consistently scale the input irrespective of frame rate, vsync etc.
2020-06-12 16:44:08 +02:00
Christoph Oelckers
6ececaec40
- include cleanup
2020-06-12 00:43:40 +02:00
Christoph Oelckers
a419181c36
- simplified screenshot code.
2020-06-12 00:39:06 +02:00
Christoph Oelckers
f2d075e0d0
- code cleanup.
2020-06-12 00:37:40 +02:00
Christoph Oelckers
6a9f1e9da1
- removed the old OpenGL interface.
2020-06-12 00:25:52 +02:00
Christoph Oelckers
ba397f5ca1
- always draw floors opaque
2020-06-11 23:55:23 +02:00
Christoph Oelckers
22aad4999c
- use the engine backend to render the scene
2020-06-11 22:26:46 +02:00
Mitchell Richters
76884c1e18
- fix CI build errors in vk_shader.cpp for all platforms due to missing terminator on #ifdef guarded line.
2020-06-11 13:17:12 +03:00
Christoph Oelckers
f92d775ddb
- fixed bad includes.
2020-06-11 09:57:17 +02:00
Christoph Oelckers
a9141af545
- backend update.
2020-06-11 09:15:44 +02:00
Christoph Oelckers
f41e0f9f50
- copied non-x86 compile fix from GZDoom.
2020-06-09 00:13:28 +02:00
Christoph Oelckers
17e1e4175e
- switched NPOT emulation to the renamed uniforms.
...
This was the last feature that needed to be mapped to a GZDoom compatible render state
2020-06-08 08:16:50 +02:00
Christoph Oelckers
5cbe9fc49c
- added NPOT emulation to the backend.
...
This is #ifdef guarded because GZDoom uses the same code base but has no use for this feature.
2020-06-08 08:02:58 +02:00
Christoph Oelckers
a6545788a6
- do RR's lightning flash as a postprocessing effect.
2020-06-07 22:06:47 +02:00
Christoph Oelckers
5330964a7a
- removed redundant initializers.
2020-06-07 15:07:32 +02:00
Christoph Oelckers
d7225c1965
- backend update from GZDoom
2020-06-07 15:02:54 +02:00
Christoph Oelckers
4c6abe1bb9
- pass the shade through the 2D drawer, so that palette emulation can still use it.
2020-06-07 14:50:12 +02:00
Christoph Oelckers
b6d204a88b
- fixed: Weapons are part of the scene and always need to be rendered with the global base palette.
2020-06-07 13:50:41 +02:00
Christoph Oelckers
8da6b8796b
- made presets work again.
...
Two fixes:
* fixed file system setup to mark the last main game resource.
* unbind all keys before loading a preset.
2020-06-07 13:35:23 +02:00
Christoph Oelckers
f2a637418d
- moved palette.cpp out of Build folder.
2020-06-07 13:06:18 +02:00
Christoph Oelckers
3fe4dbed01
- fixed fog translation table generation.
2020-06-07 12:51:26 +02:00
Christoph Oelckers
724c8d4251
- fixed: The full dotted lump filter string was never used.
...
The code added all partial matches to the file system but not the full match.
2020-06-07 11:55:51 +02:00
Christoph Oelckers
f0d208bf56
- fixed compile error.
2020-06-07 10:46:35 +02:00
Christoph Oelckers
9aa2224110
- remove the remains of Lunatic from RR code.
2020-06-07 10:46:22 +02:00
NY00123
a54d408d59
Duke3D: Remove KEEPINSYNC comments referencing LUA code
...
# Conflicts:
# source/duke3d/src/_functio.h
# source/duke3d/src/duke3d.h
# source/duke3d/src/game.h
# source/duke3d/src/global.h
2020-06-07 10:38:55 +02:00
NY00123
ec11d22caf
Use static instead of LUNATIC_EXTERN
...
# Conflicts:
# source/build/include/build.h
# source/duke3d/src/gamedef.cpp
2020-06-07 10:36:43 +02:00
NY00123
6a70389f1d
Let's just use __fastcall instead of LUNATIC_FASTCALL
...
# Conflicts:
# source/build/include/build.h
2020-06-07 10:36:04 +02:00
NY00123
cca922f023
Engine: Adjust krand for removal of LUNATIC
...
# Conflicts:
# source/build/include/build.h
# source/build/src/engine.cpp
2020-06-07 10:35:23 +02:00
NY00123
dba06d9601
Engine: Remove the LUNATIC-specific definitions
...
of engine_main_arrays_are_static, engine_v8 and Mulscale.
# Conflicts:
# source/build/src/engine.cpp
2020-06-07 10:34:33 +02:00
NY00123
3592118e25
source/duke3d/src/actors.h: Remove last remaining mention of the
...
LUNATIC macro in Duke3D. AC_ACTIONTICS and AC_MOVFLAGS are still used.
2020-06-07 10:34:13 +02:00
NY00123
ea06e35025
source/duke3d/src/osdcmds.cpp:osdcmd_spawn: Remove
...
LUNATIC-specific code while defining the two loop vars at once.
# Conflicts:
# source/duke3d/src/osdcmds.cpp
2020-06-07 10:34:12 +02:00
NY00123
40abf17f2f
Duke3D: Remove a few more LUNATIC-specific definitions and macro references
2020-06-07 10:33:53 +02:00
NY00123
db71bb9ba7
source/duke3d/src/gamevars.cpp: Remove LUNATIC definition of ADDWEAPONVAR
...
# Conflicts:
# source/duke3d/src/gamevars.cpp
2020-06-07 10:33:40 +02:00
NY00123
6a4960c774
source/duke3d/src/gamevars.cpp: Remove POSTADDWEAPONVAR, since this
...
is a no-op in non-LUNATIC builds, which will be the only ones to stay.
2020-06-07 10:33:18 +02:00
NY00123
fe020facf9
source/duke3d/src/player.cpp: Remove LUNATIC implementation of
...
G_HandlePal. In fact, let's not use a separate P_HandlePal function.
2020-06-07 10:33:17 +02:00
NY00123
a1bfbb0b21
source/duke3d/src/premap.cpp:P_ResetTintFade: Remove LUNATIC-specific
...
assignment, but keep the function instead of separately setting pals.f.
2020-06-07 10:33:17 +02:00
NY00123
c93ec9e405
source/duke3d/src/network.cpp: Remove LUNATIC-specific code
2020-06-07 10:33:17 +02:00
NY00123
7cf7ccfd05
source/duke3d/src: Remove almost all "#ifdef LUNATIC" blocks.
...
Surrounding "#if !defined LUNATIC"/"#endif" pairs are also covered.
# Conflicts:
# source/duke3d/src/astub.cpp
# source/duke3d/src/cmdline.cpp
# source/duke3d/src/demo.cpp
# source/duke3d/src/duke3d.h
# source/duke3d/src/game.cpp
# source/duke3d/src/game.h
# source/duke3d/src/gamedef.cpp
# source/duke3d/src/gamedef.h
# source/duke3d/src/gameexec.cpp
# source/duke3d/src/gameexec.h
# source/duke3d/src/gamevars.cpp
# source/duke3d/src/gamevars.h
# source/duke3d/src/namesdyn.cpp
# source/duke3d/src/osdcmds.cpp
# source/duke3d/src/premap.cpp
# source/duke3d/src/savegame.cpp
# source/duke3d/src/savegame.h
# source/duke3d/src/sbar.cpp
# source/duke3d/src/screens.cpp
2020-06-07 10:33:16 +02:00
NY00123
1a1039a2d3
Fix a possible jitter upon changing the player's action
...
(e.g., beginning to jump, or landing on ground);
Reproduced with the input being tied to framerate
while SO interpolation is toggled on.
This involves the following modifications:
- PF2_INPUT_CAN_TURN and PF2_INPUT_CAN_AIM are now additionally set
from various DoPlayerBegin* functions, allowing the player to continue
turning/aiming as usual (right before the next call to domovethings),
even in specific instances of player action changes.
- If PF2_INPUT_CAN_TURN/PF2_INPUT_CAN_AIM was set before and
after calling pp->DoPlayerAction from domovethings altogether,
ensure that the player's oq16ang/oq16horiz is updated by
making an appropriate call to DoPlayerTurn/DoPlayerHorizon. This
is done in case a call to DoPlayerTurn/DoPlayerHorizon is missed.
This change is not applied for a dead player, though.
2020-06-07 10:19:49 +02:00
NY00123
039458d14d
sw/src/draw.cpp:drawscreen: Removing the PF_DEAD test
...
in 1a3c9e3a15ba788607dfd96ebcc75a2198be6d69 was a mistake.
The interpolation should still apply, albeit not while
the viewing angle is changed via the player's own input.
We should also continue interpolating in coop view.
2020-06-07 10:19:48 +02:00
NY00123
ce2aee49df
SW: This should hopefully be a better way of fixing the lack of
...
interpolation of player turning/aiming/movement, while being carried
by a sector object, without SO interpolation. This is a continuation of
73a0aa394e906a65633d61f3c749c9b9b7e66aaa and bf31bc2987a3eccd31d343622327bd4ee0f9c5a1,
aiming to fix a jitter in case the player is continuously
getting pushed by a wall (e.g., on the boat in level 5).
Basically, this moves the relevant assignments from track.cpp:MovePlayer
and MovePoints to player.cpp:DoPlayerMove. Unless a call to one of these
functions has been missed, pushwall and clipmove can be called from
player.cpp in the following instances, which should be covered:
- Via DoPlayerMove, which is the function getting the fix now.
- Via DoPlayerSlide, which is called in the beginning of DoPlayerMove.
- Via DoPlayerCurrent when called from DoPlayerCrawl/DoPlayerWade,
followed by DoPlayerMove.
- Via DoPlayerCurrent when called from DoPlayerDive,
followed by DoPlayerMove if the player doesn't stop diving.
# Conflicts:
# source/sw/src/track.cpp
2020-06-07 10:19:48 +02:00
Richard C. Gobeille
a0876223ab
Assignments
...
# Conflicts:
# source/build/src/clip.cpp
2020-06-07 10:17:33 +02:00
Christoph Oelckers
9fc5f2d2e7
- some shader cleanup.
...
I think it's now as close to GZDoom's backend interface as it can be without disabling needed features.
2020-06-07 10:15:31 +02:00
Christoph Oelckers
09e31fd5f4
- disabled sky texture clamping because it never really worked.
2020-06-07 10:14:32 +02:00
Christoph Oelckers
60d7f4f7c2
- got rid of the RF_NPOTEmulation flag.
...
This can easily be controlled with the 2 main variables alone.
2020-06-07 09:30:55 +02:00
Christoph Oelckers
353e3eb1fa
- fixed RRRA E2L1 fog.
2020-06-07 08:24:12 +02:00
Christoph Oelckers
3adfdfcac5
- renamed a few more things in the shader.
2020-06-07 08:16:04 +02:00
Christoph Oelckers
fc466849ce
- disabled demos in blood.
2020-06-06 09:23:44 +02:00
Christoph Oelckers
70ae86aff1
- disabled Blood's demo code because recent changes broke sync to the point where trying to fix it looks like a pointless endeavour.
2020-06-06 07:56:35 +02:00
Christoph Oelckers
232b0c1bb6
- store the lighting related uniforms in a GZDoom-style LightParms vec4.
2020-06-06 00:44:57 +02:00
Christoph Oelckers
f159496f6e
- moved the ShadeDiv array into the lookup table and took the numshades-2 divisor out of the stored value.
...
The value was changed to allow easier reuse in scenarios where the size of the shade table does not matter anymore.
2020-06-05 23:18:21 +02:00
Christoph Oelckers
0bd460d9e3
- split up the visibility factor into a scene specific and an element specific part.
...
The main reason here is that the scene specific part contains a projection dependent component which would be a problem when transitioning to GZDoom's code. The global viewpoint data already has a field for such a factor so now that gets used.
This also means a significant simplification of the visibility code in Polymost and the removal of several global variables.
2020-06-05 19:06:31 +02:00
Christoph Oelckers
9dfd3ddd02
- migration of texture tinting to GZDoom's version.
...
- start of visibility migration - removing unused globvis variable.
2020-06-05 17:02:21 +02:00
Dino Bollinger
f3ed580b82
Prevent tripbombs from being placed at extreme distances.
...
Technically, an overflow is still possible, but with unsigned integers
it is highly unlikely to satisfy (sum_squares < 290*290) in practice.
# Conflicts:
# source/duke3d/src/player.cpp
2020-06-04 21:39:14 +02:00
Jordon Moss
10511c4fee
Fix bad call to updatesector in G_CollectSpawnPoints that broke spawns in overlapping sectors and TROR. p->cursectnum should equal the sprite's sectnum on initial spawn.
2020-06-04 21:38:12 +02:00
Jordon Moss
dd8192ebbf
Fix bad call to updatesector in G_CollectSpawnPoints that broke spawns in overlapping sectors and TROR. p->cursectnum should equal the sprite's sectnum on initial spawn.
2020-06-04 21:38:12 +02:00
Christoph Oelckers
d812c2997c
- start renaming uniforms to match GZDoom.
...
Needed to allow using the same shader with the backend.
2020-06-04 21:34:27 +02:00
Richard C. Gobeille
d92f56f36f
Duke3d: mark compiled CON_MOVE/CON_AI/CON_ACTION with a trailing value
...
This is so I can tell the difference between actor .t_data[] values that are actually set to something defined in CON versus bullshit arbitrary internal usage of the same variable, which I need for a future commit.
2020-06-04 20:20:30 +02:00
Richard C. Gobeille
e353d38665
Duke3d: improve WT FLAMETHROWERFLAME enemy type check
...
I don't expect anyone to make an EDuke32-compatible WT mod where other enemies shoot FLAMETHROWERFLAME, but if they do the behavior will at least be consistent across enemy types.
2020-06-04 20:20:30 +02:00
Richard C. Gobeille
91d9883845
Duke3d: optimize A_RadiusDamage()
...
This results in far fewer calls to getwalldist(), inside(), and cansee(), which should significantly lessen the performance hit from a large number of A_RadiusDamage() calls in areas with many small detail sectors.
# Conflicts:
# source/duke3d/src/actors.cpp
2020-06-04 20:20:29 +02:00
Christoph Oelckers
b15cc31a38
- transitioned matrix setup to use the backend's uniform buffer implementation.
2020-06-04 20:14:48 +02:00
Christoph Oelckers
40f085adea
- draw fullscreen blends with the 2D drawer.
...
Removing one special case of render setup. Now all 2D content is done by the same code.
2020-06-04 18:54:10 +02:00
Christoph Oelckers
cf6855904d
- took projection and view matrix out of the render state.
...
This is a preparation to migrate to GZDoom's HWViewpointUniforms buffer.
2020-06-04 18:46:44 +02:00
Christoph Oelckers
8216d31568
- fixed default for 'modern' in GameStartupInfo.
...
It shouldn't force 1.5 compatibility but enable the CVAR.
2020-06-02 16:59:21 +02:00
Christoph Oelckers
7638ead1c8
- simplified the texture sampler setup.
...
DAMETH_CLAMPED was redundant and only causig problems.
2020-06-02 16:55:02 +02:00
Christoph Oelckers
1b12c08c66
- backend sync
2020-06-02 11:48:48 +02:00
Christoph Oelckers
080333311c
- removed polymost_dorotatespritemodel.
...
Models are inoperable right now anyway so this would never get called, but it does a few things that would cause problems with refactoring the backend code.
2020-06-01 11:28:07 +02:00
Christoph Oelckers
350acd2ac3
- scale the vertex coordinates that get output to the hardware by 1024.
...
This is needed to get a coordinate system that is compatible with GZDoom's so that its lighting code can be reused more easily.
2020-06-01 09:55:28 +02:00
Christoph Oelckers
68c97e3c25
Merge branch 'master' of https://github.com/coelckers/Raze
...
# Conflicts:
# source/core/gamecontrol.h
# source/duke3d/src/game.cpp
# source/exhumed/src/exhumed.cpp
# source/rr/src/game.cpp
2020-05-31 23:30:10 +02:00
Mitchell Richters
f6068043d3
- Remove 'int paused' accidentally added to music.cpp in common back-end.
2020-05-31 23:19:54 +02:00
Mitchell Richters
daa862240d
Blood: Amend how game pauses.
2020-05-31 23:19:54 +02:00
Mitchell Richters
ce48f081fc
Exhumed: Amend how game pauses.
2020-05-31 23:19:54 +02:00
Mitchell Richters
33b6b85d57
SW: Amend how game pauses.
...
- Pausing game with Pause key now works again.
2020-05-31 23:19:54 +02:00
Mitchell Richters
b86d499e0b
RR: Amend how game pauses.
...
- M_Active or GUICapture properly pause game using game's pause mechanisms.
- Pausing game with Pause key now works again.
- Pausing game with Pause key now properly stops all sounds as per upstream.
2020-05-31 23:19:54 +02:00
Mitchell Richters
65265594e5
Duke3D: Amend how game pauses.
...
- M_Active or GUICapture properly pause game using game's pause mechanisms.
- Pausing game with Pause key now works again.
- Pausing game with Pause key now properly stops all sounds as per upstream.
2020-05-31 23:19:54 +02:00
Mitchell Richters
7ed9f4fa8c
Prepare back-end for updated in-game pausing.
2020-05-31 23:19:54 +02:00
Christoph Oelckers
783dff41b6
- fixed clamp mode setup.
2020-05-31 23:08:56 +02:00
Christoph Oelckers
ab2686db34
- camtex transition
2020-05-31 21:43:32 +02:00
Christoph Oelckers
c26b6cdf59
- backend sync with GZDoom.
2020-05-31 21:25:52 +02:00
Christoph Oelckers
bd0c8acd46
- replaced detail matrix with a two element scale vector because that is all that is needed.
2020-05-31 12:23:35 +02:00
Christoph Oelckers
d752e33909
- removed the unused SurfaceShader class.
2020-05-31 11:47:19 +02:00
Christoph Oelckers
9ec66bafa1
- backend update.
...
# Conflicts:
# source/common/textures/animtexture.cpp
# Conflicts:
# source/common/2d/v_2ddrawer.cpp
# source/common/textures/multipatchtexturebuilder.cpp
2020-05-31 10:57:41 +02:00
Christoph Oelckers
611dad7f69
- added the softpoly and Vulkan backend code fron GZDoom.
...
Not hooked up yet.
2020-05-31 10:53:11 +02:00
Christoph Oelckers
2841154683
- moved code around, got a few more utilities from GZDoom.
2020-05-31 10:37:19 +02:00
Christoph Oelckers
1d15fe63a6
- another backend update, pulling in the sky renderer.
2020-05-31 10:32:10 +02:00
Christoph Oelckers
efa1cd3048
- moved video files to 'common'.
...
# Conflicts:
# source/blood/src/screen.cpp
2020-05-31 09:19:16 +02:00
Christoph Oelckers
1e2a3da5fd
- video base code unified.
...
# Conflicts:
# source/core/rendering/v_video.cpp
2020-05-31 09:18:43 +02:00
Christoph Oelckers
edb2cb31ee
- backend update with GZDoom model code.
2020-05-31 08:55:00 +02:00
Christoph Oelckers
7e5c3e066c
- fixed compilation
2020-05-30 23:45:47 +02:00
Richard C. Gobeille
47df8ed855
Duke3d: remove extraneous call to videoNextPage() when handling savegames initiated from CON
...
# Conflicts:
# source/duke3d/src/game.cpp
2020-05-30 23:39:03 +02:00
Richard C. Gobeille
94eda45df9
Duke3d: improve nextsectorneighborz() return value checks
...
Improves the messages printed to console when bailing out of sector effect processing due to nextsectorneighborz() returning -1. This also adds such a check to ST_21_FLOOR_DOOR, which was missing it entirely. (!!)
# Conflicts:
# source/duke3d/src/sector.cpp
2020-05-30 23:38:08 +02:00
sirlemonhead
86f2a7a578
PCExhumed: MoveSector() updates player position variables. Fixes #366
2020-05-30 23:34:26 +02:00
nukeykt
714ed1ecdd
Engine: fix sprite sorting issue that caused broken voxel rendering in polymost
2020-05-30 23:28:41 +02:00