Commit graph

758 commits

Author SHA1 Message Date
Christoph Oelckers
0de3ff81e1 - add wipe transition support to the screenjob runner. 2022-04-26 20:50:37 +02:00
Christoph Oelckers
4e72ea1cfa - Backend update from Raze 2022-04-26 20:50:36 +02:00
Christoph Oelckers
feb65bcb99 - moved wipe code into the backend 2022-04-26 20:50:36 +02:00
Christoph Oelckers
ccdf5fb23c - moved the wipe loop out of d_main.cpp into f_wipe.cpp
As preparation fior fully moving it into the backend
2022-04-26 20:50:36 +02:00
Christoph Oelckers
336c45aaa4 - SCreenjob fixes
Still doesn’r show anything but we got it all set up now.
2022-04-26 20:50:35 +02:00
Christoph Oelckers
7ed8d3b3e2 - screenjob. fixes from Raze 2022-04-26 20:50:35 +02:00
Christoph Oelckers
390bf58698 - first stage of migrating intermissions to screenjobs. 2022-04-26 20:50:35 +02:00
Christoph Oelckers
d994369fd0 - timer code fixes. 2022-04-26 20:50:35 +02:00
Christoph Oelckers
9898ee542c - route all accesses to gameaction from the backend through the sysCallbacks.
gameactions are frontend specific so this needs to be decoupled.
2022-04-26 20:50:34 +02:00
Christoph Oelckers
e5baef837a - text screen helper stuff for cutscene system. 2022-04-26 20:50:34 +02:00
Christoph Oelckers
df0412d634 - a few things may not be static anymore. 2022-04-26 20:50:34 +02:00
Christoph Oelckers
5aaabbeb01 - did some project file cleanup. 2022-04-26 20:50:34 +02:00
Christoph Oelckers
69a7715a02 - added all the prerequisites for the cutscene system from Raze:
* libvpx library
* libsmackerdec
* playmve
* MoviePlayer class.
* ScreenJob engine core.
2022-04-26 20:50:34 +02:00
Kevin Caccamo
ecc0afd2f2 Fix usage of -1 as OBJ model FrameIndex
So that what is said on the ZDoom Wiki (see https://zdoom.org/wiki/MODELDEF#Notes) holds true for OBJ models.
2022-04-24 19:40:08 +02:00
Christoph Oelckers
4aa04f11ce - zip64 handling 2022-04-22 11:10:25 +02:00
Rachael Alexanderson
0fa830ddd7 Revert "- change cvars gl_custompost and gl_customshader to archive and save to .ini since there are uses for these shaders beyond mere debugging."
This reverts commit 2420371c46.
2022-04-21 02:49:39 -04:00
Rachael Alexanderson
991b4725dd Revert "- don't modify gl_customshader cvar in GLES backend; the backend will not show custom shaders anyhow"
This reverts commit ab27d1dd33.
2022-04-21 02:48:07 -04:00
Christoph Oelckers
2f90f49931 - validate the index argument for GetSavegame and abort if out of range. 2022-04-16 22:27:59 +02:00
Christoph Oelckers
c8296f0d7c - cast arguments for fastcos/sinbam
Use xs_Float to ensure proper wraparound which is important here.
2022-04-15 22:31:12 +02:00
Christoph Oelckers
a669d3718f - copy size info from defaults when starting a list menu block. 2022-04-15 22:30:11 +02:00
Christoph Oelckers
c4408d8536 - added a bit of hackery so that compatmode CVAR can be set up on startup 2022-04-12 00:31:31 +02:00
Christoph Oelckers
dfdf330722 - make menu scale adjustments for ultra-wide aspect ratios. 2022-04-12 00:30:43 +02:00
Christoph Oelckers
a97a2ec133 - backend sync with Raze
Nothing really useful here…
2022-04-11 00:26:50 +02:00
Christoph Oelckers
45e7badb71 - avoid passing game structs to common backend code
InitLightmap was using a „FLevelLocals“ pointer, better pass the needed elements separately instead.
2022-04-11 00:01:30 +02:00
Emanuele Disco
71dedf6c87 Fixed GUS Emulation with DMXGUS(C) lump conf.
- changed default value for midi_config to empty string since gus is not working with sf2 file
- fixed SetupDMXGUS not loading lump correctly, wrong use of CheckNumForFullName
- midi_config default to empty string, since lzdoom.sf2 doesn't seem supported (distorted sound)
- added absolute paths to FZipPatReader so we can add custom patches to resource files by using gus_patchdir and/or ULTRADIR variable (some custom maps has custom patches that can be added this way without putting them inside the resource file or in the same folder of the configuration file)
- set timidity_reverb_level min value to 0 in menudef.txt, set to 9 by mistake?
2022-04-09 22:45:31 +02:00
Christoph Oelckers
e0289eb0ac - fixed Font struct export and removed the duplicate handler. 2022-04-07 15:11:50 +02:00
Marisa Kirisame
eeb67bcec3 Use RDTSC equivalent on AARCH64. 2022-03-25 17:01:39 +01:00
Rachael Alexanderson
b9e0473392 - move richpresence into common code to be sync with Raze 2022-03-18 03:36:34 -04:00
Marisa Kirisame
7ba5a74f2e correct preprocessor fall-through for stats.h (linux) 2022-03-15 18:12:53 -04:00
Marisa Kirisame
0937068dad Fix compilation on GCC7. 2022-03-15 18:12:53 -04:00
Marisa Kirisame
9578c23aa1 Use RDTSC on Linux if possible for stats. 2022-03-15 18:12:53 -04:00
Rachael Alexanderson
8fe07f1449 - add steamappid field for DRPC 2022-03-10 00:03:50 -05:00
Rachael Alexanderson
85c432c699 - Discord RPC presence. Adds new IWADINFO and GAMEINFO keys: DiscordAppId - this should point to your AppId for your game. It will use a default GZDoom one if not found. 2022-03-09 22:45:59 -05:00
Rachael Alexanderson
eb6aa9f5d3 - correct the processor fall-through on stats.h 2022-03-08 17:17:09 -05:00
Rachael Alexanderson
ab27d1dd33 - don't modify gl_customshader cvar in GLES backend; the backend will not show custom shaders anyhow 2022-03-07 08:46:45 -05:00
Rachael Alexanderson
28d9fe68ae - add duplication checking to file list, prevent loading the same file twice unless explicitly asked by the user 2022-02-17 01:05:39 -05:00
Chronos Ouroboros
590f45441f - fix the wrong register type being freed when initializing arrays. 2022-02-17 00:19:34 -05:00
nashmuhandes
396bac5e4f - Initialize some variables in FModelVertex::Set
- Fix wrong normal vector in the FModelVertexBuffer constructor

This fixes models having strange flickering when the model animation frame changes
2022-02-14 12:16:45 -05:00
Chronos Ouroboros
238952da35 - fixed local array initialization for const values. 2022-02-13 22:42:15 -05:00
Chronos Ouroboros
2f56ff3833 - fixed local vector array initialization. 2022-02-12 10:44:58 -05:00
Emile Belanger
3ff27b4281 GLES: Fix data buffer resize 2022-02-10 23:46:52 +01:00
Rachael Alexanderson
e7e5bd99fc - fix compiling on Linux/et-al 2022-02-01 12:32:44 -05:00
Rachael Alexanderson
267e714bf1 - implement direct cvar linking to custom shader uniforms 2022-02-01 11:42:55 -05:00
Rachael Alexanderson
95c5449a75 - silence some warning spam in textures.h 2022-01-26 18:30:55 -05:00
Christoph Oelckers
6a92470846 - made a few more names common.
These are needed by the ZScript compiler backend.
2022-01-24 19:05:46 +01:00
Christoph Oelckers
673f06c05f - make m_alloc optional for tarray and memarena 2022-01-24 19:05:46 +01:00
emily
20d16381f8 Add TexMan.SetCameraTextureAspectRatio
Allows ZScript to change the aspect ratio of a camera texture.
2022-01-24 12:18:55 -05:00
Rachael Alexanderson
688e5ac694 Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps-new 2022-01-24 12:10:18 -05:00
drfrag
6112307cc8 - Fix decals in Softpoly.
(partial revert of "- cleanup of the revised y-clamping feature.")
2022-01-24 12:01:34 -05:00
Blue Shadow
fefb0e9702 - make m_quickexit a global CVAR 2022-01-24 12:01:04 -05:00
nashmuhandes
db92e63e22 Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2 2022-01-22 18:06:05 +08:00
Rachael Alexanderson
4c4fafc2c0 - add debug ccmds to manipulate custom postprocess shaders and their uniforms from the console 2022-01-20 22:38:46 -05:00
nashmuhandes
8ea47fdcc3 Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2
# Conflicts:
#	src/common/engine/namedef.h
2022-01-21 01:39:37 +08:00
nashmuhandes
f79bbed130 Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2 2022-01-20 14:19:45 +08:00
Christoph Oelckers
851d058a4b - split up namedef.h into a shared and game specific part and cleaned out many unused names. 2022-01-20 00:14:08 +01:00
Xaser Acheron
25f28c4b50 fix mbf21 A_ConsumeAmmo taking 0 ammo instead of 1 if ammopershot field not set (need to amend the spec for this, argh) 2022-01-18 08:06:29 +01:00
Christoph Oelckers
e6c6471e2f - fixed logic error with depth bias state in hardware renderer. 2022-01-17 00:32:54 +01:00
Christoph Oelckers
84458ddb9f - redid postprocessing shader interface to be free of the player dependency.
This is something that really should be done in higher level code - the shader interface should only concern itself with the shader and not the conditions that block its use.
The Shader class has been redone as a thin wrapper and been deprecated.
2022-01-17 00:07:43 +01:00
Rachael Alexanderson
12ed24d066 - separate i_pauseinbackground and i_soundinbackground - they probably should ultimately be moved out of the sound code 2022-01-15 20:17:11 -05:00
nashmuhandes
57112742fe Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2
# Conflicts:
#	src/common/rendering/gl/gl_shader.cpp
#	src/common/rendering/hwrenderer/data/buffers.h
#	src/common/rendering/v_video.h
2022-01-16 01:57:38 +08:00
Christoph Oelckers
79c9b979d2 - backend update from Raze. 2022-01-11 17:19:16 +01:00
Marisa Heit
a1d0d27278 Make GC::CheckTime 64-bit, just in case. 2022-01-11 13:01:31 +01:00
Marisa Heit
e529f2d4d1 Revert "- be a bit more aggressive with the GC when not running the game loop."
This reverts commit b4d03501af.
2022-01-11 13:01:31 +01:00
Marisa Heit
31549997b4 Fix GC so collection rate is proportional to alloc rate
- Previous comments in dobjgc.cpp suggested that StepMul was used
  to determine how quickly garbage was collected based on how quickly
  memory was being allocated. This was not the case. Now it is.
- Remove calls to CheckGC from the thinkers. With GC running at a
  stable rate (once per frame), there should be no need to inject
  pauses into the collection process to keep it from injecting stutters
  (provided StepMul is sane). The risk of running out of memory because
  we don't run a collection pass absolutely every thinker should be
  practically zero.
- Reduce DEFAULT_GCMUL from 400 to 200, since it does what it says now
  instead of something else.
2022-01-11 13:01:31 +01:00
Christoph Oelckers
64ef03428d - added proper range check to the main sound playing function.
We got a report where this crashed on a bad sound index.
2022-01-07 00:16:30 +01:00
Marisa Kirisame
ee1774e956 Relicense UE1 model loader as MIT.
Match up with the same relicensing that affected umeshtools,
which this loader takes most of its code from.
2022-01-02 18:09:10 +01:00
Christoph Oelckers
e60e6967c0 - whitespace cleanup, updated from Raze. 2022-01-02 12:23:42 +01:00
Christoph Oelckers
3b879c5656 - changed the license of 3 more files free of external contributions to LGPL v2. 2022-01-02 12:08:47 +01:00
Christoph Oelckers
9d2431187d - reverted the license of the stereo3D code to BSD.
None of this was ever put under the GPL by its original author, so it is now back to its original license.
2022-01-02 11:41:32 +01:00
Christoph Oelckers
1c517d19fa - Backend update from Raze.
This is mainly code cleanup from setting the compiler to a stricter warning level.
2022-01-02 11:39:17 +01:00
Major Cooke
bbd91be5d5 Added NoTrim for TEXTURES.
- This can be applied either in or outside of a definition of a sprite.
- Simply adding "NoTrim" inside a definition will apply it.
- Syntax outside of a sprite is `NoTrim <SpriteName>`.
2021-12-14 15:22:01 +01:00
Player701
d0697d9801 - Fixed some issues with the scaling feature of DStatusBarCore::DrawString 2021-11-25 15:42:27 +01:00
Emile Belanger
54ad3433b1 GLES: Load default shader if we try to load user shader to avoid crash 2021-11-21 13:14:02 +01:00
Christoph Oelckers
4530a7b583 - minor optimization to last PR to use a FixedBitArray to reduce stack impact of the check array. 2021-11-21 10:10:58 +01:00
Mitch Richters
b1fea228be - D_ProcessEvents(): Fix bad setup with delayedevents array that was holding pointers to items in the events[] array instead of making a copy. 2021-11-21 10:03:26 +01:00
Mitch Richters
c4f7760ab2 - D_ProcessEvents(): Delay EV_KeyUp events until any EV_KeyDown events for the corresponding key have been processed. This makes the mouse under SDL a lot better. 2021-11-21 10:03:26 +01:00
Rachael Alexanderson
312b5ce66e - add SDL hint to not minimize the window on focus loss 2021-11-19 15:26:04 +01:00
nashmuhandes
2ed99c735d Merge branch 'lightmaps2' of https://github.com/dpjudas/gzdoom into lightmaps2 2021-11-15 02:56:10 +08:00
Magnus Norddahl
8c54015b4b Fix upload and sampling bug for array textures in the vulkan backend 2021-11-14 19:53:10 +01:00
nashmuhandes
879c514120 Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2 2021-11-14 22:01:03 +08:00
Christoph Oelckers
c598d9bab7 - Backend update from Raze.
* TArray extensions
* MSVC setup so that [[deprecated]] emits warnings.
2021-11-12 09:36:46 +01:00
nashmuhandes
9b853dd275 - Remove ALightProbe from the engine (light probes are now stored inside a map's LIGHTMAP lump)
- Recognize the new ZDRayInfo UDMF keywords
2021-11-11 19:21:45 +08:00
nashmuhandes
1b95f2515b Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2 2021-11-10 19:57:49 +08:00
drfrag
5ca3ab3fc9 - Fix abort with dir command and empty string on Windows. 2021-10-30 12:46:36 +02:00
Christoph Oelckers
ce99cda019 - fixed compilation on non-Windows.
In this header we must explicitly use the std:: namespace for min/max.
2021-10-30 11:38:20 +02:00
Christoph Oelckers
77d74a11d1 - removed most templates.h includes. 2021-10-30 10:49:12 +02:00
Christoph Oelckers
eb69bbcae0 - replaced MIN/MAX in common code. 2021-10-30 10:46:17 +02:00
Christoph Oelckers
75c8e0af7c - use the standard library's 'clamp' function instead of our homegrown variant. 2021-10-30 10:21:50 +02:00
Christoph Oelckers
cc617d9085 - Backend update from Raze.
Mostly warning fixes reported by Clang, plus GLES update.
2021-10-30 09:29:21 +02:00
Magnus Norddahl
8e59ed754e Fix vulkan validation errors for wrong image transitions and buffers used after destroyed 2021-10-29 22:38:18 +02:00
nashmuhandes
c2b3600981 Add a render style parameter to Screen.Dim 2021-10-29 21:08:32 +02:00
Magnus Norddahl
d853961a83 Fix vulkan buffers not using the stream usage for the 2d drawer
Add BufferUsageType enum to clarify what kind of usage is expected by the buffer allocated by SetData
2021-10-26 22:43:38 -04:00
alexey.lysiuk
8e1dd7d2c5 - removed obsolete code from Cocoa backend 2021-10-23 13:46:59 +03:00
nashmuhandes
b657478f6f Merge branch 'master' of https://github.com/coelckers/gzdoom into lightmaps2 2021-10-21 20:56:36 +08:00
Rachael Alexanderson
2420371c46 - change cvars gl_custompost and gl_customshader to archive and save to .ini since there are uses for these shaders beyond mere debugging. 2021-10-20 11:23:05 -04:00
nashmuhandes
5c20a5918e Merge branch 'master' of https://github.com/nashmuhandes/gzdoom into lightmaps2 2021-10-20 21:59:37 +08:00
Rachael Alexanderson
bb44f3dcd9 - add cvar r_skipmats - speeds up rendering on slower cards for mods that use a lot of specularity/pbr, effective on both the opengl and vulkan backends 2021-10-20 06:49:45 -04:00
nashmuhandes
ab3146054b Fixed: SBar_DrawTextureRotated was missing the angle parameter 2021-10-19 11:44:34 +02:00
alexey.lysiuk
8ec6c21195 - fixed deprecation warnings in Cocoa backend 2021-10-18 11:03:34 +03:00
alexey.lysiuk
b85282fe5e - disabled nullability warnings in Vulkan memory allocator 2021-10-18 10:27:03 +03:00