Commit graph

463 commits

Author SHA1 Message Date
Christoph Oelckers
feb3520ee9 - added m_swapbuttons CVAR for the Windows RawInput and DirectInput backends.
The problem I discovered is that these backends do not respect the GUI-side system setting for swapping the buttons, so this needs to be done in-application so that swapped buttons can behave the same in the menu and the game.
2021-02-26 10:37:55 +01:00
Gutawer
73dc528112
- fix some crashes in the Shape2D VBO code due to unsound pointer usage (#1318) 2021-02-25 10:49:41 -05:00
Rachael Alexanderson
d6987ff6b2 Revert "Dynamic number of models per frame instead of a hard limit of four. (#1298)"
This reverts commit 769d60a64f.
2021-02-25 09:58:17 -05:00
Cacodemon345
a531c9c35f
Properly abort the program if the SDL window can't be created at all (#1296) 2021-02-24 15:27:42 -05:00
Chernoskill
769d60a64f
Dynamic number of models per frame instead of a hard limit of four. (#1298)
* Changed model-related arrays to TArrays.

* Update models.cpp

Used TArray.Alloc to make TArrays have the correct size depending on the number of models. 
surfaceSkinIDs was two-dimensional and is now a one-dimensional TArray as well, it's size is now (models * MD3_MAX_SURFACES)
surfaceSkinIDs was two-dimensional and is now a one-dimensional TArray as well, elements are accessed via [Row + Column * NumRows], in this case sSurfaceIndex + modelIndex * MD3_MAX_SURFACES]

* Edited skinSurfaceIDs access for one-dimensional TArray

* Edited skinSurfaceIDs access for one-dimensional TArray

* Edited skinSurfaceIDs access for one-dimensional TArray

* Changed model-related arrays to TArrays.

Also removed MAX_MODELS_PER_FRAME.

* Used TArray.Alloc to make TArrays have the correct size depending on the number of models. 

surfaceSkinIDs was two-dimensional and is now a one-dimensional TArray as well, elements are accessed via [Row + Column * NumRows], in this case surfaceIndex + modelIndex * MD3_MAX_SURFACES]

* Used TArray.Alloc to make TArrays have the correct size depending on the number of models. 

surfaceSkinIDs was two-dimensional and is now a one-dimensional TArray as well, elements are accessed via [Row + Column * NumRows], in this case surfaceIndex + modelIndex * MD3_MAX_SURFACES]

* Update models.h

* Edited MAX_MODELS_MD3

* Update models_obj.cpp
2021-02-24 15:26:47 -05:00
alexey.lysiuk
e6810620cd - restored sound-related developer messages
https://forum.zdoom.org/viewtopic.php?t=71486
2021-02-20 11:00:12 +02:00
Erick Vasquez Garcia
65b0047b26 SoftPoly: Fixed the md3 models, you can now correctly display the frame of the model, in addition, interpolation is added to the model.
This error is mentioned by drfrag in the following link https://forum.zdoom.org/viewtopic.php?f=336&t=71228
2021-02-20 09:14:18 +01:00
dondiego
395fc28e12
SoftPoly: Fixed the screen turning white with invulnerability sphere in Doom and in Heretic avoiding color errors in some pixels when activating the "ring of invincibility". (#1307)
Co-authored-by: Erick Vasquez Garcia <erickv5394@gmail.com>
2021-02-18 23:37:53 -05:00
Player701
387abf81a0
- Added a new intrinsic for class pointers to check if the class is abstract (#1308) 2021-02-18 11:17:23 +01:00
Erick Vasquez Garcia
78c0ec0470 - Fixed sprites were not affected by dynamic lights on SoftPoly. 2021-02-16 08:27:02 -05:00
Raccoon
59fcf45222
Add Warnings for when PNG loads fail due to unsupported flags (#1302)
This was the result of an issue which stumped the entire Discord, which led to me having to debug from source to find why some relatively standard publicly available PBR materials work.  GZDoom is the ONLY program in the typical development stack (GIMP, Slade, UDB) with this narrow of support for the PNG format. As such, the average developer will have no other way to figure out what's going wrong without these: these CANNOT be allowed to fail silently.  As things like PNG-compression and 64-bit color become more common in royalty-free PBR materials, support should be an eventual target.  Even then, these warnings should remain to prevent this from being an issue the next time things change.
2021-02-12 19:37:18 +01:00
Christoph Oelckers
c9ed4293f7 - backend update from Raze. 2021-02-12 14:40:34 +01:00
Magnus Norddahl
7e68223794 Add support for zero size buffers as the hwrenderer uses that!
Also add a sanity check on zero size textures just in case that ever happens!
2021-02-12 06:38:26 -05:00
Cacodemon345
f2469c6dcf Change _access to _waccess 2021-02-12 09:07:09 +01:00
Cacodemon345
349a2e9235 Fix crash when trying to open unreadable IWAD files 2021-02-12 09:07:09 +01:00
alexey.lysiuk
6bc82bdeff - fixed incorrect extension of overridden function prototype
Prototype of overridden function with optional argument(s) missing could extend unrelated prototype of previously defined function when their arguments and return value(s) match

https://forum.zdoom.org/viewtopic.php?t=71340
2021-02-12 08:42:57 +01:00
alexey.lysiuk
e0e0fb0d8f - fixed uninitialized global rolloff in sound engine
Depending on SNDINFO definitions, type of global rolloff could left uninitialized, and linear rolloff might be treated as logarithmic

https://forum.zdoom.org/viewtopic.php?t=70248
2021-02-08 11:50:00 +02:00
Christoph Oelckers
917eb2b5e3 - fixed: FTextureManager::ReplaceTexture did not calculate the upscale flags. 2021-02-07 09:19:56 +01:00
alexey.lysiuk
74685a1360 - added detection of more x86 extended CPU instructions
Replaced report of 3DNow support with recent fancy CPU instructions
2021-02-06 16:56:59 +02:00
alexey.lysiuk
6d47d79e22 - removed useless x86.h #include's 2021-02-06 15:01:08 +02:00
alexey.lysiuk
d9a5c00cd4 - cleaned x86 CPU detection of obsolete code 2021-02-06 15:01:08 +02:00
alexey.lysiuk
a7e97daa86 - added detection of a few x86 extended CPU instructions
i hope this will make some people a bit happier
2021-02-06 15:01:08 +02:00
Gutawer
aad50cb218 - fix alpha (and other parameter properties) not reuploading the buffer on Shape2D 2021-02-06 06:49:20 -05:00
Cacodemon345
3c5f5f392f Add progress bar for SDL backend 2021-02-02 03:32:40 -05:00
alexey.lysiuk
9bd07e5c83 - improved JIT simple frame error message
https://forum.zdoom.org/viewtopic.php?t=71340
2021-01-31 14:47:33 +02:00
Rachael Alexanderson
ad66063354 - oops this was not supposed to be in master
Revert "- failed attempt at automap line thickness"

This reverts commit 9651dd3a48.
2021-01-31 06:24:43 -05:00
Rachael Alexanderson
b9e37ff0f4 Merge branch 'master' of https://github.com/coelckers/gzdoom 2021-01-29 22:52:33 -05:00
Rachael Alexanderson
9651dd3a48 - failed attempt at automap line thickness 2021-01-29 22:52:28 -05:00
Christoph Oelckers
f108a106c9 - backend update from Raze. 2021-01-29 13:54:18 +01:00
Rachael Alexanderson
c783b9dce9 - 21:9 improvements
- vid_aspect is now set to change to 21:9's ACTUAL aspect - 64:27
- screen elements now scale to 64:27 properly. to restore classic behavior, set cvar `vid_allowtrueultrawide` to false
2021-01-17 11:41:36 -05:00
Rachael Alexanderson
efa788cd5e - remove erroneous assert in the ZScript codegen compiler
- fixes issue #1279
2021-01-17 10:58:44 -05:00
Marisa Kirisame
44b4359ba5 Add alternate "Full" mode for PowerIronFeet that prevents leaky damage. 2021-01-16 17:09:57 +01:00
William E. Waterman
3261eb3643
Side By Side Letterbox Display mode (#1255)
* Added SBSLETTERBOX to menudef.txt

* Changed PresentSideBySide in gl_renderer

Needed for new side-by-side mode

* Added VR_SIDEBYSIDELETTERBOX to gl_stereo3d.cpp

For side by side letterbox display mode

* Added VR_SIDEBYSIDELETTERBOX to hw_modes.h

For new side by side letterbox display mode

* Added VR_SIDEBYSIDELETTERBOX to hw_vrmodes.cpp

For Side By Side Letterbox display mode
2021-01-13 07:09:13 -05:00
Chronos Ouroboros
d8164e0050 - Fix the "Max" constant being incorrect for unsigned int types. 2021-01-06 15:50:58 -03:00
alexey.lysiuk
1767fdfe7a - extended operating system information with os-release's pretty name
https://www.freedesktop.org/software/systemd/man/os-release.html
2021-01-02 14:59:31 +02:00
Rachael Alexanderson
6089c34558 - oops forgot to add this file 2021-01-02 07:47:25 -05:00
Gutawer
276cdde112
Modify Shape2D so that it manages its own vertex buffer rather than using the draw list (#1249)
* - modify Shape2D so that it manages its own vertex buffer

* - fix the last commit failing on Shape2Ds that were modified after AddShape was called

* - make buffers an array of F2DVertexBuffers instead of an array of pointers

* - fix AddShape with the same VBO but different transformation crashing the game

* - formatting fixes
2021-01-02 07:41:32 -05:00
Rachael Alexanderson
e917cd0a2c - oops, fix previous commit, that wasn't meant to be in there 2021-01-01 22:44:36 -05:00
Rachael Alexanderson
54fba4d642 - windows: create stub functions for the crash logger for ARM. this invites the possibility, hopefully, that if someone is inclined, to actually make one. it also cleans up the code a little bit for intel. 2021-01-01 20:52:18 -05:00
alexey.lysiuk
499df03821 - removed limitation on number of descriptor set layout bindings
https://forum.zdoom.org/viewtopic.php?t=70955
2021-01-01 14:46:24 +02:00
Cacodemon345
0dda8733db
Print name of OS on POSIX systems when using SDL
#1265
2020-12-31 14:48:48 +02:00
Christoph Oelckers
423fe60080 - fixed: strbin did not check for a terminating 0-character right after an escaping backslash. 2020-12-11 11:22:07 +01:00
Rachael Alexanderson
64ff15b82b
Squashed commit of the following: (#1248)
commit bbfb934e808c6602d3a059adf270e997b71b900c
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Sun Dec 6 23:50:15 2020 -0500

    - and now it builds! but ... does it run?

commit 67096c8966f28dcff40c998d10e5510d6a689a13
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Sun Dec 6 22:25:13 2020 -0500

    - one more step closer to compile

commit 5a0c84dd2d3e1798e7a99f4ec1696f678708f0e6
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Sun Dec 6 22:13:39 2020 -0500

    - set up dynamic opengl load for windows

commit 6ef8118b801f305000ce881a4b04aaaef0196226
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Sat Dec 5 16:38:53 2020 -0500

    - allow compiling for win-arm64

commit 7d6f3797c4393fa7b0ed567b94d1de135ecb5ac6
Author: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Date:   Fri Dec 4 05:18:29 2020 -0500

    - allow targeting ARM64 on Windows

Co-authored-by: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
2020-12-10 09:16:28 -05:00
Gutawer
f223005584 - fix keyboard repeat events not being sent to menus if TranslateKeyboardEvents is true 2020-12-09 16:20:42 -03:00
makise-homura
10c682acf6 Change type of ops[] to deal with goto *p for EDG compilers 2020-11-30 09:26:16 +02:00
Chris Robinson
51adcd45e6 Simplify manual sound rolloff handling 2020-11-25 16:26:38 +01:00
Christoph Oelckers
9925cc380e - backend update from Raze. 2020-11-23 15:45:33 +01:00
Christoph Oelckers
58d8ce1a4f - cleanup of m_fixed.h.
With fixed point math barely being used anywhere with the vast majority of calls in the software voxel drawer it makes sense to reduce the function interface to the minimum possible and move the shift value into the function call as an argument.
2020-11-22 10:25:04 +01:00
alexey.lysiuk
38d29c235b - fixed incorrect autosegs section addresses on macOS
It appeared that getsectbyname() returns address stored in executable header as is, i.e. without adjusting it for ASLR
2020-11-14 12:16:51 +02:00
alexey.lysiuk
18b5928f49 - eliminate dependency on linking order for autosegs registration 2020-11-13 11:03:16 +02:00