drfrag666
bc2b82b1fb
- Fixed 'thread' attribute directive ignored warning with gcc.
2018-04-23 17:49:32 +02:00
drfrag666
f04a1cb497
- Added USE_SSE2 compile option for gcc.
2018-04-22 22:41:03 +02:00
drfrag666
05b453d2a9
- Fixed missing manifest for MinGW.
2018-04-22 19:25:36 +02:00
drfrag666
54e8bf74ce
- Restored dependency on dxguid library for MinGW.
2018-04-22 18:50:12 +02:00
drfrag666
2a41088fb6
- Partially reverted Blzut3's patch to gl_framebuffer.h. It was no longer applicable.
2018-04-22 14:22:17 +02:00
drfrag666
6844f20081
- Don't use secure directory creation for mingw32.
2018-04-22 12:37:07 +02:00
drfrag666
799e623377
- Fixed compilation with gcc 5.1. (patch by Graf)
2018-04-22 11:55:36 +02:00
drfrag666
354388f224
- Missing formatting macro definitions for MinGW.
2018-04-22 11:49:10 +02:00
drfrag666
2c5e37499d
- Fixed zdoom.rc for MinGW.
2018-04-22 11:04:14 +02:00
drfrag
9727484190
- Applied Blzut3's patches to compile with MinGW.
2018-04-22 10:08:00 +02:00
drfrag
ad5959b827
- Applied some Blzut3 patches to compile with MinGW.
2018-04-22 09:50:38 +02:00
drfrag666
86a22d8cce
- Fixed improved crash handling in drawers not compiling with mingw32.
2018-04-22 00:11:34 +02:00
Christoph Oelckers
387827555f
- added compatibility handler for Alien Vendetta MAP01 to properly display the deep water hack and avoid problems with a node rebuild.
2018-04-11 23:08:59 +02:00
Christoph Oelckers
3aea82797c
- removed the parser for complex compatibility settings, now that this can be done via scripting.
2018-04-11 19:21:02 +02:00
Christoph Oelckers
3988e27059
- scriptified the last remaining definition (BTSX MAP12 beta)
...
- Changes to map geometry must force a node rebuild (SetVertex, SetLineSectorRef.)
- fixed incorrect use of scaling constant in SetWallYScale.
2018-04-11 19:10:15 +02:00
alexey.lysiuk
6631f208b1
Scriptified remaining compatibility entries
2018-04-11 17:01:57 +03:00
alexey.lysiuk
950443683b
Scriptified compatibility of more Heretic levels
2018-04-11 12:35:45 +03:00
Christoph Oelckers
0ecbf07769
-ported a large part of compatibility.txt
2018-04-10 23:19:22 +02:00
Christoph Oelckers
9daad477c3
- some improvements to compatibility scripts:
...
* use names, not strings, to allow use of switch/case.
* avoid creating the checksum a second time per level.
* do an early-out check for maps that do not have scripted compatibility.
2018-04-09 22:09:28 +02:00
alexey.lysiuk
640948703f
Level compatibility via ZScript -- PoC
2018-04-09 17:54:12 +03:00
drfrag666
80f57dfaf0
- Increased size of the savegame comment area.
2018-04-08 21:56:35 +02:00
Marisa Kirisame
8ff81c93e8
Fix building on GCC7.
2018-04-08 21:53:20 +02:00
Marisa Kirisame
08f3afab0b
Separated P_ActivateLine ZScript export into two functions, one with and one without a vector parameter.
2018-04-08 21:53:20 +02:00
Marisa Kirisame
5d0ff4c8ba
Exports P_ActivateLine to ZScript (along with constants for activation type)
2018-04-08 21:53:20 +02:00
Christoph Oelckers
7c70e0971c
- disabled the survey code.
...
This survey is now closed and new input no longer needed.
2018-04-08 20:51:19 +02:00
alexey.lysiuk
cb3650ed9e
Added message for absent explicitly referenced dialog file
2018-04-07 12:52:38 +03:00
alexey.lysiuk
3239a9eaa6
Added loading of ZSDF lumps by full paths
...
https://forum.zdoom.org/viewtopic.php?t=60139
2018-04-07 12:43:10 +03:00
alexey.lysiuk
7bd281ddc9
Added zero initialization of implicit dynamic array items
...
https://forum.zdoom.org/viewtopic.php?t=60111
2018-04-05 12:22:41 +03:00
Magnus Norddahl
b1d33d1bba
- Fix mid texture rendering for self-referencing sector lines
2018-04-05 01:40:58 +02:00
alexey.lysiuk
b6f184491b
Restored vanilla behavior of lightning for original Hexen
...
https://forum.zdoom.org/viewtopic.php?t=60103
2018-04-04 16:46:01 +03:00
alexey.lysiuk
2e7d196f8b
Fixed crash when vid_setmode CCMD is used from command line
...
It's impossible to validate video mode at such early stage of initialization
Added sanity check for mode's width and height as well
https://forum.zdoom.org/viewtopic.php?t=59990
2018-04-04 11:46:14 +03:00
alexey.lysiuk
c70f9cf833
Reintroduced discarding of custom IWAD duplicates
...
Detection of duplicated IWADs now works the same for embedded and custom IWADINFO definitions
https://forum.zdoom.org/viewtopic.php?t=58333
2018-04-02 16:16:47 +03:00
alexey.lysiuk
4de9597006
Fixed detection of .ipk7 custom IWADs
2018-04-02 15:32:00 +03:00
alexey.lysiuk
ac7e5def32
Forbade dynamic array as the return type of a function
...
Compiler ignored this case silently but it crashed during code generation
2018-04-02 15:18:30 +03:00
alexey.lysiuk
5df5e2abe7
Fixed excessive growth of ACS string pool
...
This fixes usage of uninitialized variable in ACSStringPool::PoolEntry objects
The initial version (before 66d15dc
) increased pool size by one entry and assign all its members right after that
The improved version reserved MIN_GC_SIZE entries but didn't initialize anything except the first one
ACSStringPool::FindFirstFreeEntry() cannot find the proper entry as it uses PoolEntry::Next member for list traversal
It's enough to initialize Next member with FREE_ENTRY value because other fields will be assigned anyway inside ACSStringPool::InsertString()
https://forum.zdoom.org/viewtopic.php?t=60049
2018-04-01 16:27:08 +03:00
alexey.lysiuk
ff96980dda
Fixed handling of default values in String.Mid()
...
https://forum.zdoom.org/viewtopic.php?t=60047
2018-03-31 21:45:20 +03:00
alexey.lysiuk
b36fc82fff
Removed check for duplicate IWADs
...
Skipping of duplicate IWADs seems to serve a cosmetic purpose only but it caused troubles with custom IWADs
https://forum.zdoom.org/viewtopic.php?t=58333
2018-03-31 15:34:55 +03:00
alexey.lysiuk
ca0e39cd0c
Added ability to load any IWAD without extension
...
Previously, only .wad files can specified without file extension for -iwad command line option
For example, -iwad square1 will load square1.pk3 as IWAD
2018-03-31 15:32:28 +03:00
alexey.lysiuk
17bc9c3f69
Fixed handling of default value in Actor.Vec3Angle()
2018-03-31 11:46:06 +03:00
ZippeyKeys12
0441994106
Default newradius in A_SetSize
2018-03-30 18:06:46 -05:00
alexey.lysiuk
709bbe3db0
Fixed crash on accessing player sprite's state in software renderer
...
https://forum.zdoom.org/viewtopic.php?t=60034
2018-03-30 16:40:31 +03:00
alexey.lysiuk
408a2f6dab
Fixed uninitialized members in DPSprite class
...
https://forum.zdoom.org/viewtopic.php?t=60034
2018-03-30 16:38:51 +03:00
alexey.lysiuk
140ad241c4
Adjusted validation limit for sound velocity again :(
...
https://forum.zdoom.org/viewtopic.php?t=59979
2018-03-30 10:42:22 +03:00
Vitaly Novichkov
74c5bab075
Attempt to fix a blank banks list of ADLMIDI
...
That happen because of silly dependency on soundfonts list which is totally unneeded to ADLMIDI as it uses embedded banks or external banks in a different format.
https://forum.zdoom.org/viewtopic.php?f=104&t=59997&p=1047184
2018-03-29 23:39:15 -04:00
alexey.lysiuk
b952653303
Set more suitable limit for sound velocity validation
...
https://forum.zdoom.org/viewtopic.php?t=59979
2018-03-29 17:37:36 +03:00
alexey.lysiuk
cbad9ac219
Fixed crash when event handler class isn't derived from StaticEventHandler
2018-03-29 16:41:29 +03:00
Wohlstand
2d79d187d5
OPNMIDI: Remove std:: from all snprintf calls
2018-03-28 20:37:55 +03:00
Wohlstand
6a497a0b92
ADLMIDI: Update latest update of DMXOPL3 bank by @sneakernets
...
And a small polishing of bank names to keep the informative, but much shorter
2018-03-28 20:34:28 +03:00
Wohlstand
99e24efc2c
ADLMIDI: Remove std:: from all snprintf-s
2018-03-28 20:33:02 +03:00
alexey.lysiuk
fdd93d704d
Merged list of video modes for Cocoa and SDL backends
...
https://forum.zdoom.org/viewtopic.php?t=59990
2018-03-28 15:12:07 +03:00
Vitaly Novichkov
38156b9243
ADL&OPL: Added a fallback for a blank instruments in GS/XG banks
2018-03-27 07:36:07 +02:00
Marisa Kirisame
19b701728d
Typo fix in linetrace flags checking.
2018-03-26 22:00:17 +02:00
Christoph Oelckers
3c3c2f03e8
The missing parts of last commit.
2018-03-26 20:44:25 +02:00
Christoph Oelckers
7c333b1fd1
- changed the default settings for fluid_patchset, timidity_config and midi_config to point to the default sound font.
...
wildmidi_config has not been changed because it cannot read .sf2 files.
2018-03-26 20:43:44 +02:00
Christoph Oelckers
d166ab95a9
Revert "- fixed: 3D floor that extend into the real sector's floor were not clipped properly."
...
This reverts commit a33ad3c99e
.
Turns out that this breaks legitimate maps. So I'd rather let that one broken map glitch than the good ones.
2018-03-26 19:44:41 +02:00
Christoph Oelckers
f8019637cf
- fixed: FBuildTexture::CopyTrueColorPixels returned incorrect transparency information
2018-03-26 11:46:33 +02:00
Christoph Oelckers
755cbd341b
- fixed: A sprite having a picnum was not animating its image in the hardware renderer.
2018-03-25 22:01:18 +02:00
alexey.lysiuk
75a65873e7
Fixed applying of unsafe context in waiting command
...
https://forum.zdoom.org/viewtopic.php?t=59947
2018-03-25 22:38:38 +03:00
Christoph Oelckers
e89a598b31
- renamed FTexture's UseType flags and gave them a dedicated type.
...
This was done mainly to reduce the amount of occurences of the word FTexture but it immediately helped detect two small and mostly harmless bugs that were found due to the stricter type checks.
2018-03-25 20:26:16 +02:00
Christoph Oelckers
5c7f2e0217
- removed some dumb CMake script that messed around with Visual Studio's user settings.
2018-03-25 17:51:23 +02:00
Christoph Oelckers
c0893027da
- added a band-aid fix in case Timidity has both chorus and reverb active.
...
This merely addresses the crashing issue, it does nothing about the faulty initialization logic here that causes the chorus not to get initialized properly if reverb is active.
The issue needs more in-detail investigation but for now this has to suffice.
2018-03-25 12:12:14 +02:00
Christoph Oelckers
4c4f8288a4
- disable XP toolset warning for 64 bit builds.
...
- fixed an error with assigning a string constant to a non-const char * variable that was pointed out by compiling with /permissive-.
2018-03-25 10:50:14 +02:00
Vitaly Novichkov
27b9b67d68
ADL&OPN: More setup: Chips count and Volume model!
...
Notes:
* ADL: The DMX volume model was set as default to unify volumes on all bank. Otherwise, if you will use 'Generic' or 'Win9x', the sound will became too loud than wanted. Each bank has own default volume model which is used when 'Auto' is set.
* ADL: 6 chips is optimal to work with default banks
* OPN: 8 chips are set to provide 48 polyphony channels. (each OPN2 chip has 6 channels only)
* Text files: junk spaces from end of lines are was auto-removed.
2018-03-25 08:14:35 +02:00
Vitaly Novichkov
f7e45b06b7
Fixed double-increment and use a safer way to fetch a bank names
...
(in case of new bank will be added (or removed) on ADLMIDI side, no need to change the count of banks in "some deep place" of code)
2018-03-25 08:14:35 +02:00
Vitaly Novichkov
79d7067f07
Fixed typo in the error message: it's YM2612 is OPN2 which is not OPL
2018-03-25 08:14:35 +02:00
Rachael Alexanderson
3e31b89929
- corrected 2 spelling errors and added a linebreak with a really long line for the stats prompt
2018-03-25 00:35:57 -04:00
Vitaly Novichkov
a60dc64e71
ADL&OPN: Fix long
vs int64
conflict in 'CalcChGoodness'
2018-03-25 01:37:44 +03:00
Vitaly Novichkov
6e6d1b5e97
Merge branch 'master' of git@github.com:coelckers/gzdoom.git
2018-03-25 01:20:31 +03:00
Christoph Oelckers
95d7101e26
- stats sending message.
2018-03-24 23:16:21 +01:00
Christoph Oelckers
a33ad3c99e
- fixed: 3D floor that extend into the real sector's floor were not clipped properly.
...
The only check being done on this was done after processing for the renderer which simply is too late.
2018-03-24 22:42:10 +01:00
Vitaly Novichkov
d202ef9e68
Merge branch 'master' of git@github.com:coelckers/gzdoom.git
...
# Conflicts:
# src/sound/opnmidi/opnmidi_private.hpp
2018-03-25 00:41:11 +03:00
Vitaly Novichkov
15e133afb9
ADLMIDI & OPNMIDI: Little clean and MSVC warnings muting
2018-03-25 00:38:26 +03:00
Christoph Oelckers
73f9300c2b
- disable MSVC warnings in OPNMidi.
2018-03-24 21:53:37 +01:00
Vitaly Novichkov
5acffa693f
Merge branch 'master' of git@github.com:coelckers/gzdoom.git
...
# Conflicts:
# src/sound/adlmidi/adlmidi.cpp
2018-03-24 23:51:36 +03:00
Vitaly Novichkov
be1b884a04
OPNMIDI: Natively disable embedded MUS and XMI, and MIDI sequencer
2018-03-24 23:46:05 +03:00
Vitaly Novichkov
0816018d36
ADLMIDI: Another warning fix
2018-03-24 23:33:39 +03:00
Christoph Oelckers
77a2101c06
- re-applied my changes to ADLMIDI code:
...
* disable sstream. No point pulling in such a large piece of code for two error messages.
* disable MSVC warnings which get emitted by the code.
2018-03-24 21:30:59 +01:00
Vitaly Novichkov
e31830e8be
ADLMIDI: Tiny warning fix
2018-03-24 21:26:30 +01:00
Vitaly Novichkov
be81e00722
ADLMIDI: Added built-in ability to disable unneeded MUS and XMI converters
...
Also embedded MIDI sequencer has been disabled too as it is not needed in GZDoom
I made that to allow easier updates of ADLMIDI into newer versions without of any future troubles and conflicts
2018-03-24 21:26:30 +01:00
Vitaly Novichkov
c65a004e08
ADLMIDI: Tiny warning fix
2018-03-24 23:19:50 +03:00
Christoph Oelckers
4e012e3765
- fill in the ADL bank menu from the internal table. Some of the names had to be shortened to prevent it from getting too confusing.
2018-03-24 21:19:10 +01:00
Vitaly Novichkov
b6302f5fc9
ADLMIDI: Added built-in ability to disable unneeded MUS and XMI converters
...
Also embedded MIDI sequencer has been disabled too as it is not needed in GZDoom
I made that to allow easier updates of ADLMIDI into newer versions without of any future troubles and conflicts
2018-03-24 22:45:54 +03:00
Christoph Oelckers
49ab99a383
Merge branch 'master' of https://github.com/coelckers/gzdoom
2018-03-24 19:40:52 +01:00
Christoph Oelckers
b8f2d1fc06
- better CVAR control for Timidity++ reverb.
2018-03-24 19:40:39 +01:00
Christoph Oelckers
4978d979e8
- fixed Windows version of snd_mididevice.
...
- removed mus2mis and xmi2mid converters from OPNMidi, because they are not needed.
- moved the data file for OPNMidi into gzdoom.pk3.
2018-03-24 18:29:12 +01:00
Christoph Oelckers
8aeb6531be
Merge branch 'opnMIDI' of https://github.com/Wohlstand/gzdoom into opnmidi
2018-03-24 17:10:50 +01:00
Marisa Kirisame
0656916bf2
Add WorldLinePreActivated to override line activation, as a counterpart to WorldLineActivated.
2018-03-24 16:30:49 +01:00
Vitaly Novichkov
6308fb311b
Added support for libOPNMIDI Playing device
2018-03-24 17:58:47 +03:00
Vitaly Novichkov
46942cb27f
Added libOPNMIDI sources
2018-03-24 17:52:52 +03:00
alexey.lysiuk
a4bee610b4
Added runtime warning about usage of unsupported OpenAL implementation
...
https://forum.zdoom.org/viewtopic.php?t=59920
2018-03-24 15:00:36 +02:00
alexey.lysiuk
c4b3dcf266
Fixed indent of OpenAL initialization messages
...
Tab characters should not be used for indenting messages in console
2018-03-24 14:53:47 +02:00
alexey.lysiuk
4f6a853bfb
Added validation of sound position and velocity
...
https://forum.zdoom.org/viewtopic.php?t=57632
2018-03-24 13:09:55 +01:00
Christoph Oelckers
da74b9df95
- serialize the temporary music volume that can be set through ACS.
2018-03-24 13:07:18 +01:00
alexey.lysiuk
40bf8a421e
User's OpenAL library has precedence over Apple's framework
...
https://forum.zdoom.org/viewtopic.php?t=59920
2018-03-24 12:09:23 +02:00
Marisa Kirisame
3072c9bf7c
Add PostUiTick(). Happens after all other tickers. Useful for handling changes in the play side within the same tic.
2018-03-24 10:24:13 +01:00
Marisa Kirisame
69c6e95b08
Add worldlineactivated event, triggered after successful line activation.
2018-03-24 10:23:31 +01:00
Jason Francis
bd7791ad9c
Allow setting string user variables in ACS
2018-03-24 10:20:39 +01:00
Jason Francis
4494b18e8a
Enable string & float user_ properties in UDMF things
2018-03-24 10:20:39 +01:00
alexey.lysiuk
2951476ce0
Fixed compilation with GCC and Clang
...
src/v_video.h:56:6: error: ISO C++ forbids forward references to 'enum' types
src/v_video.h:342:17: error: field has incomplete type 'FTextureFormat'
src/v_video.h:344:47: error: variable has incomplete type 'FTextureFormat'
2018-03-24 09:53:55 +02:00
Marisa Kirisame
634a10db52
Adds "DI_MIRROR" flag to statusbar image drawing. Useful for rearview mirror camera textures, for example.
2018-03-24 00:29:50 +01:00
Christoph Oelckers
7301001a3f
- made the necessary adjustments to the HW2D interfaces to handle alpha textures properly.
...
These cannot be done with the regular textures so there needs to be an option to create more than one native texture per FTexture. For completeness' sake there is also the option now to create a paletted version of a texture if the regular one is true color. This fixes a long standing problem that translations were not applied to non-paletted textures.
2018-03-23 23:04:30 +01:00
Christoph Oelckers
3c6b09b3a1
Merge remote-tracking branch 'remotes/origin/adlMIDI' into alphatex2
2018-03-23 19:53:06 +01:00
Christoph Oelckers
1c9b08dd44
Merge remote-tracking branch 'remotes/origin/master' into alphatex2
2018-03-23 19:52:48 +01:00
Christoph Oelckers
4c781a8f65
- finished verification of proper texture generation and fixed a few remaining issues.
...
Aside from PCX 4 bit, uncompressed PCX and TGA grayscale for which I was unable to obtain test images, all others now produce proper textures in both 8 and 32 bit mode.
2018-03-23 19:52:08 +01:00
alexey.lysiuk
836b09c933
Added third-party sound headers to CMake generated project
2018-03-23 12:47:37 +02:00
Vitaly Novichkov
4f104b0da9
Fixed incorrect pitch processing in the ADLMIDI
2018-03-23 00:35:20 +01:00
Christoph Oelckers
0a07f4c144
- fixed alpha texture generation for OpenGL rendering.
...
The old logic used a translation table that does not work with color images, it was designed to handle 8 bit grayscale images.
So now, it creates a true color buffer and then turns it into a texture with R,G,B = 255 and the alpha channel set to the grayscale value.
This was also the reason why crosshairs made from 32 bit PNGs did not show correctly.
2018-03-22 23:57:14 +01:00
Christoph Oelckers
5466e2c7c5
- fixed what looks like a wrongly braced 'for' loop in 4 bit PCX.
...
The code looks wrong, unfortunately I cannot test it due to lack of an image in that format
2018-03-22 23:14:43 +01:00
Christoph Oelckers
6fcf1e0149
- fixed incorrect translation table that was used to process grayscale patch and IMGZ textures.
...
- fixed: The MD5 check for patches deleted the buffer too early.
2018-03-22 22:49:42 +01:00
Christoph Oelckers
c869df9bf7
- added missing checksum file.
...
- fixed decoding of uncompressed DDS textures.
Apparently this was never tested and nobody ever used this format as a texture in ZDoom.
2018-03-22 22:30:09 +01:00
Christoph Oelckers
702e948000
Merge remote-tracking branch 'remotes/origin/adlMIDI' into alphatex2
2018-03-22 20:44:32 +01:00
Christoph Oelckers
d586d774cf
- adjusted GL renderer to the new rules for alpha textures. This means that the translation fallback is only needed for the legacy renderer now. Modern GL can use the regular texture and will apply a grayscale mapping instead of merely using the red channel.
2018-03-22 20:42:17 +01:00
Rachael Alexanderson
0893f0c01e
Merge remote-tracking branch 'origin/master' into adlMIDI
2018-03-22 14:28:54 -04:00
Vitaly Novichkov
4481ebbdd2
Fixed an incorrect ADLMIDI playback
...
As DMX uses both 10'th and 16'th channels for percussions, I'll turn a 16'th channel into percussive by XG way on every init/reset.
2018-03-22 04:30:10 -04:00
Christoph Oelckers
1756035594
- fixes in DDS decoder.
...
- let FPatchTexture use the inline color getters.
2018-03-22 00:54:03 +01:00
Christoph Oelckers
b473838627
- adjustments and fixes for alphatextures:
...
* Instead of using the red channel it now uses the grayscale value. While slower in a few situations, it is also more precise and makes the feature more useful.
* For paletted textures do not use the index as alpha anymore but the actual grayscaled color. This is again to make the feature more consistent and useful.
* To compensate for the above there is now a list of hashes for known alpha textures in patch format, so that they don't get broken.
* IMGZ is now considered a grayscale format. There's only two known textures that use IMGZ for something else than crosshairs and those are explicitly handled.
* several smaller fixes.
* the actual color conversion functions for paletted output are now consolidated in a small number of inlines so that future changes are easier to do.
Note: This hasn't been tested yet and will need further changes in the hardware rendering code. As it is it is not production-ready.
2018-03-22 00:29:01 +01:00
alexey.lysiuk
de0a815215
Fixed error reporting on loading malformed DeHackEd patches
2018-03-21 13:08:16 +02:00
alexey.lysiuk
92f10febe8
Fixed crash on loading malformed DeHackEd patches
...
Lump that contains only "Patch File for DeHackEd v3.0" (without line break at the end) caused a crash
2018-03-21 13:03:44 +02:00
drfrag
88bebaec39
- Fixed not getting the 'old and unsupported DeHackEd patch' error message for some old patch versions.
2018-03-21 12:48:46 +02:00
alexey.lysiuk
d58169f1b0
Fixed crash with very short music loop
...
https://forum.zdoom.org/viewtopic.php?t=59883
2018-03-21 12:28:12 +02:00
Rachael Alexanderson
fae6f22a2b
- fix botched merge
2018-03-21 03:50:47 -04:00
Rachael Alexanderson
d829e53bc0
Merge branch 'stats_native_ui' of https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/d_stats.cpp
2018-03-21 02:28:52 -04:00
Rachael Alexanderson
4ad769572f
- bump stats version string, send stats to new stats script instead
2018-03-20 22:02:18 -04:00
Rachael Alexanderson
def0ea0103
Merge branch 'stats_native_ui'
...
# Conflicts:
# src/d_stats.cpp
2018-03-20 22:00:30 -04:00
alexey.lysiuk
568d439c24
Removed deleted virtual functions
...
This solves linking errors on macOS with missing ___cxa_deleted_virtual symbol
2018-03-20 22:12:43 +02:00
Christoph Oelckers
b0c96ac43d
- fixed uninitialized variables in files.h.
2018-03-20 18:29:54 +01:00
alexey.lysiuk
f242f0631b
Fixed crash in when MP3 length guesstimation failed
...
https://forum.zdoom.org/viewtopic.php?t=59881
2018-03-20 18:01:35 +02:00
alexey.lysiuk
6f68b6c352
Fixed JPEG errors reporting
...
GCC/Clang reported these warnings:
src/textures/jpegtexture.cpp:305:29: warning: data argument not used by format string [-Wformat-extra-args]
src/textures/jpegtexture.cpp:388:28: warning: data argument not used by format string [-Wformat-extra-args]
src/textures/jpegtexture.cpp:432:29: warning: data argument not used by format string [-Wformat-extra-args]
src/textures/jpegtexture.cpp:481:28: warning: data argument not used by format string [-Wformat-extra-args]
2018-03-20 10:29:28 +02:00
Magnus Norddahl
09c0bed74f
- Oops, last commit had its check inverted
2018-03-20 01:29:43 +01:00
Magnus Norddahl
5f4e4d859e
- Fix netgame freeze situation
2018-03-20 01:28:25 +01:00
Christoph Oelckers
cf67883e6a
- changed copyright notice.
2018-03-19 21:01:32 +01:00
Christoph Oelckers
16f6a88680
- fixed Build tiles and removed test code.
2018-03-19 20:56:04 +01:00
Christoph Oelckers
bf2003fe6a
- fixed pixel address.
...
Colors still need work.
2018-03-19 20:09:32 +01:00
Christoph Oelckers
04b8a12ca4
- Build texture work. Currently broken.
2018-03-19 20:02:38 +01:00
Christoph Oelckers
f4d9ad1123
- extended FTexture::GetPixels and FTexture::GetColumn by a RenderStyle parameter.
...
Now it is no longer necessary to provide specially set up textures for rendering shaded decals, they can use any PNG texture now that contains a proper red channel.
Handling of the alPh chunk has been removed as a result as it in no longer needed.
2018-03-18 21:33:44 +01:00
Christoph Oelckers
a399d79f8a
- minor reformatting.
2018-03-18 14:18:42 +01:00
Christoph Oelckers
47bfbb5e08
- Make BuildTexture inherit from worldtexture.
...
- handle WorldTextures that can change their content automatically.
2018-03-18 14:18:19 +01:00
Christoph Oelckers
94eadb1a8c
- made it compile again.
2018-03-18 13:47:40 +01:00
Christoph Oelckers
de8db297a6
- made the backdrop texture also inherit from FWorldTexture.
...
In this case the only benefit is one less piece of GetColumn duplication - this texture is simply not usable in-game, unlike the BarShader.
2018-03-18 13:12:25 +01:00
Christoph Oelckers
494504229f
- fixed the BarShader texture.
...
Even though unlikely, this should work as a regular texture because it can be used as such.
As a result of the above, true color generation needs to be done explicitly now.
2018-03-18 12:54:40 +01:00
Christoph Oelckers
1d59a53cd4
- added worldtexture.cpp
2018-03-18 12:54:14 +01:00
Christoph Oelckers
7e169eb76f
- split out the span generation from most texture classes
...
Until now each subclass of FTexture had to implement the entire span generation itself, presumably so that a few classes can use simpler structures.
This does not work if a texture can have more than one pixel buffer as is needed for alpha textures.
Even though it means that some classes will allocate more data now, it's the only way to do it properly.
In addition this removes a significant amount of mostly redundant code from the texture classes.
- added alpha texture processing to all converted classes
As of now this is not active and not tested.
Note that as part of the conversion even those textures that were working as alphatextures will not look correct until the higher level code gets adjusted.
2018-03-18 12:36:14 +01:00
alexey.lysiuk
832fc42e07
Added native UI dialog to confirm stats collection
2018-03-18 13:26:04 +02:00
Christoph Oelckers
102d2647d3
- removed support for loading Build palettes as the main game palette.
...
This was implemented in a way that made it entirely impossible to load Build resources and make them usable for modding.
ZDoom had Build texture support for many years but the limitations the palette handling imposed made it impossible to use them.
It wasn't usable for anything more than to load Build maps and have them display properly - a feature that had to be removed because it was irreparably broken already.
With the forced palette override out of the way it should now be possible to implement loading of Build ART files as actually usable resources.
2018-03-18 11:57:41 +01:00
alexey.lysiuk
341a9bcf91
Added target and last enemy to linetarget CCMD output
...
https://forum.zdoom.org/viewtopic.php?t=59716
2018-03-18 11:23:24 +02:00
alexey.lysiuk
75782e6b34
Exported Inventory.AltHUDIcon field to ZScript
...
https://forum.zdoom.org/viewtopic.php?t=59842
2018-03-18 11:02:21 +02:00
alexey.lysiuk
ecff13ac2e
Fixed crash on attempt to send stats without network connection
...
https://forum.zdoom.org/viewtopic.php?t=59844
2018-03-17 22:38:41 +02:00
Magnus Norddahl
a2b9a70835
- Fix crash when reloading a map
2018-03-17 00:09:43 +01:00
alexey.lysiuk
9a737a0622
Added ability to turn off sending of stats in CMake configuration
2018-03-16 16:04:43 +02:00
alexey.lysiuk
a9802f82f4
Replaced usages of sprintf() in stats sender
2018-03-14 22:19:33 +02:00
Christoph Oelckers
f1bfc3514d
- fixed: For proper recognition of optional function arguments, the argflags must also be copied from the parent function to ensure they are itdentical on the override.
2018-03-14 19:52:30 +01:00
Rachael Alexanderson
549a290a2f
- add 'renderconfig' for the stats script to easily differentiate between OpenGL and software
2018-03-14 11:40:47 -04:00
alexey.lysiuk
bdeae23a56
Added native UI dialog to confirm stats collection
...
Implemented only for Windows so far
Need good message to explain purpose of this feature
2018-03-14 10:20:46 +02:00
Christoph Oelckers
49f590c797
- Use the Windows system function to determine the number of physical CPU cores.
...
The generic version does not appear to work as intended.
2018-03-13 20:04:41 +01:00
Rachael Alexanderson
d83456e9cc
- fixed: stats checker was not actually checking if it was being run in WOW64 mode
2018-03-13 09:34:38 -04:00
raa-eruanna
251f0c8459
- add one more missing include to make GCC happy
2018-03-12 22:39:50 -04:00
Marisa Kirisame
fb5eae8aaa
Added some missing zlib.h and stdint.h includes
2018-03-12 21:06:03 -04:00
Christoph Oelckers
fed7286442
- p_glnodes.cpp must include zlib.h
2018-03-12 22:45:49 +01:00
Christoph Oelckers
5fccdd9acd
- added missing return to translation code.
...
- a bit of header cleanup.
* moved <zlib.h> and <bzlib.h> from files.h to files_decompress.cpp because they are no longer needed for defining the interface.
* added <functional> to the precompiled header
2018-03-12 21:18:11 +01:00
Christoph Oelckers
5a4e9decd9
- added missing #include
2018-03-12 19:33:49 +01:00
Rachael Alexanderson
fbc4831072
- remove empty Mac I_HTTPRequest prototype since it's not used
2018-03-12 19:33:49 +01:00
Christoph Oelckers
f2f649bf77
- put all stats related code into one file.
2018-03-12 19:33:48 +01:00
Rachael Alexanderson
033a11a028
- fix compile on clang
...
- implement TCP connections in Linux
- fix passing of request string to a thread
- implement OS stats for ARM and PPC on Linux
2018-03-12 19:33:48 +01:00
Christoph Oelckers
d2fa4d0ff9
- most stat stuff done.
2018-03-12 19:33:48 +01:00
Rachael Alexanderson
c15e868b0f
- implemented anonymous stats collector
2018-03-12 19:33:48 +01:00
Christoph Oelckers
5d436cd3ed
- forward the error state of the translation parser to the calling code so that it can print a message pointing to the problem content.
2018-03-12 19:14:56 +01:00
Christoph Oelckers
73248e7f86
- added a missing nullptr check in Instruments::free_soundfonts()
2018-03-12 18:55:05 +01:00
Christoph Oelckers
13ef97c4ac
- removed debug message.
2018-03-12 18:47:49 +01:00
Major Cooke
4851c5bfde
Insert an extra line after printing the warnings.
2018-03-12 18:17:08 +01:00
Christoph Oelckers
c85389c976
Re-fixed 95d74614
...
This should be dealt with at the source, not one level up, so that it also works properly if the GetReader function of the ResourceFile object is called directly and not through the resource manager.
2018-03-12 10:26:36 +01:00
Christoph Oelckers
3cf1959070
Merge branch 'master' of https://github.com/coelckers/gzdoom
2018-03-12 10:19:23 +01:00
Christoph Oelckers
def5e1d61b
Added proper handling for default parameter values of virtual overrides
...
Due to how the VM handles default parameters, these must always be identical to the parent to prevent undefined behavior.
So now, if such parameters are encountered, the compiler will either abort (for script version >= 3.3) or print a warning (for older versions.)
Any defaults being specified for older versions will be ignored, though, and the defaults of the parent function be copied to the override.
2018-03-12 10:19:16 +01:00
alexey.lysiuk
e0f7c99496
Fixed crash on loading directories
2018-03-12 11:00:40 +02:00
Christoph Oelckers
c01554c6c8
- feeding another one to Travis CI...
2018-03-11 23:32:40 +01:00
Christoph Oelckers
54061ad50c
- another one.
...
This would be easier if Travis CI didn't abort compilation after each single error...
2018-03-11 23:25:30 +01:00
Christoph Oelckers
011bf9d9aa
- another one...
2018-03-11 22:44:05 +01:00
Christoph Oelckers
b72ccba5f5
- missed one bit.
2018-03-11 22:17:50 +01:00
Christoph Oelckers
8c0925dd5d
- fixed some compile errors which were only reported on GCC/Clang.
2018-03-11 22:05:28 +01:00
Christoph Oelckers
b445347aca
Merge branch 'master' of https://github.com/coelckers/gzdoom
2018-03-11 19:30:06 +01:00
Christoph Oelckers
b939836846
- renamed FileRdr back to FileReader.
2018-03-11 19:29:37 +01:00
Christoph Oelckers
0be1ed252b
- rewrote the operator>> methods of FileReader as normal functions for clarity.
2018-03-11 18:20:49 +01:00
Christoph Oelckers
833dbee167
- fixed some issues with m_swap's design.
...
The native byte order converters were defined as macros which hid some issues due to lack of type checks.
Additionally the ???Long variants taking 'long' variables were removed, because longs are not always 32 bits so this could be destructive.
As a result of this, removed several DWORDs from struct definitions in i_crash.cpp.
2018-03-11 14:35:36 +01:00
Christoph Oelckers
8bbfd39f42
- fixed some remaining issues:
...
* initial positioning in a subsection of a file failed. This mainly affected music playback.
* made the FileRdr constructor which takes a FileReaderInterface private so that everything that needs it must be explicitly declared as friend.
* removed a few redundant construction initializers for FileRdrs.
* loading compressed nodes needs to check the validity of its reader.
* use GetLength to detemine the size of a Zip file instead of doing another seek to the end.
* removed duplicate Length variables.
2018-03-11 13:26:30 +01:00
Christoph Oelckers
b14ee50d0d
- transition to new FileReader interface complete, but untested.
2018-03-11 12:33:46 +01:00
Christoph Oelckers
247785bca2
- converted map loader to FileRdr and took the opportunity to clean up its interface.
2018-03-10 21:48:33 +01:00
Christoph Oelckers
6f8ca2eace
- fixed a few issues from implicit FileReader conversion.
2018-03-10 20:47:17 +01:00
Christoph Oelckers
b315bc3be0
- added a few more FileRdr replacements
...
- fixed: The streaming music player must return the file reader if it fails to open, so that the next player can still use it.
- fixed: Timidity++'s Instruments class did not delete the sound font when it was destroyed.
..-
2018-03-10 20:33:49 +01:00
Christoph Oelckers
56991a9ace
- Removed FileReader from SoundFont manager.
...
- renamed close_file to tf_close for consistency.
2018-03-10 20:10:17 +01:00
Christoph Oelckers
c4387459bb
- use FileRdr in the PNG code, in particular to sanitize the savepic handling.
2018-03-10 19:22:26 +01:00
Christoph Oelckers
5fa63c396d
- sound code and most of texture code converted to FileRdr.
...
This allowed to remove a lot of bad pointer voodoo in the music loader, because the new class does not allow duplication of the reader object
2018-03-10 18:45:11 +01:00
Rachael Alexanderson
37fa3fa25e
- add variables 'am_unexploredsecretcolor' and 'am_ovunexploredsecretcolor' to mark undiscovered secrets differently in the automap
2018-03-10 10:36:43 -05:00
Christoph Oelckers
26e948357e
- added an abstract FileReader wrapper.
...
The idea here is to decouple the actual reader creation from the code using them so that, for example, the Open function can decide if it wants to open the file regularly or memory mapped and return different readers as deemed useful. For that to work the exposed object needs to be an abstract wrapper so that this can be done without having to use pointers and all the drawbacks coming from that.
So far put to use in a few parts of the music code so the general functionality could be tested.
2018-03-10 13:46:35 +01:00
alexey.lysiuk
9cd5b415c1
Improved profilethinkers in various ways
...
Added features:
* Formatted table
* Average time per one actor
* Sorting column highlight
* Rows limit
* Usage help
2018-03-10 11:04:31 +02:00
alexey.lysiuk
fc981bf5d4
Extended profilethinkers CVAR with sorting ability
...
Sorting modes are
1 - by name, from A to Z
2 - by name, from Z to A
3 - number of calls, ascending
4 - number of calls, descending
5 - total time, ascending
anything else - total time, descending
2018-03-09 18:13:16 +02:00
alexey.lysiuk
f5d5430804
Added ability to build without thread_local support
...
https://forum.zdoom.org/viewtopic.php?t=58043
2018-03-09 12:53:41 +02:00
Magnus Norddahl
2589447d0e
- fixed midtex nowrap clipping bug when 3d floors are in view
...
- made sure no code uses sclipTop or sclipBottom as a working variable
2018-03-09 01:30:47 +01:00
alexey.lysiuk
53a9819283
Disabled GCC loop vectorization for R_LoadKVX() function
...
This prevents crash (unaligned memory access by SSE instruction) on loading voxels in Release (-O3) builds
https://forum.zdoom.org/viewtopic.php?t=59656
2018-03-08 12:24:33 +02:00
alexey.lysiuk
7f17121df8
Fixed crash in MIDI to wave writer
2018-03-08 11:38:02 +02:00
alexey.lysiuk
cea64ea092
Moved old Nuked and Java OPL3 to own namespaces
...
This helps to avoid clashing of OPL3 classes
2018-03-08 10:18:49 +02:00
alexey.lysiuk
114e56b334
Moved old NukedOPL to own namespace
...
This fixes linking issues on non-MSVC targets and improves code navigation
2018-03-08 09:51:37 +02:00
alexey.lysiuk
15138c38ca
Improved organization of ADLMIDI files in CMake generated projects
2018-03-08 09:49:51 +02:00
Magnus Norddahl
6ab58e56ad
- fix simplify code slightly
2018-03-08 04:25:27 +01:00
Magnus Norddahl
71623198d2
- remove fake3D with structs and localize their usage instead of sharing global state
2018-03-08 04:05:35 +01:00
Magnus Norddahl
7cb4deabdd
- get rid of FAKE3D_REFRESHCLIP and fix holes in 3d floors with wrapped midtextures
2018-03-08 01:28:23 +01:00
Magnus Norddahl
a55be25a9d
- add const qualifier on top/bottom clip arrays usage
2018-03-08 00:55:37 +01:00
Christoph Oelckers
2d2d44baad
- integrated ADL as a proper device in the MIDI device list.
...
- resorted the MIDI device menu option by device types (i.e. all SW synths first, FM synths second)
- allow setting the ADL bank.
2018-03-07 21:20:25 +01:00
Christoph Oelckers
fd801b8b94
Merge branch 'adlMIDI'
...
# Conflicts:
# src/sound/musicformats/music_midistream.cpp
2018-03-07 20:31:32 +01:00
alexey.lysiuk
e51a1867df
Added default values for BaseStatusBar.AttachMessage() arguments
2018-03-07 16:00:08 +02:00
alexey.lysiuk
81bc05b7c5
Added support for default values of arguments with uint type
2018-03-07 15:58:06 +02:00
Christoph Oelckers
9b61ee9618
- fixed: The MIDI wave writer set the sample rate to save at too late.
...
This was done after the players had already been created. To ensure that everything gets set properly it is necessary to pass the desired sample rate to the device's constructor and let it make sure that a proper sample rate gets set.
2018-03-06 22:41:27 +01:00
alexey.lysiuk
72831c9db7
Fixed archiving of CVARs with default values
...
https://forum.zdoom.org/viewtopic.php?t=59701
2018-03-06 22:46:18 +02:00
Christoph Oelckers
4d4edcfbfb
- fixed setup for Timidity++ playback frequency.
2018-03-06 19:52:29 +01:00
alexey.lysiuk
4b7e57b007
Fixed selection of soundfont with spaces in its name
2018-03-06 13:05:38 +02:00
Christoph Oelckers
774a7773a4
Merge branch 'master' of https://github.com/coelckers/gzdoom
2018-03-05 20:39:34 +01:00
alexey.lysiuk
adae6c19b8
Made left button down event available to UI event handler
...
Main menu is no longer triggered in game on left mouse button press when handler is processing UI events
https://forum.zdoom.org/viewtopic.php?t=59673
2018-03-05 16:53:17 +02:00
alexey.lysiuk
3e9de3788d
Fixed spelling of MissileShootersActivateImpactLines MAPINFO property
...
https://forum.zdoom.org/viewtopic.php?t=59686
2018-03-05 15:02:39 +02:00
alexey.lysiuk
77e1a1d289
Replaced usages of fluid_settings_getstr() function
...
This function is deprecated since FluidSynth 1.1.9 and removed in upcoming 2.x
2018-03-05 12:31:50 +02:00
alexey.lysiuk
ac47166894
Fixed freeze after saving game when cl_waitforsave CVAR set to false
...
Restored assertions that help to spot incorrect usage of I_FreezeTime() function
https://forum.zdoom.org/viewtopic.php?t=59672
2018-03-04 15:11:45 +02:00
alexey.lysiuk
d0ec6ef1d4
TiMidity++ now loads SF2 soundfont with spaces in path
2018-03-04 13:09:29 +02:00
alexey.lysiuk
d802abec5b
Fixed initialization of search paths on macOS
...
IWAD directories previously set in user configuration file led to inconsistent file and soundfont search paths
2018-03-04 11:06:11 +02:00
alexey.lysiuk
8145b52037
Added explicit fallback to default soundfont
...
With no soundfonts found the game crashed on startup
Local UNIX build had the same issue because $PROGDIR/soundfonts is not in search path
2018-03-03 15:17:30 +02:00
alexey.lysiuk
4053e18835
Allowed CVARs to be set in unsafe context
...
CVAR values set in unsafe context are not written to user configuration file
This does not affect mod's CVARs
https://forum.zdoom.org/viewtopic.php?t=59484
2018-03-03 10:26:28 +01:00
Christoph Oelckers
2541bd93fc
- made DHUDMessageBase non-abstract.
2018-03-03 09:52:34 +01:00
Marisa Kirisame
069c5aa90a
Fix accidentally removed SectorPlane assignment. Added missing HitVector support.
2018-03-03 09:30:06 +01:00
Marisa Kirisame
bc4a8190bf
Fix incorrect HitTexture reassignment in LineTrace.
2018-03-03 09:30:06 +01:00
Marisa Kirisame
4cc8ba3399
Export GetSector() again, removed lightingdata assignment.
2018-03-03 09:26:11 +01:00
Marisa Kirisame
f55bad472c
Removed some garbage changes
2018-03-03 09:26:11 +01:00
Marisa Kirisame
053d9f4a44
Export sector effect pointers, fix missing pointer assignment on Lighting effect creation.
2018-03-03 09:26:11 +01:00
Christoph Oelckers
4f68b78c3b
- removed an unchecked fixed size buffer in the KEYCONF parser.
2018-03-03 09:14:33 +01:00
Christoph Oelckers
b327aa737a
Merge remote-tracking branch 'remotes/origin/materials'
2018-03-03 08:54:04 +01:00
Christoph Oelckers
e1bb14803e
- print an error message if the requested MIDI device cannot be started.
...
This will only be done the first time a given setup fails. Repeated messages will be muted.
2018-03-03 08:52:25 +01:00
Christoph Oelckers
4c0f68bcd4
Merge branch 'master' into timidity++
...
# Conflicts:
# src/sound/musicformats/music_midistream.cpp
2018-03-02 00:08:12 +01:00
Christoph Oelckers
bc25ad4136
- fixed a small logic error introduced by fixing the translucent particle sorting.
...
Due to an unintended swap of two values a few equal comparisons led to incorrect sorting.
2018-03-01 17:10:21 +01:00
Christoph Oelckers
bcc8972356
- fixed: A preincrement of a local variable generated wrong code if passed as a function parameter.
...
Due to the special nature of this expression the code generator got stuck in 'address' mode and passed the address of the variable instead of its value.
2018-03-01 15:00:18 +01:00
Christoph Oelckers
685e5c1e95
- fixed: Camera textures must always be drawn with texture mode opaque, because the contents of their alpha channels are undefined.
2018-03-01 13:52:23 +01:00
Christoph Oelckers
b39cb4f095
- fixed translucemt sorting for particles.
...
At least on any semi-modern hardware. On old legacy hardware which lacks some important features this will still glitch.
2018-03-01 13:01:26 +01:00
Christoph Oelckers
bb16e34bf4
- exposed the HUD message interface to ZScript.
...
Note that this is just the bare abstract interface. It is up to content makers to define usable HUD message classes and optionally contribute them to the engine.
2018-03-01 11:45:19 +01:00
Christoph Oelckers
dd893b6a0c
- split off the interface part of DHUDMessage into an abstract base class.
...
The purpose is to allow creating custom message types in ZScript.
2018-03-01 10:33:03 +01:00
alexey.lysiuk
711471e9dd
Fixed potential crash during state validation
...
https://forum.zdoom.org/viewtopic.php?t=57116
The problem was caused by missing state label in conjunction with incomplete class
actor A : ArmorBonus
{
Inventory.ForbiddenTo "Missing"
}
actor B : Pistol
{
states
{
TNT1 A 0
Loop
}
}
2018-03-01 11:08:38 +02:00
InsanityBringer
bba3027d37
Add option to use Rotation-Center for an actor's normal pitch/angle/roll rotation.
2018-03-01 08:43:59 +01:00
Magnus Norddahl
48e534bf19
- Add per-pixel model light to the OpenGL 3.3 render path
2018-03-01 01:27:12 +01:00
Magnus Norddahl
6652df40c1
Merge remote-tracking branch 'gzdoom/master' into materials
2018-02-28 22:12:12 +01:00
Christoph Oelckers
425f1408f7
- fixed skip_super application fro ZScript.
...
The order of processing is different here so when the property gets parsed there are no states to delete.
To fix this the property just flags the class and lets the ZScript state compiler deal with this as needed.
2018-02-28 18:10:04 +01:00
alexey.lysiuk
56df88c792
Use 64-bit fixed point for node builder's vertex map
...
https://forum.zdoom.org/viewtopic.php?t=59368
2018-02-28 16:36:14 +01:00
Christoph Oelckers
e70250425a
- fixed: For two-sided midtextures the light lists were always taken from the sector referenced by the rendered sidedef, not the sector in which the line gets renderered.
...
For polyobjects these two are not identical.
2018-02-28 13:15:04 +01:00
Christoph Oelckers
910a3062c7
- fixed some problems with the stepping up through a portal logic:
...
* this has to be disabled for missiles which should explode instead of stepping up.
* interpolation adjustment was not correct
* it could crash because the target portal group could be retrieved from a non-portal sector.
2018-02-28 10:12:10 +01:00
Christoph Oelckers
e55bbd7ba3
Merge branch 'master' of https://github.com/coelckers/gzdoom
2018-02-28 09:46:59 +01:00
Christoph Oelckers
4ccbc4ea9e
- Send a GM reset SYSEX event when music playback is started.
2018-02-28 09:46:28 +01:00
Major Cooke
7ac8b496f1
Added Distance(2/3)DSquared functions.
2018-02-28 09:28:11 +01:00
Christoph Oelckers
af14609de7
- don't skip empty arrays which are themselves array elements in the ZScript serializer.
2018-02-27 15:42:22 +01:00
Christoph Oelckers
aaaf9aa108
Added 'TeleportSpecial' as an alias for 'Teleport' in ZScript to deconflict from the Actor.Teleport function.
2018-02-27 12:44:00 +01:00
Christoph Oelckers
d873ae75ab
- silence all error messages in the state map parser for DEHSUPP when re-reading the data.
...
The state map will just be skipped and the parser only needs to run to get over the data.
However, due to changes from a previous patch the data cannot be validated so aside from not using the data it may also not abort on errors.
2018-02-27 11:34:44 +01:00
Christoph Oelckers
fd27b22857
- use iswspace to classify whitespace in V_BreakLines.
...
isspace does not work because it is limited to 8-bit character sets.
2018-02-27 11:10:47 +01:00
Christoph Oelckers
9a8e724761
- added a compatibility setting for Perdition's Gate MAP31 which was having render issues with an unsupported vanilla effect.
2018-02-27 09:53:15 +01:00
Christoph Oelckers
eb124f6160
- made the sound font loading a bit more error resistant.
...
- implemented a fallback both for sound font lookup and for MIDI device selection so that if some non-working combination is set up, the player will fall back to something that works.
2018-02-26 16:36:30 +01:00
alexey.lysiuk
d45a50b0db
Put soundfont to appropriate folder so it can be found by default
2018-02-26 16:45:01 +02:00
alexey.lysiuk
6bc2be1ca4
Fixed GCC 6+ compilation error
...
In file included from /usr/include/c++/6/math.h:36:0,
from src/vectors.h:43,
from src/sound/i_soundinternal.h:7,
from src/sound/i_sound.h:39,
from src/sound/i_musicinterns.h:5,
from src/sound/timidity/timidity.cpp:36:
/usr/include/c++/6/cmath:407:11: error: ‘::pow’ has not been declared
2018-02-26 14:46:24 +02:00
alexey.lysiuk
22819e640a
Fixed GCC 4.9 compilation error
...
src/sound/timiditypp/instrum.cpp:45:26: error: array used as initializer
2018-02-26 14:00:29 +02:00
alexey.lysiuk
4fdf488960
Fixed MSVC compilation warning
...
VC\include\type_traits(1468): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\musicformats\music_midistream.cpp(832): note: see reference to function template instantiation 'std::function<bool (int)>::function<MIDIStreamer::SetMIDISource::<lambda_...>,int,void>(_Fx)' being compiled
2018-02-26 13:22:36 +02:00
alexey.lysiuk
14802c0547
Fixed GCC compilation error
...
src/sound/timiditypp/reverb.h:467:6: error: declaration of ‘TimidityPlus::lfo TimidityPlus::<anonymous struct>::lfo’ [-fpermissive]
src/sound/timiditypp/reverb.h:61:8: error: changes meaning of ‘lfo’ from ‘struct TimidityPlus::lfo’ [-fpermissive]
2018-02-26 13:10:32 +02:00
Christoph Oelckers
64354df3c6
- another 'variadic argument' error due to MSVC letting it slip through.
2018-02-26 10:57:35 +01:00
Christoph Oelckers
f405d630df
- Redid CVar synchronization for Timidity++.
2018-02-26 09:55:04 +01:00
Christoph Oelckers
47dbbeb65a
Revert "- don't let the Timidity++ player directly access the CVARs."
...
This reverts commit 8f7a503561
.
# Conflicts:
# src/sound/timiditypp/playmidi.cpp
Something in here wasn't working as intended, and since it needs better synchronization let's redo it entirely.
2018-02-26 09:19:10 +01:00
Christoph Oelckers
36e8358763
- use submenus for soundfont selection both for better overview and avoiding a music restart for each selection change.
2018-02-26 08:52:40 +01:00
Christoph Oelckers
918d188263
- This shouldn't have been committed.
2018-02-25 16:15:24 +01:00
Christoph Oelckers
67a6ec01e1
- added a separate section for soundfont search paths.
2018-02-25 09:32:05 +01:00
Christoph Oelckers
2ac101fa51
- removed tmpfileplus, which was only used by the old Timidity++ player.
2018-02-24 23:01:55 +01:00
Rachael Alexanderson
07f168a58b
- additional check for tween-tic particle rendering, prevents jitter with timefreeze powerup
2018-02-24 16:04:20 -05:00
Christoph Oelckers
8f7a503561
- don't let the Timidity++ player directly access the CVARs.
...
This may cause problems because the player runs in a different thread than the input code.
Instead the play thread will now copy their values to local variables when it starts generating output.
2018-02-24 19:36:09 +01:00
Christoph Oelckers
27f9330c81
- reimplemented thr OPL dumoer for MIDI.
2018-02-24 18:55:42 +01:00
Christoph Oelckers
a5316c211d
- Moved the MIDI WAVE writer device to its own source file.
2018-02-24 18:25:04 +01:00
Christoph Oelckers
2202a52840
- made the MIDI to WAVE dumper functional again, including the option of choosing the MIDI synth and sound font with which it should be rendered.
2018-02-24 18:19:27 +01:00
alexey.lysiuk
3436b80232
Added SHARE_DIR search path back
...
https://github.com/coelckers/gzdoom/pull/377#issuecomment-368235506
2018-02-24 17:50:13 +02:00
alexey.lysiuk
76ff1adb28
Disabled reverb editor's test environment by default
...
https://forum.zdoom.org/viewtopic.php?t=59583
2018-02-24 17:46:04 +02:00
Christoph Oelckers
786f1b34be
- did not save everything.
2018-02-24 13:33:28 +01:00
Christoph Oelckers
6e913bb032
- Timidity CVAR cleanup and removal of the more obscure options.
2018-02-24 13:06:17 +01:00
Christoph Oelckers
b1313d533a
- changing reverb mode must reallocate the buffers because they are mode-dependent.
2018-02-24 12:41:16 +01:00
Christoph Oelckers
fa8cfa65c0
- fixed incomplete initialization of the chorus data.
2018-02-24 12:30:19 +01:00
Christoph Oelckers
88328b056d
- removed 'register' keyword from reverb.cpp.
2018-02-23 22:01:00 +01:00
Christoph Oelckers
7a851fd3f1
libADL MIDI test. It sounds awful so obviously there's still something wrong here. Definitely not usable yet.
2018-02-23 21:56:34 +01:00
Christoph Oelckers
39f26028aa
- reworked the advanced sound menu to take advantage of the new soundfont handling.
...
The text input field for the configs have been removed. Instead it will now present a list of soundfonts that are found in specific locations.
For that it will look in the 'soundfont' directories of the FileSearch.Directories entry of the config.
Acceptable file formats here are SF2 and zipped GUS patch sets. These zipped patch sets need to have a timidity.cfg at the root and refer to all containing data by relative path. References to outside files are not allowed here.
It is still possible to refer to sound fonts elsewhere on the hard drive by manually entering a path at the console - but these won't show in the menu and will get lost if one cycles through the list of available options.
Of the available softsynths, FluidSynth will only list SF", Wildmidi will only list GUS patch sets and Timidity++ and GUS will list both.
Please note that although the GUS synth can read SF2, the output appears to be broken die to some old bug.
2018-02-23 19:23:39 +01:00
Christoph Oelckers
5da1433c57
- fixed a memory leak and removed debug output.
2018-02-23 18:57:30 +01:00
Christoph Oelckers
88f9f0982c
- fixed Timidity++ playback.
2018-02-23 18:33:54 +01:00
Christoph Oelckers
4a179954b1
- removed Timidity_mastervolume CVAR. The reason why this was added got addressed at a lower level with the new code (i.e. the EXE's output was far too loud) and if there need to be adjustments to evening out the volume of the different MIDI synths it should be done in the data generation step, not as an added factor to the system volume of the track.
2018-02-23 17:27:36 +01:00
Christoph Oelckers
d25cc1baa0
- Fixed today's work now that I'm able to hear some sound again. Also some reorganization
2018-02-23 17:01:17 +01:00
Christoph Oelckers
ddedcd9fc2
Removed all conditional checks on HAVE_FLUIDSYNTH
...
With the current setup it makes zero sense to exclude it. This was all a remnant of its introduction when it couldn't be taken for granted.
2018-02-23 14:36:26 +01:00
Christoph Oelckers
adebd644f2
Rewroter 'writemidi' CCMD to work independently of the currently playing song's data.
...
The first benefit of separating the MIDI data sources from the playback classes. :)
2018-02-23 14:26:29 +01:00
Christoph Oelckers
16f17deb0f
We no longer have a sound system that can handle music playback, so the code for it can go away.
2018-02-23 13:23:03 +01:00
Christoph Oelckers
9a1479ab08
Separate MIDI streamer and source creation in the high level code.
2018-02-23 13:20:07 +01:00
Christoph Oelckers
9aa1199902
Split the different MIDI format implementations into a separate 'Source' class.
...
This is necessary to write a universal, device independent wave dumper for MIDIs.
With each format inheriting from the main player class it is not possible to create a generic dumper player.
2018-02-23 12:40:43 +01:00
Christoph Oelckers
8734511e80
Removed PathExpander and PseudoMidiDevice which are no longer being used
...
PathExpander has been integrated into the sound font manager and PseudoMidiDevice was only used as the base class for the old Timidity++ device with the external executable.
2018-02-23 09:21:42 +01:00
Christoph Oelckers
aae832386f
Fixed warnings in Timidity++ code emitted by XCode, except one which cannot be eliminatet without compromising the code.
2018-02-23 09:07:42 +01:00
Christoph Oelckers
6618656e7c
Adjusted Timidity++ to soundfint manager
2018-02-23 08:54:01 +01:00
Christoph Oelckers
f9893a700a
- fixed some warnings.
2018-02-23 01:01:18 +01:00
Christoph Oelckers
d6fe1fb39f
- simplified the sound font manager a bit.
...
- allow the GUS to change sound fonts at run time.
- implemented sound font manager support in the GUS synth. This works but also made me realize that the SF2 support of this synth has been rather broken, apparently forever.
2018-02-23 00:48:03 +01:00
Christoph Oelckers
c12c068355
- WildMidi now uses the soundfont manager.
...
- added the missing handler for reading Timidity configs from the lump directory.
- fixed incomplete init of the GUS synth when no soundfont can be located.
- fixed bad initialization of WildMidi sampling frequency. It would default to 11.025 kHz if no valid rate was set. Now it will use the sound device's native frequency.
2018-02-22 22:35:49 +01:00
Christoph Oelckers
1361956072
- Soundfont manager works for FluidSynth.
2018-02-22 18:03:22 +01:00
Christoph Oelckers
8b8a7e5e45
- sfmanager gets initialized
2018-02-22 14:30:43 +01:00
Christoph Oelckers
aaedae6972
- do not abort if FScanner cannot open a file.
2018-02-22 14:10:25 +01:00
Christoph Oelckers
504d68e2f8
All compile errors on Mac fixed.
2018-02-22 13:50:41 +01:00
Christoph Oelckers
2c138d703d
Move function out of header due to compile errors on macOS
2018-02-22 13:46:29 +01:00
Christoph Oelckers
04344505c0
Soundfont header
2018-02-22 13:42:12 +01:00
Christoph Oelckers
a6fa906764
Framework for context independent sounffont management
...
Not tested yet!
2018-02-22 12:51:45 +01:00
Christoph Oelckers
3d08c1fbc7
Merge branch 'master' into timidity++
...
# Conflicts:
# src/sound/mididevices/music_timiditypp_mididevice.cpp
2018-02-22 09:10:42 +01:00
Christoph Oelckers
542d3431ff
- Start of soundfont refactoring. This does not compile yet!
2018-02-22 07:21:19 +01:00
Christoph Oelckers
0688d53ea8
- allow reloading the sound font for the GUS device.
2018-02-21 23:38:04 +01:00
Magnus Norddahl
57e66555da
- Change the search paths for auto folders
2018-02-21 23:20:31 +01:00
Magnus Norddahl
05827ffcda
- Implement auto textures for materials
2018-02-21 23:12:46 +01:00
Christoph Oelckers
e84ec2978a
- plugged the pending memory leaks.
2018-02-21 21:33:56 +01:00
Christoph Oelckers
5219916de5
- there's no need to drag the event time around, this really was just an artifact of Timidity's original implementation which is no longer in use.
...
- plugged a few memory leaks.
2018-02-21 21:11:31 +01:00
Christoph Oelckers
af705d1c59
- silenced a few pointless console messages generated by Timidity++.
2018-02-21 20:44:51 +01:00
Christoph Oelckers
af1de8ddc9
- removed volume testing output.
...
- final tweak to volume adjustment: Do this upon extraction for better results.
If this is done via the synth's parameters it will affect channel balance.
The given factor of 5 is necessary to roughly match the output of FluidSynth.
2018-02-21 20:12:37 +01:00
Christoph Oelckers
59352af486
- Volume tweaking.
2018-02-21 19:05:14 +01:00
Christoph Oelckers
e6bae25423
- Timidity++ is now fully integrated into the softsynth interface.
...
The only thing left to do is tweaking the volume of the output to match the one from the EXE.
2018-02-21 17:35:44 +01:00
alexey.lysiuk
74357ced0c
Fixed read of potentially junk values in ZScript parser
...
The following ill-formed ZScript code might crash targets with sizeof(int) != sizeof(void*) like 64-bit Intel
class test { void func() { if (true) ( return; ) } }
2018-02-21 16:26:04 +02:00
Christoph Oelckers
445e9451cb
- Added the long event handler for Timidity++.
...
This will be hard to test because there's basically no material out there using the features this implements.
2018-02-21 02:02:29 +01:00
Christoph Oelckers
4813eeeb85
- Timidity++ now plays ZDoom's event stream, although still through the Windows output module.
...
This also means that readmidi.cpp is no longer needed.
2018-02-21 01:29:39 +01:00
Christoph Oelckers
57967a1033
- safety commit.
2018-02-20 23:36:59 +01:00
Christoph Oelckers
cbcfea99cb
- use the intended interface to pass some data to the player.
2018-02-20 21:52:45 +01:00
Christoph Oelckers
a8283ffdd6
- something can be heard.
...
This doesn't pipe the audio through OpenAL yet but the fundamentals for further progress are done.
2018-02-20 20:50:01 +01:00
Christoph Oelckers
5ce3b00b90
- commented out the noisy debug messages in Timidity++ so that they do not waste execution time and memory for nothing - there are almost 300 of them.
2018-02-20 19:45:37 +01:00
Rachael Alexanderson
420602e154
- check for deathmatch starts before forcing an unfriendly player to use them.
2018-02-20 05:35:40 -05:00
alexey.lysiuk
ff897997d6
Fixed hang when TiMidity++ executable failed to launch
...
https://forum.zdoom.org/viewtopic.php?t=59539
2018-02-20 12:20:18 +02:00
Rachael Alexanderson
117b796c6b
- fixed: Phobia: The Age (or any mod with DEHACKED overriding player bits) overwrote the player's Friendly flag
2018-02-20 04:45:15 -05:00
Christoph Oelckers
d72b87f469
- skeleton of new player class for Timidity++ - not tested yet.
2018-02-20 01:23:56 +01:00
Magnus Norddahl
4e7ca68bd6
Merge remote-tracking branch 'gzdoom/master' into materials
2018-02-20 00:22:06 +01:00
Magnus Norddahl
07fa310f23
- move material light modes to their own subshader lumps
2018-02-20 00:13:05 +01:00
Christoph Oelckers
803369fb8d
- make CMake happy
2018-02-19 23:33:42 +01:00
Christoph Oelckers
06a1730b8a
- hooking in the PathExpander.
2018-02-19 22:48:13 +01:00
Christoph Oelckers
576932c47f
- Timidity++ sources added. This compiles but isn't hooked into the engine yet.
...
This source has been heavily edited to remove the deep integration with the provided UI modules and to eliminate use of global variables and puts everything into a small number of C++ classes.
2018-02-19 22:14:22 +01:00
alexey.lysiuk
a3236aa7ef
Set target for blood actor with PUFFGETSOWNER flag spawned by crusher
...
https://forum.zdoom.org/viewtopic.php?t=59447
2018-02-19 16:57:52 +02:00
alexey.lysiuk
05538f2de8
Fixed compilation warnings reported by MSVC
...
src\sound\musicformats\music_libsndfile.cpp(119): warning C4267: 'argument': conversion from 'size_t' to 'long', possible loss of data
src\sound\musicformats\music_libsndfile.cpp(139): warning C4267: 'argument': conversion from 'size_t' to 'long', possible loss of data
src\sound\musicformats\music_libsndfile.cpp(145): warning C4267: 'argument': conversion from 'size_t' to 'long', possible loss of data
src\sound\musicformats\music_libsndfile.cpp(167): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\musicformats\music_libsndfile.cpp(178): warning C4267: 'argument': conversion from 'size_t' to 'long', possible loss of data
src\sound\musicformats\music_libsndfile.cpp(240): warning C4267: 'argument': conversion from 'size_t' to 'long', possible loss of data
2018-02-19 12:28:24 +02:00
alexey.lysiuk
1e41c042d4
Fixed codegen crash with non-numeric random seed
...
The following code crashed ZScript code generator if my_seed is not convertible to numeric type
SetRandomSeed[my_random_id](my_seed);
2018-02-19 11:46:36 +02:00
Christoph Oelckers
6a02eaa595
- second part of texture fix.
2018-02-15 18:40:23 +01:00
Christoph Oelckers
ef55386d9f
- let the texture manager handle the special OpenGL textures so that they get deleted and recreated when needed.
2018-02-15 17:56:04 +01:00
Christoph Oelckers
80a0d15bc7
The fallback path in DepleteAmmo was calling the wrong function
2018-02-12 21:06:38 +01:00
Chris Robinson
e566cb9184
Properly parse FLAC and Ogg Vorbis files for their comments
2018-02-12 17:33:20 +01:00
alexey.lysiuk
61979f63c1
Removed last remnants of PowerPC Mac support
2018-02-11 16:35:34 +02:00
Marrub
66d15dc215
Make the ACS string pool reserve more strings
...
Due to only reserving a single new string when growing the string pool, any ACS code that generates lots of strings will eventually cause massive amounts of lag, to the point where ACSStringPool takes up *most of the execution time*. The proposed change fixes this issue.
2018-02-10 20:18:26 +01:00
Magnus Norddahl
e2cab652d0
- Improve the "#line 1" directive insertion so that errors in all the shaders use line numbers relative to the lump they are referring to
2018-02-10 14:46:43 +01:00
Magnus Norddahl
5528d4157b
- Make uniform removal a little bit more robust by only searching for known legacy uniforms
2018-02-10 14:06:17 +01:00
Rachael Alexanderson
5dd98669e4
- FreeBSD compile fix
2018-02-10 07:56:33 -05:00
Magnus Norddahl
f01ef3d7a7
- Remove uniforms from user shader code
2018-02-10 12:52:59 +01:00
Magnus Norddahl
94fbcacf22
Merge branch 'gzdoom' into materials
2018-02-10 00:08:17 +01:00
Magnus Norddahl
7cbe8669b6
- fix decals not getting lit by lights not having a target while still having the LF_DONTLIGHTSELF flag
...
- fix decal light not being calculated from the center of the decal
2018-02-10 00:06:47 +01:00
Magnus Norddahl
3207d8aef7
- generate uniform declarations from c++
2018-02-09 23:29:31 +01:00
alexey.lysiuk
ed23008069
Fixed crash in stereoscopic modes caused by camera without player
...
https://forum.zdoom.org/viewtopic.php?t=55039&start=381#p1039251
2018-02-07 11:37:02 +02:00
ZZYZX
ef867c3415
Fixed arg0str for dynamic light actors
2018-02-04 03:37:41 -05:00
alexey.lysiuk
af7648a151
Made PlayerRespawn skill definition consistent
...
Now it works the same as AllowRespawn map definition in MAPINFO
2018-02-03 16:26:49 +02:00
alexey.lysiuk
d5bc0a1fa9
Uniform way to guard ACS stack and variables
...
ACS VM stack and map/world/global variables arrays are now checked for out of bounds access
2018-02-03 14:39:01 +02:00
alexey.lysiuk
9a9c90a504
Fixed crash on exit caused by undefined class
...
Referenced but undefined optional class does not abort loading with fatal error
For example, incorrect MorphProjectile's PlayerClass or MonsterClass caused crash during shutdown
2018-01-31 18:40:48 +02:00
Kevin Caccamo
1608e11f0d
Fix typo that made DepleteAmmo always use Secondary Ammo
...
https://forum.zdoom.org/viewtopic.php?f=2&p=1038209
2018-01-30 23:52:48 -05:00
Christoph Oelckers
8e90386567
- made Weapon.CheckAmmo and Weapon.DepleteAmmo virtual on the script side.
2018-01-30 22:04:31 +01:00
alexey.lysiuk
35508bc8fb
Fixed resetting CVARs via internal menu CCMDs
...
This restores functionality of reset to defaults/saved menu options
2018-01-30 16:32:16 +02:00
alexey.lysiuk
d9323b9740
Marked internal menu commands as safe
...
This fixes soundfont/patchset/config selection menus in advanced sound options
2018-01-30 16:02:30 +02:00
alexey.lysiuk
c8b6e5719e
Restore unsafe execution context to its previous value
2018-01-30 15:56:45 +02:00
alexey.lysiuk
f4191f27cf
Marked two more CCMDs as unsafe
2018-01-30 15:42:03 +02:00
Christoph Oelckers
93686638b0
- let fluid_reverb and fluid_chorus default to 'off'.
2018-01-29 18:54:06 +01:00
Christoph Oelckers
2bb80e3d0b
- fixed: Upon resurrection, a monster must check if the current setting of the link flags (NOBLOCKMAP and NOSECTOR) match the defaults.
2018-01-29 18:18:31 +01:00
Christoph Oelckers
6107f36ad2
- iterating through portal groups must check for situations where badly constructed maps let items end up in another portal group.
2018-01-29 18:00:55 +01:00
alexey.lysiuk
1e9fdca755
Made unsafe execution context check for CVARs more strict
...
This prevents changing of non-mod CVARs from unsafe context for various code paths including set and toggle CCMDs
2018-01-29 15:20:35 +02:00
alexey.lysiuk
c7eea9b480
Marked a few more CCMDs as unsafe
2018-01-29 13:30:36 +02:00
Christoph Oelckers
64921ea968
- use a more consistent setting for rendering fuzzy sprites with enhanced nightvision on.
2018-01-28 20:46:16 +01:00
Alexander Wilms
55c6a14059
Added simple fatal error window for Linux
...
There are three variants: KDE dialog, GTK+ window, SDL message box
https://forum.zdoom.org/viewtopic.php?t=57880
2018-01-28 17:03:10 +02:00
Christoph Oelckers
c1d2b54820
- let TexMan.GetName return the actual name for a texture that was created from a full path name.
2018-01-28 11:54:24 +01:00
alexey.lysiuk
6003625721
Silenced quad stereo message during startup
2018-01-28 11:41:00 +02:00
Christoph Oelckers
d207f426c1
Typo.
2018-01-27 12:49:52 +01:00
Christoph Oelckers
1794774f22
- ScriptedMarine already exists as a name so most literal occurences in the source could be replaced with more efficient direct use of the name.
2018-01-27 09:54:33 +01:00
Christoph Oelckers
7ceb70bcc1
- renamed 'Tracer' class to 'LineTracer', because 'Tracer' is a too common name that had been used by some mods.
2018-01-27 09:32:26 +01:00
Marisa Kirisame
92547028f3
Exports sky textures to ZScript (readonly, needs setter function due to the setup required) and speeds, along with a ChangeSky function for setting the textures.
2018-01-26 21:00:44 +01:00
alexey.lysiuk
a77b253cba
Fixed Sector.SetYScale() function in ZScript
...
https://forum.zdoom.org/viewtopic.php?t=59224
2018-01-26 10:29:37 +02:00
alexey.lysiuk
577c6b033e
Changed quad stereo mode restart notification
...
Restart requirement for quad stereo mode should be output to console because CVAR can be toggled directly from it
Long option names break menu layout on some aspect ratios like 16:10
2018-01-26 10:10:51 +02:00
Magnus Norddahl
30af6d38b3
- fix automap render bug
2018-01-25 20:22:51 +01:00
Magnus Norddahl
2c9a2e7170
- fix specular defaults to be a little more sane
2018-01-25 19:59:57 +01:00
Magnus Norddahl
7a59bcde4c
- move glossiness and specular level to GLDEFS
2018-01-25 19:53:55 +01:00
Magnus Norddahl
0855418475
Merge branch 'gzdoom' into materials
...
# Conflicts:
# src/gl/shaders/gl_shader.cpp
# src/gl/shaders/gl_shader.h
2018-01-25 19:21:19 +01:00
Magnus Norddahl
a46bbc81a0
Merge branch 'bloom_psprite_fix' into gzdoom
2018-01-25 19:01:46 +01:00
Magnus Norddahl
4c0dce875f
Merge branch 'fuzz_software' into gzdoom
2018-01-25 19:00:14 +01:00
alexey.lysiuk
1b4e3d3f94
Added overloaded Little...() functions for big endian targets
...
https://forum.zdoom.org/viewtopic.php?t=59197
2018-01-25 13:35:34 +02:00
alexey.lysiuk
e728634497
Use dummy Get...() functions for all Intel targets
...
64-bit Intel targets built with GCC/Clang were using strict memory alignment versions of GetShort(), GetInt(), GetBigInt() functions
2018-01-25 13:23:12 +02:00
Magnus Norddahl
81c6808d2a
- Add specular and normal map handling to main.fp
2018-01-23 23:10:28 +01:00
Magnus Norddahl
c7ec489846
Merge remote-tracking branch 'origin/master' into materials
2018-01-23 20:16:32 +01:00
alexey.lysiuk
47b276024e
Fixed compilation warnings reported by MSVC
...
src\p_map.cpp(4857): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\p_map.cpp(4858): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
2018-01-22 12:29:16 +02:00
Christoph Oelckers
76d594f952
- reverted the hard offset for transferred skies.
...
This is not the correct way to apply it.
2018-01-21 19:25:21 +01:00
Christoph Oelckers
09f1859c83
- allow retrieving the length of a string constant.
2018-01-21 18:49:46 +01:00
Christoph Oelckers
6438416adb
- fixed: The culling mode for translucent models must be inverted when rendering a mirror.
2018-01-21 16:29:40 +01:00
Christoph Oelckers
e1d6f6f3b3
- fixed: precise rendering did not work anymore due to a missing reference operator in the setup function for the needed data.
2018-01-21 16:17:49 +01:00
Christoph Oelckers
884db96cbb
Merge branch 'master' of https://github.com/coelckers/gzdoom
2018-01-21 10:54:34 +01:00
ZZYZX
ee1a8f71bb
Disable TRACE_PCross and TRACE_Impact on ZScript side
2018-01-21 10:54:23 +01:00
ZZYZX
74b937620e
Added texture detection for walls and 3D floors; renamed some fields to more intuitive names
2018-01-21 10:54:23 +01:00
ZZYZX
a7ff62316d
Exported Trace() interface to ZScript
2018-01-21 10:54:23 +01:00
Marisa Kirisame
15e7d9daba
Gave the user data struct for CheckLineTrace a more unique name to avoid confusion with FLineTraceData
2018-01-21 10:54:02 +01:00
Marisa Kirisame
69e8c9ec6e
A more "general purpose" line trace function. Far from a complete ZScript interface with Trace(), though.
2018-01-21 10:54:02 +01:00
Jan Engelhardt
3f45f938d6
Update LZMA SDK to version 17.01
2018-01-21 10:53:40 +01:00
Neil McPhail
ded0c7805d
Fix failure to write under ~/ in confinement
...
When running in a confined environment (such as a snap) it may not be
possible to write to directories such as ~/.config. By using the $HOME
variable instead of the '~' shortcut, the confined environment can pass
an alternative 'home' directory with write privelges.
I have only changed this for posix/unix and haven't touched code for
MacOS, as I don't know if that behaves differently
2018-01-21 10:52:42 +01:00
Christoph Oelckers
56e2db38fd
- Use FName instead of FString to store arg0str in FMapThing.
...
This is because FMapThing gets memset to 0 and changing that would cause more work than it is worth to keep the string. The only thing it is used for is the color for dynamic lights and those do not need case sensitivity so a name will just do as well, but require less adjustments elsewhere.
2018-01-21 09:10:04 +01:00
Christoph Oelckers
c93d025088
Merge branch 'master' of https://github.com/coelckers/gzdoom
2018-01-21 08:57:29 +01:00
Rachael Alexanderson
8b3cc6a617
- remove redundant vm.h include in events.cpp
2018-01-21 01:02:00 -05:00
Magnus Norddahl
0f69778e23
- Add new material shader entries for specular and PBR light modes
2018-01-21 01:53:44 +01:00
Magnus Norddahl
4dd2d789f4
- Rename mTextureEffects to mMaterialShaders to help distinguish between those and effect shaders (mEffectShaders)
...
- Add MaterialShaderIndex enum
2018-01-21 01:19:16 +01:00
Christoph Oelckers
9b40097e48
Merge branch 'master' of https://github.com/coelckers/gzdoom
2018-01-20 22:41:41 +01:00
Christoph Oelckers
6aaf5df617
- reworked spot lights to receive all relevant information through the args.
...
As a bonus, arg0str can now be used for all dynamic lights to pass a color in textual form, including X11R6RGB-names.
2018-01-20 22:41:28 +01:00
Jonathan Russell
708d24aba7
- added Screen.getViewWindow function
2018-01-20 21:56:34 +01:00
Christoph Oelckers
dbf0a68b02
Merge commit '67e3106254e987f5acb9534e725d4f5c3eaa82b2'
...
# Conflicts:
# src/doomdata.h
# src/namedef.h
# src/p_udmf.cpp
2018-01-20 19:07:54 +01:00
Rachael Alexanderson
6df936e0a0
- remove A_IsPlayingSound
2018-01-20 19:01:47 +01:00
Marisa Kirisame
a01ca4c3a1
Exported S_IsActorPlayingSomething and S_GetMSLength to ZScript.
...
Added missing vm.h include, moved A_IsPlayingSound to p_actionfunctions.cpp.
- make A_IsPlayingSound ui only
2018-01-20 19:01:47 +01:00
Major Cooke
d5d393aaf2
- Added GetRadiusDamage. Returns the raw calculated explosion damage falloff by distance only.
...
- Split off both explosion damage calculations into P_Get(Old)RadiusDamage functions for ease of maintenance.
2018-01-20 18:45:01 +02:00
Magnus Norddahl
f3c55c01c8
Add material definition to GLDEFS
2018-01-20 16:28:24 +01:00
alexey.lysiuk
c840368446
Fixed compilation warnings reported by GCC/Clang
...
src/s_environment.cpp:908:6: warning: variable 'v' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
src/s_environment.cpp:908:26: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
src/s_environment.cpp:934:26: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
2018-01-20 14:59:29 +02:00
Christoph Oelckers
16461e0d59
Merge branch 'reverbedit'
2018-01-20 13:06:26 +01:00
alexey.lysiuk
7a1ec9ab9d
Applied values to latched CVARs in correct order
...
https://forum.zdoom.org/viewtopic.php?t=59159
2018-01-20 13:53:13 +02:00
Christoph Oelckers
2d8e394529
Merge branch 'master' into reverbedit
...
# Conflicts:
# wadsrc/static/zscript/menu/optionmenuitems.txt
2018-01-20 11:44:42 +01:00
Christoph Oelckers
2fddea7bed
Merge branch 'unsafe_context'
2018-01-20 11:21:52 +01:00
alexey.lysiuk
b5006bbee4
Fixed potential compilation error in ACS loader
...
https://forum.zdoom.org/viewtopic.php?t=59164
2018-01-20 10:34:07 +02:00
Christoph Oelckers
2720e36a2c
- marked a few more CCMDs unsafe.
2018-01-20 09:11:28 +01:00
Christoph Oelckers
4cf5977b56
Merge branch 'master' into unsafe_context
2018-01-20 08:53:00 +01:00
Christoph Oelckers
19cf887ad1
- fixed: Dynamic arrays for object pointers need different treatment than arrays for regular pointers, because they require GC::WriteBarrier to be called.
2018-01-19 19:49:42 +01:00
alexey.lysiuk
f629678320
Fixed const correctness for secplane structure
...
https://forum.zdoom.org/viewtopic.php?t=59151
2018-01-18 15:34:56 +02:00
alexey.lysiuk
6d20da8ab5
Fixed nust -> must typos
2018-01-18 11:43:32 +02:00
alexey.lysiuk
56f656516d
Fixed rare crash when menu is closed from Ticker() function
...
https://forum.zdoom.org/viewtopic.php?t=59112
2018-01-16 11:00:48 +02:00
Christoph Oelckers
13c4e58c3d
- simplified IgnoreMIDIVolume.
...
The XP related check had already been deactivated but not removed.
2018-01-14 10:48:26 +01:00
alexey.lysiuk
f28914d1b6
Simplified handling of command line arguments in Cocoa backend
...
Empty arguments are no longer ignored
2018-01-14 11:29:45 +02:00
alexey.lysiuk
09e2326c63
Use dummy uallong() function for all Intel targets
...
64-bit Intel targets built with GCC/Clang were using strict memory alignment version of this function
2018-01-14 10:13:18 +02:00
alexey.lysiuk
72f181be08
Revert "Added partial bounds check for instruction pointer in ACS VM"
...
This reverts commit 83cd53c9b1
.
2018-01-14 10:04:13 +02:00
alexey.lysiuk
9b52c18ef6
Improved layout of FMultiPatchTexture::TexPart structure
...
Removed "gaps" between members (for 64-bit targets) and initialized them in place
2018-01-13 12:44:23 +02:00
alexey.lysiuk
d95ac93376
Fixed crash when resolving multipatches with missing textures
...
https://forum.zdoom.org/viewtopic.php?t=59088
2018-01-13 12:41:19 +02:00
alexey.lysiuk
337bbfc88c
Custom submenus are no longer removed from altered protected menu
...
https://forum.zdoom.org/viewtopic.php?t=59081
2018-01-12 10:51:14 +02:00
Rachael Alexanderson
ee9736fbb3
- print out FriendlySeeBlocks on 'info' ccmd
...
- not setting FriendlySeeBlocks on UDMF now causes the actor to use its ZScript default
2018-01-09 15:48:19 -05:00
Rachael Alexanderson
9c189e5d4b
- expose a monster's 'friendlyseeblocks' to UDMF
2018-01-09 15:30:45 -05:00
Rachael Alexanderson
68cd0fad76
- fixed crash when entering 'finishgame' in the console outside of a level.
2018-01-09 20:24:25 +01:00
Rachael Alexanderson
36b6253c3d
Merge branch 'FriendlySeeBlocks' into zmd5
2018-01-09 13:55:09 -05:00
Rachael Alexanderson
7416f42b47
- add 'FriendlySeeBlocks' actor property that allows a modder to expand the maximum radius that a friendly monster can see enemies.
2018-01-09 12:34:12 -05:00
Christoph Oelckers
8667987cd6
- DWaitingCommand needs to serialize its unsafe state.
2018-01-08 18:13:02 +01:00
alexey.lysiuk
6370594e17
Fixed crash on finishgame CCMD before starting new game
...
https://forum.zdoom.org/viewtopic.php?t=59045
2018-01-08 17:16:03 +02:00
alexey.lysiuk
b008426ed7
Added propagation of unsafe execution context to waiting command
...
Thanks Edward-san for pointing this out
2018-01-08 10:41:31 +02:00
Jameson Ernst
e8a7f00b9b
Adjust FNF enum to fix FILLZEROS
2018-01-07 23:44:03 +01:00
alexey.lysiuk
059e40e2d5
Prohibited setting of non-mod CVARs from unsafe alias
2018-01-07 15:04:50 +02:00
alexey.lysiuk
f25a5ea2bc
Marked a few commands as unsafe
...
This process of finding unsafe commands is not complete!
2018-01-07 15:03:49 +02:00
alexey.lysiuk
6d37a67027
Added unsafe execution context for console commands
...
Some console commands are insecure because they access user's file system
Such commands cannot be executed from MENUDEF and KEYCONF aliases
2018-01-07 15:02:22 +02:00
Magnus Norddahl
a23e5f49f6
- Add "fuzz software" to GL that renders fuzz like the scaled fuzz mode in the software renderer
2018-01-07 02:29:55 +01:00
Rachael Alexanderson
9fd78e90ad
- export 'GetChecksum' as part of FLevelLocals in ZScript
2018-01-06 19:59:49 -05:00
Magnus Norddahl
56db2b02cc
- Fix psprite not appearing when invulnerability effect is active with bloom turned on
2018-01-06 17:21:02 +01:00
alexey.lysiuk
83cd53c9b1
Added partial bounds check for instruction pointer in ACS VM
...
This change adds verification of instruction pointer for indirect usages only, i.e. via NEXT...() macros
2018-01-06 13:26:51 +02:00
alexey.lysiuk
44f01e1dc6
Added bounds check for local variables in ACS VM
2018-01-06 12:13:15 +02:00
Magnus Norddahl
f88d9a02df
Remove bloom effect on psprites
2018-01-06 05:11:12 +01:00
alexey.lysiuk
df0cddb35d
Do not output empty conversation replies to console
...
https://forum.zdoom.org/viewtopic.php?t=58992
2018-01-05 16:26:31 +02:00
Jonathan Russell
67e3106254
- add the default spotlight apertures in FMapThing
2018-01-04 23:31:10 +00:00
Jonathan Russell
e754fe04ef
- removed the 0 check on the UDMF property, so 0 can be a valid aperture
2018-01-04 23:22:45 +00:00
Jonathan Russell
254501d3e8
- fixing last commit, which didn't seem to work correctly
2018-01-04 23:09:48 +00:00
Jonathan Russell
7f7c720883
- added UDMF properties for spotlights (args have all been used up for dynlights)
2018-01-04 22:41:57 +00:00
Magnus Norddahl
79440d7014
- Fix sprite spot light calculation
2018-01-04 19:42:52 +01:00
Magnus Norddahl
bae3620540
- Added spot light support to gl_SetDynSpriteLight
2018-01-04 19:27:03 +01:00
Magnus Norddahl
f398286162
- Fix wrong spot direction
2018-01-04 19:09:12 +01:00
Magnus Norddahl
5f36b86013
- Add dynamic spot lights
2018-01-04 17:58:11 +01:00
alexey.lysiuk
4b044e30d7
- ACS stack checking (proxy commit by Rachael)
2018-01-03 23:35:57 -05:00
Rachael Alexanderson
6aa724a9b4
- add 'gl_riskymodernpath' for computers that worked before the GL >= 3.3 modern path enforcement, since some did, but they seemed to be the exception rather than the rule.
2018-01-03 21:46:04 -05:00
alexey.lysiuk
549a9d3cf0
Extended Actor.CheckMove() with optional position information
...
https://forum.zdoom.org/viewtopic.php?t=58964
2018-01-03 10:48:10 +02:00
Major Cooke
c3c1e76e8a
Added vector diff functions to ZScript LevelLocals class
...
Vec2Diff() and Vec3Diff() work like Actor’s Vec2To() and Vec3To() but use arbitrary points
2018-01-02 14:18:59 +02:00
alexey.lysiuk
c4648a2b1c
Added CheckMove() function to ZScript Actor class
...
https://forum.zdoom.org/viewtopic.php?t=58964
2018-01-02 13:04:28 +02:00
Rachael Alexanderson
d8aa53f5b1
- whitelisted openmenu
2018-01-01 14:51:32 -05:00
alexey.lysiuk
be8147406e
Fixed initialization of BlockThingsIterator objects
...
https://forum.zdoom.org/viewtopic.php?t=58945
2018-01-01 11:11:21 +02:00
alexey.lysiuk
2c4eae7487
Applied vertical offset to transferred sky in OpenGL renderer
...
https://forum.zdoom.org/viewtopic.php?t=58934
2017-12-31 21:29:27 +02:00
alexey.lysiuk
8f70d70dd6
Generalized maximum amount for give cheat
...
https://forum.zdoom.org/viewtopic.php?t=58930
2017-12-31 15:25:51 +02:00
alexey.lysiuk
294bf6ed53
Simplified base class checks in AActor::GiveInventory()
2017-12-31 15:23:54 +02:00
alexey.lysiuk
de4fc97ac6
Fixed ammo limit for give cheat
...
https://forum.zdoom.org/viewtopic.php?t=58930
2017-12-31 13:30:30 +02:00
alexey.lysiuk
40fd816d54
Improved compatibility of blocking lines handling
...
Only the first blocking line changes contact state during line iteration
This reverts 3b818171d5
https://forum.zdoom.org/viewtopic.php?t=57870
2017-12-31 11:34:12 +02:00
Rachael Alexanderson
a5ded11994
- load translator from gameinfo instead of Doom for UMAPINFO
2017-12-30 16:36:29 -05:00
Rachael Alexanderson
340f1fce30
- load Doom translations when parsing UMAPINFO in order to activate the correct boss specials
...
- one typo (only on a comment) change
2017-12-30 16:21:02 -05:00
alexey.lysiuk
8f7ca00d19
Added optional angles to player's coordinates display
...
Set hud_showangles CVAR to display pitch, yaw, roll below player's coordinates
2017-12-30 12:10:39 +02:00
alexey.lysiuk
a3d1efc8d6
Better angle selection for rotated automap sprites
...
https://forum.zdoom.org/viewtopic.php?t=58348
2017-12-30 12:08:32 +02:00
alexey.lysiuk
33213f5d5d
Fixed rendering of wrapped midtex with sky ceiling
...
https://forum.zdoom.org/viewtopic.php?t=58311
2017-12-29 14:37:09 +02:00
alexey.lysiuk
a670e79b8a
Applied texture offsets and scales on animated doors
...
https://forum.zdoom.org/viewtopic.php?t=58892
2017-12-29 11:47:30 +02:00
alexey.lysiuk
996bddd602
Exposed pixel stretch to ZScript as member variable instead of function
...
https://forum.zdoom.org/viewtopic.php?t=58539
2017-12-29 09:42:03 +02:00
alexey.lysiuk
25d53ecd2c
Enabled position independent executable for generic GCC/Clang
...
This affects mostly Linux (and probably MinGW) as default toolchains for Windows and macOS have the corresponding option turned on by default
2017-12-29 09:39:01 +02:00
Magnus Norddahl
b8415199c9
Fix culling bug
2017-12-28 11:43:52 -05:00
Rachael Alexanderson
a441cea350
- interpolate particles
2017-12-28 11:36:36 -05:00
alexey.lysiuk
8ca3427850
Fixed applying of Doom 64 lighting to horizon portals
...
https://forum.zdoom.org/viewtopic.php?t=58878
2017-12-28 18:32:26 +02:00
Rachael Alexanderson
5c602b1ec0
- fixed: FSkillInfo operator "=" did not set PlayerRespawn value
2017-12-28 01:41:56 -05:00
Rachael Alexanderson
45531090a7
- add 'playerrespawn' skill flag to allow gameplay mods to retroactively enable player respawns in single player on all maps
2017-12-28 00:53:30 -05:00
Major Cooke
10465c1d27
- Fade cancelling should only always be active for A_SetBlend fades, not always for everything else (such as ACS fades).
2017-12-27 23:34:44 -05:00
Major Cooke
fa0082aef6
Added ability to perform reverse fades with A_SetBlend
2017-12-27 20:51:13 -05:00
Christopher Bruns
a3399c1af2
Fix: Bind the default framebuffer before testing whether hardware stereo 3D is supported. This allows Nvidia 3D vision glasses to function correctly when gl_light_shadowmap is ON.
...
Doc: Add "requires restart" to "enable quad stereo" option menu label, to help folks trying to setup 3D.
2017-12-27 17:50:53 -05:00
Major Cooke
1e7df5505e
Added GetPixelStretch to LevelLocals struct.
2017-12-27 17:50:39 -05:00
alexey.lysiuk
2eb51e5f79
Disabled modifier keys processing in UI by Cocoa backend
...
Modifier keys no longer trigger bound actions in menu/console/chat
2017-12-25 18:14:56 +02:00
Rachael Alexanderson
205c64d4b1
- prevent level from exiting if no deathmatch starts are available in multiplayer
2017-12-24 20:48:51 -05:00
Rachael Alexanderson
000037dbf6
- implemented 'i_soundinbackground' to continue playing sounds and music while in the background.
...
- OpenGL rendering continues now even when losing focus while in windowed mode.
2017-12-24 18:01:45 -05:00
Rachael Alexanderson
d10304ea4e
Merge commit 'refs/pull/355/head' of https://github.com/coelckers/gzdoom
2017-12-24 07:48:11 -05:00
alexey.lysiuk
a11e9ca4dc
Apply compatibility flags to all map format
...
UDMF maps were no affected by settings in compatibility.txt
2017-12-24 10:33:29 +02:00
alexey.lysiuk
bfaa09c429
Fixed crash after restart CCMD
2017-12-23 15:48:28 +02:00
alexey.lysiuk
d50ba4954a
Fixed potential crash when calling undefined function in ZScript
...
The following code which uses explicit class specifier led to a crash:
class C
{
void F()
{
Object.Undefined();
}
}
2017-12-23 15:27:32 +02:00
Rachael Alexanderson
b9a2398935
- added 'undocolorpic' to c_dispatch whitelist
2017-12-21 18:00:13 -05:00
Rachael Alexanderson
0e2aee7d5e
- whitelist reset2saved in menudef
2017-12-20 03:21:50 -05:00
alexey.lysiuk
90c734a39f
Fixed VM abort when drawing from ZScript happens during 0 game tic
...
https://forum.zdoom.org/viewtopic.php?t=58523
https://forum.zdoom.org/viewtopic.php?t=58780
2017-12-19 18:07:29 +02:00
alexey.lysiuk
8c60c3c532
Added bounds checks for color translation indices
...
ACS scripts could pass arbitrary values as palette indices leading to undefined behavior
2017-12-17 15:13:41 +02:00
alexey.lysiuk
6db8e71b14
Fixed inconsistent color remapping via translation ranges
...
https://forum.zdoom.org/viewtopic.php?t=58537
2017-12-17 15:13:41 +02:00
Major Cooke
ceffe1ba5f
Consistent style.
2017-12-16 12:17:55 -05:00
Major Cooke
0d841ab4df
- Added DMG_NO_PAIN for DamageMobj.
2017-12-16 12:17:55 -05:00
alexey.lysiuk
0afc09678f
Fixed bright sprites in sectors with Doom 64 lighting
...
https://forum.zdoom.org/viewtopic.php?t=58703
2017-12-16 17:37:03 +02:00
alexey.lysiuk
c387574c02
Stop demo recording after ending game with menu_endgame CCMD
...
https://forum.zdoom.org/viewtopic.php?t=58735
2017-12-15 12:34:56 +02:00
Rachael Alexanderson
dee5d064e9
- revise last script a bit: allow certain cheats/scripts/events to be called from the menu.
2017-12-14 16:39:33 -05:00
Rachael Alexanderson
f77ba14948
- use a whitelist for DoCommand zscript command
2017-12-14 15:55:45 -05:00
alexey.lysiuk
de12902d77
Increased limit for automap empty space margin to 90%
...
https://forum.zdoom.org/viewtopic.php?t=58653
2017-12-14 16:18:27 +02:00
Christoph Oelckers
6b42036eb6
- fixed: AActor::UnlinkFromWorld must also destroy all portal link nodes for the calling actor.
2017-12-10 21:26:52 +01:00
alexey.lysiuk
724c997695
Fixed error check when saving GL nodes
2017-12-10 15:10:32 +02:00
alexey.lysiuk
a89bc23789
Fixed crash when loading saved game with missing ACS module
2017-12-10 13:24:16 +02:00
Rachael Alexanderson
1559d74c2c
- repaired the video scaling code
2017-12-10 04:22:28 -05:00
alexey.lysiuk
ebb926e7b0
Added free space margin aka safe frame for automap
...
am_freespacemargin CVAR and corresponding menu options can set empty space margin for automap in percentage of zoomed out size
https://forum.zdoom.org/viewtopic.php?t=58653
2017-12-09 17:38:34 +02:00
Rachael Alexanderson
eb5da3e641
- fixed: if the level is started before the first timer call, pass an earlier timestamp to screen->FrameTime
2017-12-09 06:09:48 -05:00
alexey.lysiuk
0bd9437a96
Fixed loading of external DeHackEd patches
...
https://forum.zdoom.org/viewtopic.php?t=58685
2017-12-09 11:37:25 +02:00
Rachael Alexanderson
a3a350e6e8
- fixed: make level.ShaderStartTime use the same values as what screen->FrameTime normally gets.
2017-12-07 16:31:27 -05:00
Rachael Alexanderson
938cd3cabe
- implemented win_borderless for fake fullscreen in Windows
2017-12-07 06:32:51 -05:00
Rachael Alexanderson
a29d9e157c
- fixed: screen->FrameTime should use an adjusted frame start time
2017-12-07 03:01:57 -05:00
Rachael Alexanderson
29d2d8b3f8
- changed ttl in particle_t from short to int32_t for longer lifespan.
2017-12-07 01:54:30 -05:00
alexey.lysiuk
5162e7162e
Fixed overbright screenshots with hardware gamma off
...
When render buffers are used to apply gamma/brightness/contrast screenshots should not use PNG gamma correction
2017-12-06 11:24:10 +02:00
Rachael Alexanderson
505c99b0a8
- fixed: doublize more internal structures, even if they still get converted to float later
2017-12-04 17:39:57 -05:00
Christoph Oelckers
6403f64a93
- use documents path to store reverbs.
2017-12-03 21:06:27 +01:00
Christoph Oelckers
4c799af293
Merge branch 'master' into reverbedit
2017-12-03 21:04:14 +01:00
Christoph Oelckers
a945418ba6
- added M_GetDocumentsPath function.
2017-12-03 21:03:44 +01:00
Christoph Oelckers
cea89ba3ae
- fix backslashes in MD3 skin names.
2017-12-03 20:03:33 +01:00
Christoph Oelckers
d5445d7953
- reverb editor complete except for localization and saving to a proper place.
2017-12-03 19:56:03 +01:00
Rachael Alexanderson
0fa74220c9
- fixed: doublize sky float, in order to make it more smooth
2017-12-03 12:39:24 -05:00
Christoph Oelckers
5e1100096e
- work on reverb save menu.
2017-12-03 17:04:10 +01:00
alexey.lysiuk
31b0fdc9fe
Fixed directory creation for POSIX targets
...
Warning was reported by GCC 7 only:
cmdlib.cpp:550:13: warning: ‘info.stat::st_mode’ may be used uninitialized in this function [-Wmaybe-uninitialized]
2017-12-03 14:57:35 +02:00
alexey.lysiuk
5f50d60eff
Restored handling of tmpfileplus() keep argument for POSIX targets
2017-12-03 14:57:35 +02:00
alexey.lysiuk
31d1018b9a
Fixed compilation warnings reported by GCC/Clang
...
b_game.cpp:537:27: warning: more '%' conversions than data arguments [-Wformat]
g_game.cpp:2982:40: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'long' [-Wsign-compare]
2017-12-03 14:57:34 +02:00
alexey.lysiuk
f25c7ef2d5
Unified implementation of ’directory as resource file' for POSIX targets
2017-12-03 14:57:34 +02:00
Christoph Oelckers
7e45535669
Merge branch 'master' into reverbedit
2017-12-03 12:46:08 +01:00
alexey.lysiuk
8129afdd1f
Fixed compilation of non-Windows targets
...
These are quick hacks to be improved later
2017-12-03 10:11:54 +02:00
Magnus Norddahl
52be9895b7
- Disable softpoly models
2017-12-03 00:23:28 +01:00
Christoph Oelckers
cc54db6e6d
- let the 3 relevant text functions handle UTF-8 strings
...
These functions are: DCanvas::DrawTextCommon, V_BreakLines and FFont::StringWidth.
This will allow strings from UTF-8 encoded assets to display properly, but also handle the OpenAL device name on international systems, as this will be returned as an UTF-8 string.
Due to backwards compatibility needs the decoding function is rather lax to allow both UTF-8 and ISO 8859-1 to pass through correctly - and this also implies that it will allow mixed encodings which may happen if strings from different sources get concatenated.
2017-12-02 21:21:57 +01:00
Christoph Oelckers
7cbcbe66c0
- sanitization of temporary file stuff for Timidity++.
...
* do not use the global temp directory. Instead create one in the AppData folder.
* removed lots of unneeded code from tmpfileplus.
* use C++ strings in there.
2017-12-02 17:33:43 +01:00
Christoph Oelckers
f6f17fbfb4
- give tmpfileplus its own RNG.
...
This should not interfere with the global one which can be explicitly seeded.
It also seems a bit pointless to constantly re-seed the RNG for something this inconsequential.
2017-12-02 17:05:39 +01:00
Christoph Oelckers
e78503b770
- removed some debug stuff from tmpfileplus.
2017-12-02 16:54:24 +01:00
Christoph Oelckers
4ca3acb0e3
- made tmpfileplus a .cpp file so that it can access ZDoom's own utility code.
2017-12-02 16:51:53 +01:00
Christoph Oelckers
8627a48b34
- consolidation of 'stat' calls.
...
Since this is a non-standard function it's better kept to as few places as possible, so now DirEntryExists returns an additional flag to say what type an entry is and is being used nearly everywhere where stat was used, excluding a few low level parts in the POSIX code.
2017-12-02 16:07:09 +01:00
Christoph Oelckers
1afc3b48a1
- removed Q_filelength which is no longer being used.
2017-12-02 14:27:49 +01:00
Christoph Oelckers
7d0759e2fa
- handled all other uses of fopen that could reasonably converted to FileReader or FileWriter.
2017-12-02 14:24:28 +01:00
Christoph Oelckers
4003e7ca11
- use FileReader for savegame loading in the menu.
...
- simplify the check for existing files here, since a function for doing just that already existed.
2017-12-02 14:10:42 +01:00
Christoph Oelckers
2ba029ec8d
- fixed potential memory leak in M_VerifyPNG.
...
If the 'takereader' parameter is true, the function must delete the reader if it fails before creating the PNGHandle.
2017-12-02 14:02:51 +01:00
Christoph Oelckers
690e7d8a84
- got rid of M_WriteFile as well for the same reasons as M_ReadFile.
2017-12-02 13:18:20 +01:00
Christoph Oelckers
838e52001c
- got rid of M_ReadFile(Malloc) which werew each used only once in the entire code. These were still using the low level POSIX-style file interface which shouldn't really be used anymore.
...
- let FScanner::OpenFile return an error instead of throwing an exception. The exception was never used anyway aside from being caught right away to be ignored.
2017-12-02 13:09:59 +01:00
Christoph Oelckers
e15b23f132
- use FileWriter for writing zip files (i.e. savegames.)
2017-12-02 12:46:25 +01:00
Christoph Oelckers
14af7818b8
- use FileReader for all operations on external lumps.
2017-12-02 12:38:38 +01:00
Christoph Oelckers
8d26760671
- use FileWriter for 'writemidi' CCMD.
2017-12-02 12:33:58 +01:00
Christoph Oelckers
1af42b3d50
- use FileWriter for the OPL dumper.
2017-12-02 12:31:21 +01:00
Christoph Oelckers
ebf5c5763e
- removed the unused bitmap loading and saving features from hqnx_asm/hqnx_asm_Image.
2017-12-02 12:15:26 +01:00
Christoph Oelckers
623f35073c
- use FileReader consistently for loading cached nodes.
2017-12-02 12:08:28 +01:00
Christoph Oelckers
37dc3211f7
- use FileReader for reading the play list.
2017-12-02 12:02:36 +01:00
Christoph Oelckers
ab58e4acb0
- use FileWriter for the AST dump.
2017-12-02 12:01:55 +01:00
Christoph Oelckers
5e7dfa7cce
- use FileWriter for the Timidity MIDI dumper
2017-12-02 12:01:19 +01:00
Christoph Oelckers
e8735e2782
- use FileWriter to save the statistics file.
2017-12-02 11:59:31 +01:00
Christoph Oelckers
20b8c1ef70
- moved buildtexture.cpp from using stdio-based file IO to FileReader.
2017-12-02 11:57:32 +01:00
Christoph Oelckers
e1edb46bbb
- - let FWadLump use the newly added fdopen function.
2017-12-02 11:56:26 +01:00
Christoph Oelckers
9cc8bab102
- only have one fopen call in the entire FileReader hierarchy
...
This is for an eventual implementation of UTF-8 handling. On Windows this will require replacement of fopen with _wfopen so let's try to keep the number of fopen calls low.
2017-12-02 11:55:50 +01:00
Christoph Oelckers
cbd2fd34a0
- added seeking capabilities to FileWriter class.
2017-12-02 11:51:37 +01:00
alexey.lysiuk
0d05b41f22
Fixed incomplete ACS string pool state after loading of saved game
...
https://forum.zdoom.org/viewtopic.php?t=58571
2017-12-02 11:51:52 +02:00
Magnus Norddahl
a8b79a28c8
- Disable model rendering in the software renderer
2017-11-29 22:18:21 +01:00
Rachael Alexanderson
6c4f6f94f4
- fixed: prevent i_timescale from freezing the game if set to too low a value
2017-11-29 08:41:09 -05:00
Rachael Alexanderson
12a44f5bc9
- prevent nanosecond timer from ever casting into a double
2017-11-29 07:43:17 -05:00
Magnus Norddahl
8cad912db1
- Add r_model_distance_cull to control when models turn into sprites
2017-11-29 01:09:26 +01:00
Magnus Norddahl
b621dccb9c
- Improve weapon hud model in the software renderer
2017-11-29 00:33:37 +01:00
Magnus Norddahl
f9fb4a0a17
- Cull back facing triangles for the span drawers
2017-11-29 00:12:15 +01:00
Magnus Norddahl
fae514923a
- Move depth testing out of span drawers
2017-11-28 23:08:28 +01:00
Magnus Norddahl
01fd404133
- Fix palette drawer crash
2017-11-28 22:03:51 +01:00
Magnus Norddahl
e0defb060d
- Add a slightly faster truecolor model drawer
2017-11-28 21:38:02 +01:00
Magnus Norddahl
d43ac8b9ae
- Add model rendering to the software renderer
2017-11-27 23:47:26 +01:00
Christoph Oelckers
a069949482
- connected reverb menu with its backing data
...
- added an entry to the main options menu to open the reverb editor.
2017-11-26 20:11:14 +01:00
Christoph Oelckers
57058ef727
- removed all remains of the old EAX editor.
2017-11-26 15:23:07 +01:00
Christoph Oelckers
1ed1b42c21
Safety commit.
2017-11-26 14:13:56 +01:00
Christoph Oelckers
78184ad6b5
- more work on reverb menu.
2017-11-26 10:16:21 +01:00
alexey.lysiuk
0667f2ec55
Fixed string format issues reported by GCC/Clang
...
d_net.cpp:2874:25: warning: format specifies type 'int' but the argument has type 'unsigned long long' [-Wformat]
gl/utility/gl_clock.cpp:240:38: warning: format specifies type 'int' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
v_video.cpp:883:71: warning: format specifies type 'unsigned int' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
v_video.cpp:883:80: warning: format specifies type 'unsigned int' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
2017-11-26 09:59:28 +02:00
Christoph Oelckers
3ae5f8c09f
- initial work on a reverb editor based on the menu system.
...
This is to get rid of some ugly Windows code and make this platform independent.
2017-11-25 22:03:18 +01:00
alexey.lysiuk
eeba7a7cdf
Fixed tics to seconds conversion
...
Correct time values are now displayed in HUD
2017-11-25 16:32:53 +02:00
Christoph Oelckers
e43a9aa5b5
- don't let models.cpp include gl_system.h.
2017-11-25 13:56:17 +01:00
Christoph Oelckers
836970f012
- moved the matrix code out of 'gl' because the model code also needs it.
2017-11-25 13:51:09 +01:00
Magnus Norddahl
637a9dff9b
- Rename voxels.cpp to models_voxel.cpp to avoid having two source files with the same name (confuses debuggers and some build tools)
2017-11-25 13:22:59 +01:00
Magnus Norddahl
7bb92812b8
- Move models into r_data
2017-11-25 13:19:00 +01:00
Magnus Norddahl
679f42db78
- Remove model GL dependencies except for the matrix classes
2017-11-25 13:00:44 +01:00
Magnus Norddahl
56477c8f89
- Fix 'Requested invalid render buffer sizes' when executing the reverbedit command from fullscreen
2017-11-25 12:20:00 +01:00
Magnus Norddahl
b25f191e85
- Move shared model code out of the GL renderer
2017-11-25 12:11:57 +01:00
Christoph Oelckers
430ed532ef
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-11-25 11:37:46 +01:00
Christoph Oelckers
87816f811f
- removed windows.h include from a few files which do not need it anymore.
2017-11-25 10:58:33 +01:00
alexey.lysiuk
074a8e4895
Fixed issue with endless waiting for next tic
...
https://forum.zdoom.org/viewtopic.php?t=58426&p=1028622#p1028547
2017-11-25 11:48:38 +02:00
alexey.lysiuk
0f5ff5a5de
Removed obsolete files after timer code refactoring
2017-11-25 11:48:22 +02:00
Magnus Norddahl
a120a4657e
- Apply viewpoint roll
2017-11-24 22:03:46 +01:00
Rachael Alexanderson
6d43c5cdc6
Merge remote-tracking branch 'origin/friendly_window_title'
2017-11-24 14:41:25 -05:00
Rachael Alexanderson
5e29b1c89c
Merge branch 'newtimercode4'
2017-11-24 14:39:58 -05:00
Rachael Alexanderson
c80c2ba635
- added 100% CPU fix provided by Leonard2: https://forum.zdoom.org/viewtopic.php?p=1028500#p1028500
2017-11-24 14:38:55 -05:00
Christoph Oelckers
ed871c3bf8
Merge remote-tracking branch 'remotes/origin/texman_models'
2017-11-24 19:14:08 +01:00
Rachael Alexanderson
297f00aa4b
- fix model rotation some more
...
- a couple compiler warning fixes
2017-11-23 22:37:07 -05:00
Rachael Alexanderson
5181e3ebb2
- rewound time from 2917 to 2017. At least, at this point, we know ZDoom's future is secure.
2017-11-23 22:04:42 -05:00
Rachael Alexanderson
3842071b23
- implemented i_timescale to control the flow of time.
2017-11-23 21:54:04 -05:00
Rachael Alexanderson
1f00810f40
- re-doubled the model rotation code
2017-11-23 21:27:16 -05:00
Rachael Alexanderson
16e6fbf5bf
- commit fix - todo: need to re-double/floatify the model timers again
2017-11-23 21:12:50 -05:00
Rachael Alexanderson
fd5b8cdbf7
Merge remote-tracking branch 'origin/master' into newtimercode4
...
# Conflicts:
# src/gl/models/gl_models.cpp
2017-11-23 21:08:09 -05:00
Magnus Norddahl
00d7dd0c64
- Implement model rendering in softpoly
2017-11-24 00:39:10 +01:00
Magnus Norddahl
f1e7df542f
- Create model renderer abstraction to share more model drawing between renderers
2017-11-24 00:38:52 +01:00
Christoph Oelckers
734f5104dd
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-11-22 21:43:01 +01:00
Christoph Oelckers
978fdfb273
- tested and fixed UMAPINFO parser.
...
Although this looks like it's working with the test file I used it still needs some stress testing!
2017-11-22 21:42:48 +01:00
Magnus Norddahl
e7e9d1a942
- Fixed bug introduced by removing a little bit too much from the rect drawers
2017-11-22 19:02:25 +01:00
Magnus Norddahl
9052ee6bc8
- Added scaled fuzz to softpoly pal drawer
2017-11-22 18:54:49 +01:00
Magnus Norddahl
f04fca75f7
- Add scaled fuzz to softpoly sse2 drawer
2017-11-22 18:46:45 +01:00
Magnus Norddahl
4e4f94db2f
- Implement newer scaled fuzz in softpoly's truecolor non-sse drawer
2017-11-22 06:32:55 +01:00
Magnus Norddahl
0ef8105e6b
- Add missing r_draw.cpp in CMakeLists.txt
2017-11-21 18:57:44 +01:00
Rachael Alexanderson
495fc79fe9
- added dpJudas's drawer fix for the upscaled fuzz drawing
2017-11-21 05:26:46 -05:00
Rachael Alexanderson
505da5bf4f
Merge branch 'master' of https://github.com/coelckers/gzdoom into newtimercode4
2017-11-21 05:23:00 -05:00
Rachael Alexanderson
47e9975e90
- fixed a couple of fixes from the previous commit
2017-11-21 05:20:02 -05:00
Rachael Alexanderson
2bc86b52c8
- fixed a few of the more obvious logic errors
2017-11-21 04:06:24 -05:00
Magnus Norddahl
5532266b14
- Fix softpoly sprite positioning bug
2017-11-20 22:43:44 +01:00
Christoph Oelckers
6389b6b914
- UMAPINFO parser, including some convenience additions to FScanner.
...
Not tested yet!
2017-11-19 23:04:15 +01:00
alexey.lysiuk
cf9a364f71
textures for models
2017-11-19 18:02:14 +02:00
Christoph Oelckers
f0dc619b5b
- fixed bad use of FScanner::GetNumber and GetFloat in code inherited from ZDoomGL.
...
This could lead to bad error messages if some malformed definitions were used.
2017-11-19 15:30:45 +01:00
Rachael Alexanderson
de19efa79d
- trying again: fix shader targets being case sensitive
2017-11-19 04:48:30 -05:00
Rachael Alexanderson
351de94311
- fixed: Accidentally committed in-progress work... again
...
Partial Revert "- fixed: Made shader targets not case sensitive"
This reverts commit 2c24d2e047
.
2017-11-19 04:46:52 -05:00
Rachael Alexanderson
2c24d2e047
- fixed: Made shader targets not case sensitive
2017-11-19 04:41:07 -05:00
Rachael Alexanderson
f1405f68a7
Merge remote-tracking branch 'origin/master' into friendly_window_title
2017-11-18 14:08:33 -05:00
alexey.lysiuk
c2b4efbea0
Fixed applying of brightmaps to overridden textures
...
https://forum.zdoom.org/viewtopic.php?t=58444
2017-11-18 17:07:42 +02:00
raa-eruanna
28d47d463f
- fix linux compile
...
# Conflicts:
# src/posix/sdl/sdlvideo.cpp
2017-11-18 08:20:58 -05:00
alexey.lysiuk
35bb9ba9d3
Implemented setting of window title in Cocoa backend
...
# Conflicts:
# src/posix/cocoa/i_video.mm
2017-11-18 08:19:15 -05:00
Rachael Alexanderson
c3c637a0cc
- set i_friendlywindowtitle to true by default
2017-11-18 08:17:18 -05:00
alexey.lysiuk
80b47cafb4
Fixed detection of the first entry from internal IWADINFO
...
https://forum.zdoom.org/viewtopic.php?t=58333
2017-11-18 14:37:12 +02:00
Rachael Alexanderson
e867d75712
Merge remote-tracking branch 'origin/master' into newtimercode4
2017-11-15 22:33:27 -05:00
Rachael Alexanderson
e418663a26
- fixed: Reverted an accident in a previous commit where I_StartTic() was moved inappropriately. The new location fixed a mouse stutter, however, it causes net desyncs so it cannot be used here.
2017-11-15 22:20:55 -05:00
Rachael Alexanderson
909daadd75
- update more millisecond-storing data structures to u/int64_t to fix possible rollover bugs
2017-11-15 20:33:08 -05:00
Christoph Oelckers
16fa0cba21
- fixed comparison.
...
The timer reset must also occur when the values are equal, meaning they got set during the same millisecond.
2017-11-15 18:02:41 +01:00
Rachael Alexanderson
ab32cb4c88
- track level start time for the shader system, reset the shaders.
2017-11-15 11:06:21 -05:00
Rachael Alexanderson
d2bc24737b
- put in timer resets for the shader system, so that they can continue being passed as floats
2017-11-14 22:46:28 -05:00
Rachael Alexanderson
763222b571
- fixed: high uptime was causing overloads in uint32_t and float structures (float losing loss of precision) - this caused any computer online for more than a few days to experience jankiness with internal animations such as rotations and shader timers. Unfortunately, this sounds the death knell for 32-bit platforms, since uint64_t is now required in time-critical structures, which will hurt performance tremendeously, but 64-bit systems will be unaffected.
2017-11-14 16:15:25 -05:00
Christoph Oelckers
5935e14c09
- exported P_Thing_Warp to ZScript.
2017-11-13 21:00:17 +01:00
Christoph Oelckers
0323f54384
- rename I_FPSTime function.
...
- now that the frame buffer stores its render time, the 'ms' return from I_GetTimeFrac is not needed anymore, we may just as well use the globally stored value instead.
The only feature this value was ever used for was texture warping.
2017-11-13 00:54:32 +01:00
Christoph Oelckers
96e9eadd97
- removed I_MSTime entirely after checking how the wipe code actually works.
...
Since this calls I_WaitVBL, which resets the frame time, it was essentially just like calling a real-time timer anyway and nothing in it required a specific 0-timepoint.
The same applies to the ZScript interface. All it needs is a millisecond-precise timer with no semantics attached.
2017-11-13 00:38:04 +01:00
Christoph Oelckers
2c65f08011
- more timer cleanup
...
* store the frame time in the current screen buffer from where all render code can access it.
* replace some uses of I_MSTime with I_FPSTime, because they should not use a per-frame timer. The only one left is the wipe code but even this doesn't look like it needs either a per-frame timer or a timer counting from the start of the playsim.
2017-11-13 00:28:43 +01:00
Christoph Oelckers
e94109f1c3
- Inside the renderer, use only the time value being passed to RenderView.
...
The voxel rotation code of the software renderer and R_SetupFrame still called I_FPSTime directly.
2017-11-12 23:53:46 +01:00
Christoph Oelckers
f54475b1f1
- I_FPSTime may not return the time at frame start.
...
This is used for real-time profiling and as such needs to return the current time or most of its uses will break.
2017-11-12 23:39:48 +01:00
Christoph Oelckers
93e9c383fa
- get the timer used for animation only once at the very beginning of the frame and pass it on to the renderer to avoid any dependencies on the timer's implementation.
2017-11-12 18:51:11 +01:00
Christoph Oelckers
0289d9ad9f
- the timing compensation which was necessary for millisecond-precise timing is not needed anymore with nanoseconds.
2017-11-12 13:49:53 +01:00
alexey.lysiuk
5d83ee5e89
Exposed String.Remove() function to ZScript
...
https://forum.zdoom.org/viewtopic.php?t=58402
2017-11-12 14:44:21 +02:00
Magnus Norddahl
efa7c3cacf
- Fix typo in I_FPSTimeNS
2017-11-12 13:22:52 +01:00
Magnus Norddahl
e3141a4af3
- Upgrade timer code to use nanosecond accuracy internally
2017-11-12 12:57:19 +01:00
Christoph Oelckers
0db0f2f7b9
- removed redundant POSIX version of I_WaitVBL
2017-11-12 12:12:51 +01:00
Christoph Oelckers
e50b012c87
- fixed: Model rotation should use the time of the current frame's start, not the time of the time of processing the particular actor.
...
Reading the time directly would result in different values for different viewpoints in a scene or for different objects in the same scene which is not how this is supposed to work.
2017-11-12 12:04:11 +01:00
alexey.lysiuk
285834ae5b
Fixed return state of player entered event
...
https://forum.zdoom.org/viewtopic.php?t=58433
2017-11-12 11:03:08 +02:00
Christoph Oelckers
d9808e6d68
- there were still some old definitions left...
2017-11-12 10:02:29 +01:00
Christoph Oelckers
6bd76d6b5a
- fixed compilation in debug mode.
...
- moved timer definitions into their own header/source files. d_main is not the right place for this.
- removed some leftover cruft from the old timer code.
2017-11-12 09:06:40 +01:00
Magnus Norddahl
7d63c3324d
- Fix macOS compile errors
2017-11-12 03:51:37 +01:00
Magnus Norddahl
307d8931d8
- Switch to C++11 steady clock
...
- Move the C++11 implementation to d_main
- Remove the platform specific timer implementations
2017-11-12 03:12:22 +01:00
Magnus Norddahl
090943eaa4
- Fix freeze interpolation bug
2017-11-11 17:28:38 +01:00
Magnus Norddahl
28401cd674
- Rewrite win32 game tick timer backend to use performance counters and only calculate values once per frame
2017-11-11 17:28:20 +01:00
Rachael Alexanderson
cdf0733c8b
- added latching CVARs to CVARINFO
2017-11-11 09:37:41 -05:00
Rachael Alexanderson
5716dfe050
- put limits on A_SoundVolume
2017-11-10 08:21:28 -05:00
alexey.lysiuk
0e706bfecf
Use tmpfileplus() instead of tempnam()
...
Finally get rid of security or deprecated warnings cause by tempnam() function usage
2017-11-07 11:50:07 +02:00
alexey.lysiuk
e6c9ccf3a1
Changed tmpfileplus() to our needs
...
Removed exclusive flag, made it C++ friendly, replaced unlink() with remove()
2017-11-07 11:13:53 +02:00
alexey.lysiuk
e60c6d35c3
Added tmpfileplus 2.0.0
...
https://www.di-mgt.com.au/c_function_to_create_temp_file.html
https://www.di-mgt.com.au/tmpfileplus-2.0.0.zip
2017-11-07 11:13:53 +02:00
Chris Robinson
f353f8b5aa
Improved OpenGL profile selection in SDL backend
...
https://forum.zdoom.org/viewtopic.php?t=56852
2017-11-07 11:05:06 +02:00
Major Cooke
d422392b94
Extended LineAttack() with offsets and new flags
...
Added forward and side offsets for LineAttack() function
Added absolute offset and absolute position flags for LineAttack() function
2017-11-07 11:02:54 +02:00
alexey.lysiuk
4beefb7007
Removed warning for uninitialized variables in ZScript
...
This reverts commit 8104ef5189
2017-11-06 15:38:28 +02:00
Magnus Norddahl
d4ebe51e83
- Place the HUD model correctly in the world so that shader light calculations work
2017-11-05 15:35:03 +01:00
Magnus Norddahl
23e5d81746
- Implement VSMatrix::inverseMatrix
2017-11-05 15:32:42 +01:00
alexey.lysiuk
61ead4f470
Better STL compatibility for array iterator
...
Extended iterator with types and functions required to use array objects in STL algorithms
2017-11-05 15:20:25 +02:00
alexey.lysiuk
274951839a
Removed unused parameter from several functions in FStateDefinitions class
...
src/p_states.cpp:724:54: warning: parameter ‘actor’ set but not used [-Wunused-but-set-parameter]
https://forum.zdoom.org/viewtopic.php?t=58364
2017-11-05 15:20:25 +02:00
Magnus Norddahl
bd08568b90
- Fix wrong math for model/light distance check
2017-11-05 13:28:56 +01:00
Christoph Oelckers
fafc636476
- allow allocating constructor of TArray to also reserve the allocated data and use this to properly handle the precalc arrays for the texture resizer.
2017-11-03 17:27:32 +01:00
alexey.lysiuk
8104ef5189
Added warning for uninitialized variables in ZScript
...
https://forum.zdoom.org/viewtopic.php?t=57868
2017-11-03 16:23:41 +02:00
alexey.lysiuk
dac5777a70
Removed obsolete declarations from codegen.h
2017-11-03 12:44:28 +02:00
alexey.lysiuk
81ea9fb372
Added runtime check for negative array indices in VM
...
https://forum.zdoom.org/viewtopic.php?t=57886
2017-11-02 18:01:13 +02:00
alexey.lysiuk
57de598e48
Added implicit scope for if/else, while and do/while statements in ZScript
...
Scope is added only for variable or constant definition so it will no longer leak to outer scope
https://forum.zdoom.org/viewtopic.php?t=57848
2017-11-02 17:10:54 +02:00
alexey.lysiuk
587f6f0f91
Added wait for debugger feature to Cocoa backend
...
Use -wait_for_debugger command line switch to display message box on startup
It's available in Debug configuration only
2017-11-02 14:49:08 +02:00
alexey.lysiuk
de7d8995d5
Added string representation of 'static const' token
...
No more 'Unknown(-141)' in 'Expecting ...' error message
2017-11-02 14:45:35 +02:00
alexey.lysiuk
62e91b23bd
Extended String.LastIndexOf() with endIndex parameter
...
https://forum.zdoom.org/viewtopic.php?t=57326
2017-11-01 15:24:05 +02:00
raa-eruanna
7d4f8af245
- fixed compile on Linux and (maybe?) Mac
2017-11-01 04:13:10 -04:00
Rachael Alexanderson
d313ef4b61
- de-init DoomStartupInfo on 'restart' ccmd so that the window title always contains the correct game information.
2017-10-31 20:00:58 -04:00
Rachael Alexanderson
d16ad3dcb5
- added I_FriendlyWindowTitle cvar, which takes the current game/mod name and uses it as a default window title.
2017-10-31 19:47:56 -04:00
alexey.lysiuk
415ed57713
Added Wads.CheckNumForFullName() to ZScript
...
https://forum.zdoom.org/viewtopic.php?t=57814
2017-10-29 15:11:49 +02:00
alexey.lysiuk
2f45218f70
Added Wads.ReadLump() to ZScript
...
https://forum.zdoom.org/viewtopic.php?t=57814
2017-10-29 11:36:22 +02:00
alexey.lysiuk
91fda180de
Added Wads.FindLump() to ZScript
...
https://forum.zdoom.org/viewtopic.php?t=57814
2017-10-29 11:36:22 +02:00
alexey.lysiuk
c4865d2bb6
Exposed string split functionality to ZScript
...
https://forum.zdoom.org/viewtopic.php?t=58114
2017-10-28 11:44:12 +03:00
alexey.lysiuk
3b3f2e20cc
Added ability to split FString on tokens
...
https://forum.zdoom.org/viewtopic.php?t=58114
2017-10-28 11:44:12 +03:00
alexey.lysiuk
40a348b1f1
Fixed potential crash in resolving of multiple assignment
...
https://forum.zdoom.org/viewtopic.php?t=58055
https://forum.zdoom.org/viewtopic.php?t=58237
2017-10-27 18:15:24 +03:00
Rachael Alexanderson
2fd5d0da54
- improve speed for ARMv7 processors by specifying hardware float calculations, and tuning it specifically for the Cortex-a7 CPU (for Raspberry Pi 2).
2017-10-25 09:31:55 -04:00
alexey.lysiuk
5f7a06c66e
Fixed non-portable usage of __solaris__ preprocessor definition
...
GCC: this use of "defined" may not be portable [-Wexpansion-to-defined]
Clang: macro expansion producing 'defined' has undefined behavior [-Wexpansion-to-defined]
2017-10-24 15:32:43 +03:00
alexey.lysiuk
f40a31409d
Added ability to get texture name from script
...
Use TexMan.GetName(TextureID tex) member function
2017-10-24 11:11:33 +03:00
Rachael Alexanderson
66773b6a1a
- added 'classicflight' user cvar which allows players to move forward and backward without pitch when flying
2017-10-23 12:16:02 -04:00
alexey.lysiuk
50d39771c0
Fixed out of bound read in zip file loader
2017-10-23 12:31:39 +03:00
alexey.lysiuk
cb982ec313
Use FString::Back() when possible
...
Changed usages of str[str.Len() - 1] to str.Back()
2017-10-23 11:55:20 +03:00
alexey.lysiuk
d526ddf7ae
Extended FString class with functions to get first and last characters
2017-10-23 11:49:54 +03:00
alexey.lysiuk
3e43572a87
Added move semantics to FString class
2017-10-23 11:48:04 +03:00
alexey.lysiuk
7d97963005
Reduced code duplication in FString class
...
Moved resetting of string data to null value into own function
2017-10-23 11:45:58 +03:00
David Carlier
b871b1898d
OpenBSD build fix.
...
- No timidity user defined parameters supported.
- Shared libraries versioning policy differs on OpenBSD.
2017-10-21 14:49:41 -04:00
alexey.lysiuk
724d711d1f
Fixed a few cases when IWAD was checked by hardcoded index
2017-10-21 11:10:36 +03:00
alexey.lysiuk
13584b9a9d
Fixed applying of compatibility settings for IWADs
...
https://forum.zdoom.org/viewtopic.php?t=58239
2017-10-21 10:47:13 +03:00
Dugan Chen
4f5b459703
Remove SHARE_DIR from FileSearch.Directories for *nix
2017-10-15 07:56:09 -04:00
Rachael Alexanderson
07c3291262
- fixed: removed erroneous 'defaultrespawntime' macro double so that there's only one
2017-10-14 17:44:17 -04:00
Rachael Alexanderson
4fb355d8da
- added 'startuptype' to iwadinfo, allowing to change the game startup screen with custom iwads
2017-10-14 17:41:43 -04:00
Rachael Alexanderson
30c6cf82ca
- added ability to change slider color using mapinfo's gameinfo
2017-10-14 13:05:15 -04:00
Rachael Alexanderson
0ccd388d91
- reverted the texture flip from the previous commit
2017-10-12 12:44:00 -04:00
Rachael Alexanderson
1b6f77a473
- fixed: inverted vertically texture uniforms for custom post-process shaders, and also changed their input format to BGRA to match the standard.
2017-10-12 11:54:56 -04:00
Dugan Chen
2e4ffbb1d1
If *nix, add default gzdoom.pk3 directory t File.Search paths
2017-10-12 10:46:26 -04:00
Leonard2
80701927e8
Fixed: don't interpolate view movements if a key press didn't result in any changes.
2017-10-11 19:01:37 +02:00
Rachael Alexanderson
7d67d5e998
- fixed possible erroneous comparison, also fixed a couple compiler warnings in the process
2017-10-10 07:23:05 -04:00
Rachael Alexanderson
fc0ae896b2
- remove vid_tft and vid_nowidescreen and associated menu option. Their functionality was supersceded and extended by vid_aspect==3 (which has the same effect as setting both to true anyhow), and it was mostly just redundant.
2017-10-10 06:38:07 -04:00
Rachael Alexanderson
69abf095c9
- added vid_cropaspect. This cvar turns vid_aspect into a letterboxing function that will crop the unused sides of the screen away, instead of stretching it. Requires one of the non-legacy OpenGL framebuffers to work.
2017-10-07 20:18:37 -04:00
Rachael Alexanderson
44373b414f
- bump for 3.3pre
2017-10-07 19:36:42 -04:00
alexey.lysiuk
65966badb2
Fixed crash on attempt to register IDs for undefined class
...
https://forum.zdoom.org/viewtopic.php?t=46670&start=16#p1021785
2017-10-07 16:30:49 +03:00
alexey.lysiuk
57ecc4ce30
Removed the last deprecated method in Cocoa backend
...
src/posix/cocoa/i_input.mm:482:36: warning: 'convertScreenToBase:' is deprecated: first deprecated in macOS 10.7 - Use -convertRectFromScreen: instead [-Wdeprecated-declarations]
2017-10-07 15:13:59 +03:00
alexey.lysiuk
7a43fa6ed7
Cocoa window uses OpenGL 2.1 for software renderer
2017-10-07 15:13:41 +03:00
alexey.lysiuk
557958577b
Removed all code needed to support macOS earlier than 10.7 Lion
2017-10-07 15:11:30 +03:00
AntiBlueQuirk
9e07babde5
Fixed flags when demoting interactive portals
...
Interactive portals demoted to visual due to not having a back-sector would not have their interactive flag properly cleared.
2017-10-03 08:15:14 +02:00
AntiBlueQuirk
4884a1f785
Fixed bugs with Line_PortalSetTarget and added more portal geometry warnings
...
- A bug exists where portals that have been deactivated with Line_PortalSetTarget cannot be reactivated, even if given a valid target.
- Another bug exists where portals that were created in an inactive state (using a target line tag of 0) could never be activated. (Even with the above bugfix.)
- Linked portals that have been demoted to teleport portals because they do not have a return portal now emit a warning.
- Portals that are supposed to be traversable, but do not have back-sector now demote to visual portals and emit a warning, because nothing could ever possibly traverse them anyway.
2017-10-03 08:15:14 +02:00
Chris Robinson
bbaec90f61
Fix speed of sound and unit scale
2017-10-01 07:39:26 +02:00
Magnus Norddahl
e71e4b6dc8
- Improved transfer heights support in softpoly
2017-09-30 23:58:11 +02:00
Magnus Norddahl
0ee021a972
- Improve transfer heights support in softpoly
2017-09-29 05:23:17 +02:00
Rachael Alexanderson
3031d48bfb
- added TID to actorlist and similar commands output
2017-09-28 11:34:01 -04:00
alexey.lysiuk
48f9e53580
Added better error message for invalid class/struct member
...
https://forum.zdoom.org/viewtopic.php?t=57959
2017-09-24 10:25:05 +03:00
Magnus Norddahl
cfc1bfd1e2
- Fixed FxPow::Resolve not specifying the ValueType
2017-09-24 01:15:58 +02:00
Magnus Norddahl
d7164ba4e1
- Don't apply dynamic light to fullbright sprites
2017-09-23 16:22:22 +02:00
Magnus Norddahl
5ffd26abeb
- Add dynamic lights to the non-sse true color drawer
2017-09-23 15:51:40 +02:00
Magnus Norddahl
f3ba92f03c
- Add dynamic light to sprites
2017-09-23 14:14:59 +02:00
JimmyZD
abc8e4deac
Added four text colors: ice, fire, sapphire, teal
...
https://forum.zdoom.org/viewtopic.php?t=57942
2017-09-23 11:56:16 +02:00
alexey.lysiuk
f174111128
Fixed read beyond buffer boundary during font color parsing
...
Printing of string that ends with '\c' led to undefined behavior
Example: 'echo \c' in console
2017-09-23 11:57:06 +03:00
Magnus Norddahl
789214200c
- Attenuated lights support
2017-09-23 02:27:39 +02:00
AraHaan
e15a84f062
Changed Fatal Error Dialog title.
...
This is to match all the parts that says GZDoom.
2017-09-22 19:13:08 +02:00
Magnus Norddahl
ca2ef805b8
- Implement the affine part of the dynamic lights in the softpoly TC SSE2 drawer
2017-09-22 00:57:51 +02:00
Magnus Norddahl
94a33229cc
- Remove unused function argument
2017-09-22 00:56:14 +02:00
Magnus Norddahl
dd8a114bb8
- Initial dynamic light support for softpoly
2017-09-21 05:39:16 +02:00
Magnus Norddahl
afdeed305b
- Fix typo
2017-09-21 04:39:40 +02:00
Magnus Norddahl
59ee89b622
- Make the relationship between TriMatrix, TriVertex and ShadedTriVertex more clean
2017-09-21 01:21:21 +02:00
Magnus Norddahl
b6b78176d2
- Add FVector4 and DVector4 to the family of vectors
2017-09-21 00:42:06 +02:00
David Carlier
9f742f8aaa
fixing wrong free calls
2017-09-17 11:34:46 +03:00
alexey.lysiuk
e081a0d810
Fixed crash on attempt to get actor state named 'None'
...
https://forum.zdoom.org/viewtopic.php?t=57885
2017-09-17 11:25:55 +03:00
Rachael Alexanderson
e6b6cb354b
- fixed: playersprite in the classic software renderer was acting oddly with a forced aspect ratio, similar to the bug fixed in ac566f4
2017-09-16 16:09:00 -04:00
alexey.lysiuk
1eda8aba6b
Fixed name comparison in checking of IWADINFO lump
...
https://forum.zdoom.org/viewtopic.php?t=57835
2017-09-16 17:02:08 +03:00
Magnus Norddahl
afab50b489
- Added subdivision coverage testing and an alternative triangle renderer for speed comparison
2017-09-16 15:48:39 +02:00
alexey.lysiuk
52634dbec1
Fixed compilation warning reported by GGC/Clang
...
src/w_wad.cpp:284:20: warning: comparison of integers of different signs: 'unsigned int' and 'int' [-Wsign-compare]
2017-09-16 12:54:09 +03:00
Rachael Alexanderson
72054fb5e2
- implemented pixelratio for the classic software renderer
2017-09-16 05:26:18 -04:00
Rachael Alexanderson
3531f3e285
- Use a FreeDoom sprite for deadguy.bmp - much better than a red circle with an exclamation point on it.
2017-09-16 04:16:14 -04:00
Rachael Alexanderson
ae4dad64f7
- fixed: Do not attempt to look up negative IWAD indices.
2017-09-13 18:23:53 -04:00
Rachael Alexanderson
765646ee1c
- fixed: Changed IWAD_FILENUM to a dynamic lookup.
2017-09-13 04:19:03 -04:00
Rachael Alexanderson
ffa11dec54
- added bounds checker for all calls to vid_scalemode code - apparently it was possible to start gzdoom with vid_scalemode==8 from previous valid values and cause it to crash.
2017-09-13 02:45:37 -04:00
Rachael Alexanderson
f1676c3d75
Merge branch 'archive_split'
2017-09-12 19:27:22 -04:00
Rachael Alexanderson
ac566f4a84
- fixed: PlayerSprite in softpoly was not calculated correctly. Sprite will now not go all sorts of crazy places when you enable alternative scaling or forced aspect modes.
2017-09-12 15:56:35 -04:00
Rachael Alexanderson
8454e09694
- fixed: I was using the wrong check to determine which renderer was in use. Ooops. It now checks for the actual (active) renderer rather than the state of vid_glswfb
2017-09-12 14:32:29 -04:00
Rachael Alexanderson
1e4d7534c4
- remove gl_legacy_mode check in the glswfb
2017-09-12 08:57:27 -04:00
Rachael Alexanderson
79fc219afd
- allow OpenGL 3.0 MESA drivers to use vid_glswfb
2017-09-12 08:18:22 -04:00
Magnus Norddahl
d0fbdd1314
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-09-12 02:40:29 +02:00
Magnus Norddahl
70220fb4cc
- Slightly improve softpoly opaque pass performance
2017-09-12 02:40:09 +02:00
alexey.lysiuk
f5f7cd9fed
Fixed broken FOV in SetCameraToTexture() ACS function
2017-09-11 12:22:22 +03:00
nashmuhandes
d80f9634e3
Change default shadowmap quality to 512 at dpJudas's advice ( https://forum.zdoom.org/viewtopic.php?p=1016143#p1016143 )
2017-09-10 12:46:55 -04:00
nashmuhandes
3ff1597640
Change minimum shadowmap quality to 128.
2017-09-10 12:46:55 -04:00
Rachael Alexanderson
4b82bb50df
- removed scale resolutions and added vid_scalefactor to replace them.
2017-09-10 12:29:07 -04:00
Magnus Norddahl
0924cc3f0f
- Fix crash when switching levels
2017-09-10 17:11:17 +02:00
Magnus Norddahl
4d671fb618
- Improve softpoly culling performance
2017-09-10 16:29:57 +02:00
Rachael Alexanderson
432afd9edf
- privatized the namespace in r_videoscale.cpp completely
2017-09-10 09:50:49 -04:00
Rachael Alexanderson
86a66cd554
- refactored r_videoscale.cpp to use a table.
...
- reordered vid_scalemode modes to be a little neater, having static modes and scalar modes separate, with a buffer in between so new modes can be added in the future without disrupting the current order.
2017-09-10 09:41:03 -04:00
Chris Robinson
666198dec8
Don't allow Timidity++ pipes less than 20ms
...
This prevents Timidity++ from playing externally, so it now always goes through
the sound system. Aside from the issues relating to controlling playback, that
functionality has been busted for who knows how long anyway since Open() always
tries to create a pipe and sound stream regardless of the calculated size.
2017-09-10 07:25:29 -04:00
Chris Robinson
1b1f8d605f
Add menu entries for selecting the timidity config
2017-09-10 07:25:29 -04:00
Chris Robinson
49df5a7f16
Add a cvar for the timidity++ config file
2017-09-10 07:25:29 -04:00
Chris Robinson
8f8c2ef2ef
Build Timidity++ args separately on non-Windows
...
Rather than building a command line that's going to be manually split into
individual arguments passed to execvp, build the individual arguments directly.
2017-09-10 07:25:29 -04:00
Chris Robinson
5b3fbfde6d
Read all data from the Timidity++ pipe
...
For non-Windows systems, read() may be non-blocking and can return less than
the requested amount if the timidity process hasn't written enough audio yet.
2017-09-10 07:25:29 -04:00
Rachael Alexanderson
67936a2630
- added: m_showinputgrid == '-1' allows for on-screen keyboard to never show, even when using a mouse
2017-09-10 07:04:00 -04:00
Rachael Alexanderson
69b85753f2
Merge remote-tracking branch 'origin/master' into archive_split
2017-09-10 05:57:56 -04:00
Magnus Norddahl
5ab0f34aca
- Don't draw 3d floor walls that have zero height or less
2017-09-10 02:18:07 +02:00
Magnus Norddahl
4706c56690
- Fix portals crashing softpoly
2017-09-10 02:17:18 +02:00
Rachael Alexanderson
76f805062a
- updated icon for linux/unix
2017-09-09 13:18:47 -04:00
Rachael Alexanderson
bcc5830467
- don't call BaseFileSearch inside of d_iwad.cpp since it is supposed to be treated as a private function.
2017-09-09 06:37:08 -04:00
Rachael Alexanderson
9a7f727aa4
- fixed: zd_extra.pk3 now loads before the iwad.
2017-09-09 06:21:40 -04:00
Rachael Alexanderson
9d2b114657
- rename gzdoom_optional_assets.pk3 to zd_extra.pk3
2017-09-09 05:54:06 -04:00
alexey.lysiuk
8a37356c33
New .icns macOS icon from the same images as Window .ico
2017-09-09 11:28:33 +03:00
Rachael Alexanderson
7cc073b7d2
- Added an .ico file compiled by Kinsie from an image set on the forum.
2017-09-07 17:18:26 -04:00
Rachael Alexanderson
f71a6e249d
- remove unsafe math operations for armv8
2017-09-07 15:56:00 -04:00
Rachael Alexanderson
cfdfd7acef
- remove unsafe math operations for armv8
2017-09-07 15:55:39 -04:00
Rachael Alexanderson
6f98c5e8fb
- replace potentially infringing static EXE assets (including icons) with ones from GZDoom-GPL
2017-09-07 04:13:30 -04:00
Rachael Alexanderson
b7f6126bcd
- First commit of archive split - preserve original assets
...
- Added: d_main.cpp now searches for "gzdoom_optional_assets.pk3" - this can be changed in version.h for fork authors.
- Updated forum links to point to ZDoom.org.
2017-09-07 04:08:09 -04:00
Magnus Norddahl
7a1274ab76
- Collect all PVS information first so that processing the individual sectors can be done on multiple threads
2017-09-07 00:34:09 +02:00
alexey.lysiuk
85ffeebb96
Fixed IWAD detection for case-sensitive file systems
...
https://forum.zdoom.org/viewtopic.php?t=57770
2017-09-05 10:33:07 +03:00
Magnus Norddahl
dd0bc02eec
- Convert PolyTranslucentObject to be a base class for all the different forms of translucent objects to be drawn
2017-09-02 18:17:55 +02:00
Magnus Norddahl
23aebaecc6
- Cleaned up some copyright statements
...
- Removed unused cull argument from some functions
2017-09-02 17:14:02 +02:00
Magnus Norddahl
0f0cf7261e
- Remove unused code
2017-09-02 15:02:06 +02:00
nashmuhandes
7195af40f8
Bump DEMOGAMEVERSION due to changes to DEM_FOV and DEM_MYFOV commands.
2017-09-02 09:57:48 +02:00
nashmuhandes
3c39d51c83
Fixed a wrong variable type declaration.
2017-09-02 09:57:48 +02:00
nashmuhandes
c885b6aa35
Send player FOV across the network as floatig point.
2017-09-02 09:57:48 +02:00
Christoph Oelckers
2a291165ee
- fixed: For original Hexen, executing a death special should not clear it. This addresses the bell in HexDD's Badlands being rung before it is ready to use. This also removes the redundant special handling in the ZBell actor.
2017-09-02 09:16:26 +02:00
Christoph Oelckers
eade38fb09
- fixed crash when defining a global constant which references a class member constant in its value.
2017-09-02 08:14:50 +02:00
Christoph Oelckers
12ad7ee933
Do not call DoEffect when predicting player movement.
2017-09-02 07:57:03 +02:00
nashmuhandes
f96f71044f
Change camera texture FOV to doubles.
2017-09-02 07:44:38 +02:00
Magnus Norddahl
b80bf6930a
- Translucent 3d floor plane support
2017-09-02 02:51:09 +02:00
Magnus Norddahl
393373a661
- Clean up plane rendering code slightly
2017-09-02 02:12:29 +02:00
Magnus Norddahl
fbaa3e7cb0
- Removed unused cull function argument
2017-09-02 01:34:36 +02:00
Magnus Norddahl
e851734b33
- Added translucent 3d floor walls support
2017-09-02 01:24:57 +02:00
Magnus Norddahl
b3916c1d01
- Add FF_UPPERTEXTURE and FF_LOWERTEXTURE support to softpoly
2017-09-02 00:35:48 +02:00
alexey.lysiuk
122f5d9515
Fixed crash caused by script number collision of ACS typed scripts
...
Wrong typed script can be picked when the same ACS script number is used for different script types from multiple behavior lumps
Although script in particular state is discarded and null pointer could be dereferenced
https://forum.zdoom.org/viewtopic.php?t=57718
2017-08-31 11:40:16 +03:00
alexey.lysiuk
ca55d8993f
Added Actor.A_SoundVolume(int slot, double volume) function to ZScript
...
https://forum.zdoom.org/viewtopic.php?t=57594
2017-08-31 09:45:09 +03:00
Magnus Norddahl
77faab5a75
- Fixed overflow for precise blend mode
2017-08-29 19:25:05 +02:00
alexey.lysiuk
20d7c01fc8
Fixed Infinity and NaN floating point values formatting as string
...
https://forum.zdoom.org/viewtopic.php?t=57706
2017-08-29 11:39:50 +03:00
nashmuhandes
541fac8c6b
Cleaned up and shorted the code for R_SetFOV.
2017-08-28 21:14:11 -04:00
nashmuhandes
30966ef951
Use a fallback FOV for the R_SetFOV call.
2017-08-28 21:14:11 -04:00
nashmuhandes
42db31b816
Added per-actor camera FOV.
2017-08-28 21:14:11 -04:00
Magnus Norddahl
27dfebdb7d
- Fix plane light levels used when a sector has a lightlist
2017-08-29 01:22:10 +02:00
Magnus Norddahl
293f62fcd2
- Striped wall (lightlist) support
...
- Add two extra clipping planes to poly backend
- Make ShadedTriVertex internal to drawer backend
2017-08-27 23:26:54 +02:00
Magnus Norddahl
8c146e4e71
- Transfer light support
2017-08-27 17:27:49 +02:00
Magnus Norddahl
45388d8a31
- Clip decals to the wall part
2017-08-27 17:18:39 +02:00
Christoph Oelckers
948e50e458
- fixed: The struct field compiler did not check for forward declared type references that hadn't been resolved yet.
2017-08-27 12:31:47 +02:00
Christoph Oelckers
485c4c71b5
- fixed: When stepping through a sector portal and touching a two sided line on the opposite side, its opening must be used, regardless of the FFCF_NOFLOOR flag.
2017-08-27 10:36:34 +02:00
Christoph Oelckers
e424ef63f2
- fixed: Sprites drawn in the opaque pass still need to set their texture mode so that they can be drawn with STYLE_Stencil.
2017-08-27 09:58:25 +02:00
Christoph Oelckers
ca47b138be
- fixed missing check for bad IWADs.
2017-08-27 09:57:37 +02:00
Christoph Oelckers
2e670ae71d
- fixed: When offsetting the projectile for testing, P_CheckMissileSpawn must also reset the projectile's sector to its new location.
...
If this isn't done the portal checks may fail and create incorrect positioning info.
2017-08-27 09:16:04 +02:00
Mike Swanson
1bc8fe7312
Add GOG path for Doom 3: BFG Edition
2017-08-26 09:01:02 +02:00
alexey.lysiuk
fae52d398b
Properly handle VM abort exception when occurred in menu
...
https://forum.zdoom.org/viewtopic.php?t=57677
2017-08-25 15:36:06 +03:00
alexey.lysiuk
7b98fdb910
Added ToInt() and ToDouble() functions to ZScript string
...
https://forum.zdoom.org/viewtopic.php?t=57678
2017-08-25 15:09:18 +03:00
Magnus Norddahl
b9dc06a4c8
- Fix crash in legacy and deferred light paths
2017-08-21 18:42:07 +02:00
alexey.lysiuk
2375823055
Adapted Cocoa IWAD picker to recent changes in IWAD loading
2017-08-20 12:35:40 +03:00
Christoph Oelckers
cc3e36cfdc
- reinstate '.wad' default extension for -iwad parameter.
2017-08-20 10:50:19 +02:00
Christoph Oelckers
2e845584c3
- removed the Linux specific handling for adding upper- and lowercase variants of the IWAD names to the list. Since the new code is doing case insensitive comparisons with a directory scan this is no longer needed to find the files.
2017-08-20 09:37:13 +02:00
Christoph Oelckers
62cbddb7d2
- fixed comparison with previously loaded IWAD. There still was an unnecessary call to ExtractFileBase in there which mangled the name.
2017-08-20 09:28:36 +02:00
alexey.lysiuk
cafd1ca26e
Fixed compilation of non-Windows targets
2017-08-20 09:50:51 +03:00
Christoph Oelckers
a6d09596cf
- this shouldn't have gotten reverted.
2017-08-20 08:03:48 +02:00
Christoph Oelckers
9878477612
Revert "- fix linux compile"
...
This reverts commit b8c0e78c91
et al.
Instead, use the already provided access function I_FindName to get the file name from findstate_t.
Also made the contents of findstate_t private so that use of the access functions is required to retrieve the information and direct access triggers a compile error.
2017-08-20 08:01:41 +02:00
Rachael Alexanderson
1ee3239f9e
- fixed compile on Clang
2017-08-19 22:57:48 -04:00
Rachael Alexanderson
b7d26b3fa1
- fixed Linux IWAD search thanks to a suggestion by Chris on the forum. Moved the search macros to i_system.h for both platforms. Neither are compatible with the other. This can be improved upon later, but for now, at least the major compile issue is fixed.
2017-08-19 22:10:45 -04:00
raa-eruanna
b8c0e78c91
- fix linux compile
2017-08-19 17:32:10 -04:00
Christoph Oelckers
f3d31e055f
- print the version at the start of the log.
2017-08-19 20:13:12 +02:00
Christoph Oelckers
cdff5bdc08
- rewrite of the IWAD loading mechanism.
...
The old code went through a list of predefined file names and looked each of them up in a list of predefined directories until it found a match. This made it nearly impossible to add custom IWAD support because the list of valid file names could not be extended.
This has now been switched around to run a scan for matching files on each given directory. With this approach it can look for *.iwad and *.ipk3 as IWAD extensions as well and read an IWADINFO out of these files that can be added to the internal list of IWADs, making it finally possible to define custom IWADs without having to add them to the internal list.
(This isn't fully tested yet so some errors may still occur.)
2017-08-19 19:30:48 +02:00
Magnus Norddahl
2f5535dbca
- Fix HOM for Line_Horizon specials when used with a skybox
2017-08-19 14:32:34 +02:00
Rachael Alexanderson
45d5eac6ad
- fix last commit - somehow it pushed an old version of the fix (yet again?...) - this is the proper fix.
2017-08-19 06:03:26 -04:00
Rachael Alexanderson
dae83f989b
- fixed: changing 'uiscale' did not always update the screen size properly.
2017-08-19 05:58:04 -04:00
alexey.lysiuk
69e7bb57d4
Fixed VM abort with null activator for SecretTrigger object
...
https://forum.zdoom.org/viewtopic.php?t=57612
2017-08-19 11:19:29 +03:00
alexey.lysiuk
ec42e30614
Fixed compilation warning reported by Clang
...
src/polyrenderer/scene/poly_wall.cpp:166:15: warning: '&&' within '||' [-Wlogical-op-parentheses]
2017-08-19 11:18:52 +03:00
Rachael Alexanderson
1cddd1efaf
- RFF_UNCLIPPEDTEX is no longer supported in SoftPoly.
2017-08-18 23:04:11 -04:00
Magnus Norddahl
05ca52d693
- Fix texture coordinates for 3d floor walls
2017-08-19 00:53:41 +02:00
Rachael Alexanderson
b8ab626609
- add sloped 3D floor support to the poly renderer's GetCaps()
2017-08-18 18:33:19 -04:00
Rachael Alexanderson
8a7090b4b7
Revert "- In software rendering, lights now check if they are too far above or below a certain plane before rendering. An example of this is in unloved.pk3 where in map02, some lights are above the ceiling."
...
- fixed accidental QZDoom rename
This reverts commit eb425f206a
.
2017-08-18 18:19:39 -04:00
Rachael Alexanderson
eb425f206a
- In software rendering, lights now check if they are too far above or below a certain plane before rendering. An example of this is in unloved.pk3 where in map02, some lights are above the ceiling.
2017-08-18 18:14:43 -04:00
Magnus Norddahl
dd6e0b63f2
- Fix typo in pal drawers that caused rendering errors for non-64x64 flats
2017-08-18 21:12:44 +02:00
Magnus Norddahl
c144eefdad
- Draw sloped 3d floors
2017-08-18 20:19:17 +02:00
alexey.lysiuk
54abe5f5d4
Fixed handling of default arguments in Actor.GiveSecret()
2017-08-18 11:22:18 +03:00
Magnus Norddahl
8034793193
- Wrap midtex support
2017-08-17 23:14:02 +02:00
Magnus Norddahl
c2fa360bbc
- Improve 3d floor and underwater rendering
2017-08-17 22:34:23 +02:00
Magnus Norddahl
7993ad987c
- Fix texture coordinates for lines split into multiple segments in softpoly
2017-08-17 20:54:44 +02:00
Magnus Norddahl
3cf5fb45ae
- Add camera extra light to flats
2017-08-17 00:28:58 +02:00
Magnus Norddahl
122c56f005
- Add fog boundary support to softpoly
2017-08-17 00:10:43 +02:00
David Carlier
8d8c353465
Attempty to free memory leaks.
2017-08-16 16:31:23 -04:00
Magnus Norddahl
fbd381988b
- Fix wall UV scaling and offsetting bugs in softpoly
2017-08-16 22:26:05 +02:00
Magnus Norddahl
c3562fead2
Merge branch 'dynlightmodels'
2017-08-15 00:27:26 +02:00
alexey.lysiuk
c7d28b0a24
Fixed incorrect damage flags' checks for A_Kill...() functions
...
Only GCC 7 reported this as a warning but only for one occurrence:
src/p_actionfunctions.cpp:5909:22: warning: enum constant in boolean context [-Wint-in-bool-context]
2017-08-13 17:48:49 +03:00
alexey.lysiuk
d645e55545
Unified suppression of format warnings for GCC and Clang
...
This disables the following compilation warning reported by Clang:
src/p_3dfloors.cpp:1002:24: warning: format specifies type 'char *' but the argument has type 'int' [-Wformat]
2017-08-13 17:39:15 +03:00
alexey.lysiuk
eb52088487
Fixed compilation warnings reported by Clang
...
src/gl/scene/gl_sprite.cpp:685:34: warning: '&&' within '||' [-Wlogical-op-parentheses]
src/polyrenderer/scene/poly_sprite.cpp:297:34: warning: '&&' within '||' [-Wlogical-op-parentheses]
src/swrenderer/scene/r_opaque_pass.cpp:975:35: warning: '&&' within '||' [-Wlogical-op-parentheses]
src/sound/mididevices/music_timiditypp_mididevice.cpp:548:30: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
2017-08-13 16:42:08 +03:00
alexey.lysiuk
b077518c89
Fixed crash when morph item is used from ACS
...
https://forum.zdoom.org/viewtopic.php?t=57571
2017-08-13 16:15:31 +03:00
alexey.lysiuk
4afface97c
Fixed camera rotation from FraggleScript
...
https://forum.zdoom.org/viewtopic.php?t=57559
2017-08-13 12:22:48 +03:00
Magnus Norddahl
6d6c25bb26
- Add sprite adjustment to softpoly
2017-08-13 01:10:33 +02:00
Magnus Norddahl
bf38fd57b0
- Replace subsector gbuffer in softpoly with a zbuffer
2017-08-12 15:16:31 +02:00
Christoph Oelckers
4483d665d4
- fixed: FastProjectile's movement code was missong a portal check.
2017-08-12 13:58:16 +02:00
alexey.lysiuk
89980d9e77
Fixed linking with GCC and Clang toolchains
2017-08-12 14:41:23 +03:00
Christoph Oelckers
ba9cf02385
- added a user reserved range of statnums from 70-90
2017-08-12 13:08:11 +02:00
Christoph Oelckers
f52e767b51
- fixed: a destination-less line portal should be ignored by the sight checking code.
2017-08-12 12:51:45 +02:00
Christoph Oelckers
4261a0c592
- print a warning if a decal definition cannot find an animator.
...
This is important because DECALDEF cannot tentatively find animators declared after the decal.
2017-08-12 12:30:42 +02:00
Christoph Oelckers
aa8424982c
- fixed: The color for untranslated font was missing its alpha channel.
2017-08-12 12:04:40 +02:00
Christoph Oelckers
163b10286f
- Reset interpolation coordinates for all actors before the current thinking turn instead of at the start of each actor's own Tick function so that indirect actor movement gets properly interpolated.
2017-08-12 11:48:36 +02:00
Christoph Oelckers
c1de32896c
- addressed incorrect ACS printbold implementation: For native Hexen maps it will now be correct, but all others will have to set a flag in MAPINFO's 'gameinfo' section to avoid problems with numerous ZDoom maps depending on the incorrect implementation.
2017-08-12 10:20:34 +02:00
Christoph Oelckers
b4fa95ab15
- handle state label resolution in a non-actor cpntext more gracefully.
...
Note that this is merely a hotfix. Properly handling this to allow universal use of state scopes will require more work in cases where a scoped state is being accessed through a non-self pointer.
2017-08-12 10:04:06 +02:00
Christoph Oelckers
0db79f8dec
- removed tag 0 check for 3D floors because as seems to be par for course in Doom modding, some people actually exploited this bug.
2017-08-12 09:15:59 +02:00
alexey.lysiuk
ef9c3b4f54
Fixed unset inflictor in WorldThingDamaged event
...
https://forum.zdoom.org/viewtopic.php?t=57527
2017-08-09 16:16:33 +03:00
alexey.lysiuk
33beca6e6f
Exposed ToLower() and ToUpper() string functions to ZScript
...
https://forum.zdoom.org/viewtopic.php?t=57515
2017-08-07 15:24:18 +03:00
raa-eruanna
507122b778
- put in actorinlines include as suggested by dpjudas here, to fix compile: https://forum.zdoom.org/viewtopic.php?f=2&t=57484
2017-08-04 09:13:20 -04:00
Jonathan Russell
03640a16ea
- removed ZScript DrawLine palcolor arg
2017-08-03 02:09:48 +01:00
Jonathan Russell
941d89042a
- externalise DCanvas::DrawLine to ZScript
2017-08-03 01:20:55 +01:00
Magnus Norddahl
801fbddd47
- Fix gcc compile error
...
- Fix weapon null pointer crash
2017-08-02 01:41:48 +02:00
Magnus Norddahl
aaa00cbcb9
- Include all lights touching a model actor's render radius
2017-08-01 00:43:58 +02:00
Magnus Norddahl
04be9fe6f2
- Remove test code committed by accident
2017-07-31 20:09:45 +02:00
Rachael Alexanderson
8dff91915a
- remove vestigial version.h include from r_portal.cpp. This should stop r_all.o from compiling every single commit.
2017-07-31 11:12:08 -04:00
Kevin Caccamo
7ff0040f30
Add a null pointer at the end of TimidityArgs
...
This actually got the execvp call working consistently for me; now I can listen to MIDI music in GZDoom again.
2017-07-31 11:05:28 -04:00
Kevin Caccamo
a4370a3529
Null-terminate strings
2017-07-31 11:05:28 -04:00
Kevin Caccamo
ff35620a09
Fix freeze when timidity_exe is not set to timidity's absolute path
2017-07-31 11:05:28 -04:00
Kevin Caccamo
18e76c978c
Fix code style, and make some minor changes
...
Assume timidity is in the user's PATH if not the specified location
Also, get the error message for the execvp failure if it does fail
2017-07-31 11:05:28 -04:00
Kevin Caccamo
233fce7ef6
Initial attempt to make timidity work on Linux again
...
Add code to find the timidity executable, and split the command line into separate arguments by spaces.
For some reason, this doesn't work, although reverting 64e96c5f
makes timidity work again.
2017-07-31 11:05:28 -04:00
Christoph Oelckers
49b77f3a17
- added per-level exit texts independent of the current cluster.
...
This is mainly to support UMAPINFO which does not have clusters but has been extended to define separate exit texts for each target map that can be reached from a given map.
Special names 'normal' and 'secret' can be used to define texts specific to the default exits.
New MAPINFO properties:
* exittext = mapname, "text"...
* textmusic = mapname, "musicname", order
* textflat = mapname, flatname
* textpic = mapname, picname
textflat and textpic are like 'flat' and 'pic' for clusters, one defines a tiled background, the other a fullscreen image.
Setting an empty exittext will disable a cluster-based text screen that may apply to the given map.
2017-07-30 22:50:27 +02:00
Rachael Alexanderson
c07a4461a0
- fixed: GetCaps() did not account for r_drawvoxels cvar
2017-07-30 10:45:05 -04:00
Magnus Norddahl
d5733f515c
- Support binding textures for custom PP shaders
2017-07-30 13:59:25 +02:00
alexey.lysiuk
6a5bad0beb
Added developer message about unknown GAMEINFO entry
2017-07-30 12:26:18 +03:00
Rachael Alexanderson
b6c15b997a
- added 'r_debug_disable_vis_filter' cvar for debug purposes, to show all objects regardless of their actor filter fields.
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
1bfc2faa49
- added 'r_showcaps' command which serves as a documentation for available flags and shows what flags are in use by the current rendering settings
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
91ff447a90
- fixed compile from last commit
...
- refactored the zscript hookup a bit, made it actually work
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
712d21e26a
- implement per-renderer sprite hiding based on the actor's render feature flags
...
- hook the thing up to zscript (does not currently compile)
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
8bb5687159
- Implemented GetCaps() for the software renderer
...
- fixed: Forgot to describe Brightmap capability in the GL Renderer
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
9a9fe7c133
- implemented GetCaps() for OpenGL
...
- renamed RFF_FRAGMENTSHADER to RFF_MATSHADER
- D_Display now calls Renderer->GetCaps() and stores it in a global variable for later use.
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
64deba45a3
- added another render filter
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
80bb1d908a
- basic groundwork for render feature visibility flags. I haven't gotten very far with it yet, but since I am taking a break I am going to commit what I have and continue it later.
...
todo:
* call a render class function in D_Main that enumerates the capabilities of the current renderer into a global variable to be accessed later
* add a debug-specific cvar to always show all actors, regardless of these filters
* put in checks in the renderer themselves that check both flagsets and reject rendering of any sprite/model that does not fit the definition's criteria
2017-07-29 17:03:43 -04:00
raa-eruanna
0df2779004
- fixed mac compile(hopefully?)
2017-07-29 17:03:18 -04:00
raa-eruanna
af32edd054
- fixed linux compile
2017-07-29 16:47:10 -04:00
Magnus Norddahl
7d21fe6d75
- Fix mouse position being wrong when vid_scalemode is active
2017-07-29 19:26:53 +02:00
Rachael Alexanderson
3540440bf6
- add 1280x800 scale mode
2017-07-27 12:19:41 -04:00
Rachael Alexanderson
10e1600faf
- Replaced one more vid_scalemode check with a more versatile ViewportIsScaled43 check
2017-07-27 12:19:41 -04:00
raa-eruanna
5795e0fd3e
- included another header in order to fix an error reported by travis ci
2017-07-27 03:37:01 -04:00
Rachael Alexanderson
030450b6a9
- fixed: include missing header
2017-07-27 03:08:42 -04:00
Rachael Alexanderson
16e38816ba
- oops, forgot one thing in the last commit...
2017-07-27 03:07:19 -04:00
Rachael Alexanderson
30087f7cd7
- cleaned up the video scale mode code a bit, in order to increase future flexibility.
2017-07-27 03:05:01 -04:00
Rachael Alexanderson
f1a6ef9cc8
- changed sv_singleplayerrespawn from 'latch' to 'cheat' since it was originally coded before the CVAR_CHEAT flag was implemented.
2017-07-26 13:34:17 -04:00
Rachael Alexanderson
012496ee98
- added cheat protection to sv_damagefactor*
2017-07-26 13:32:45 -04:00
Magnus Norddahl
cbda6e9427
- Improve dynamic lights for the HUD model
2017-07-26 09:18:05 +02:00
Magnus Norddahl
0c0f0789c2
- Improved dynamic lights on models
2017-07-25 23:00:09 +02:00
Magnus Norddahl
d2e0933a81
- Fix packed normal order bug
2017-07-25 20:20:13 +02:00
Magnus Norddahl
4e14ed4e9e
- Hook up model normals
2017-07-25 20:20:12 +02:00
Rachael Alexanderson
e0494b6f13
- fixed an issue with previous commit that undid some scaling code
2017-07-25 08:09:01 -04:00
David Carlier
64e96c5f46
OpenBSD support
2017-07-25 07:56:19 -04:00
Rachael Alexanderson
e42500c07a
Revert "- ported Linux crash fix to Mac"
...
This reverts commit 6a49251722
.
2017-07-25 07:34:26 -04:00
Rachael Alexanderson
6a49251722
- ported Linux crash fix to Mac
2017-07-25 06:55:29 -04:00
Magnus Norddahl
d8c6966917
- Fixed startup crash on Linux
2017-07-25 11:51:15 +02:00
Christoph Oelckers
b81a23c5e5
- fixed return type of CountsAsKill.
2017-07-25 08:14:46 +02:00
Rachael Alexanderson
28af2fe66b
- maxviewpitch now affects the 2.5D software renderer
2017-07-24 10:33:44 -04:00
Christoph Oelckers
cd2a349c36
- fixed name generation for cached nodes to not contain any ':'. A colon inside a file name will cause Windows to write the data to an alternate data stream.
2017-07-24 09:20:35 +02:00
Magnus Norddahl
e06f87cf10
- Added 0.75x scale mode
2017-07-24 08:35:27 +02:00
Magnus Norddahl
1ce3b4c79c
- Fix dynamic light clamping issue in truecolor drawers
2017-07-23 23:45:43 +02:00
Magnus Norddahl
bf4d7234e1
- Increase MAXWIDTH and MAXHEIGHT defines to support supersampled 5K monitors
2017-07-23 22:04:00 +02:00
Magnus Norddahl
1a4cf16168
- Fix swtruecolor cvar messing up the chosen video mode
2017-07-23 20:54:03 +02:00
Magnus Norddahl
18f0f6be4b
- Pixel stretch for 320x200 and 640x400 in glswfb
2017-07-23 17:26:55 +02:00
Rachael Alexanderson
2f37c4b272
- added vid_scalemode == 4 to super-sample the screen
2017-07-23 11:24:04 -04:00
Magnus Norddahl
449c4cb711
- Pixel stretch 320x200 and 640x400 scale modes in the GL renderer
2017-07-23 17:18:25 +02:00
Rachael Alexanderson
45a37211e4
- added special handling for vid_scalemode == [1||2] to force video aspect scaling off unless the user explicitly specified an aspect override.
2017-07-23 10:49:13 -04:00
Rachael Alexanderson
b30b93f40f
- made postprocess shader parsing a little more strict, will error out more frequently with common mistakes.
2017-07-23 06:11:04 -04:00
alexey.lysiuk
7436693860
Enabled dynamic stack size in ZScript parser generated by Lemon
...
https://forum.zdoom.org/viewtopic.php?t=57322
2017-07-23 11:54:16 +03:00
Magnus Norddahl
370e53befe
- Replace vid_max_width and vid_max_height with vid_scalemode for the GL software framebuffer backend
...
- Fix a crash if the window was resized before creating a game
- Fix main menu scaling being wrong if the video mode didn't match the unscaled screen size
2017-07-23 04:23:13 +02:00
Magnus Norddahl
c3702ae9e7
Add vid_scalemode support to GL framebuffer
2017-07-23 00:33:56 +02:00
Rachael Alexanderson
2e6c4eeab9
- removed NOSAVE flags from sv_damagefactor* cvars so that they get put in a savegame
2017-07-22 08:25:39 -04:00
Rachael Alexanderson
a958d2ad72
- fixed pixel centering for unaccelerated player sprites
2017-07-22 08:01:27 -04:00
Rachael Alexanderson
04db494310
- 'kill baddies' cheat now describes what it is killing. This is mostly for multiplayer purposes when other players see the feedback when the cheat is used, allowing players to see if it was 'kill monsters' or 'kill baddies'
2017-07-22 07:25:58 -04:00
Magnus Norddahl
8311a18282
- Fix plane pixel center sampling bug
2017-07-22 12:29:46 +02:00
Magnus Norddahl
3ff021608d
- Fix pixel center sampling bug in SWCanvas::DrawTexture
2017-07-22 10:40:30 +02:00
alexey.lysiuk
c56cd245ac
Added IndexOf() and LastIndexOf() functions to ZScript string type
...
https://forum.zdoom.org/viewtopic.php?t=57313
2017-07-22 10:54:32 +03:00
Magnus Norddahl
ebd20daed8
- Fix wall texture sampling to be done at pixel centers
2017-07-22 01:45:06 +02:00
Rachael Alexanderson
8d95ee6882
- 'Player' is turbo! cheat is no longer shown in single player.
2017-07-21 17:21:58 -04:00
Magnus Norddahl
5be74890b7
- Fix missing pixels on walls in palette mode for npot2 textures
2017-07-21 22:48:44 +02:00
Christoph Oelckers
714ada01aa
Merge remote-tracking branch 'remotes/origin/qzdoom-merge'
2017-07-20 18:33:20 +02:00
Christoph Oelckers
e8e940d221
- fixed portal handling for P_CheckMissileSpawn to obey commonly established rules about portal types.
2017-07-20 18:32:54 +02:00
Christoph Oelckers
ffc529d100
- let r_*_cull variables default to 0.
2017-07-20 14:23:45 +02:00
Christoph Oelckers
03ed0656e1
- fixed: The frame timer for interpolating the renderer should always take its time from the actual beginning of the frame instead of checking the system timer in real time when rendering starts.
...
This fixes two issues:
* timer related texture animations are not being recreated multiple times if a scene renders multiple viewpoints (e.g. camera textures or portals.)
* interpolation is smoother when maps have a high think time of multiple milliseconds. A good map to see the difference would be ZDCMP2 which has a think time of 4-5 milliseconds. With the timer taken in real time after the thinkers have run and VSync on this resulted in alternating time slices of 11 and 21 ms between frame interpolations instead of an even 16 as should be done for smooth 60 fps because roughly every second frame was offset by those 5 ms.
2017-07-20 14:20:50 +02:00
Rachael Alexanderson
d020ec68d2
Merge branch 'master' into qzdoom-merge
2017-07-20 06:43:03 -04:00
Rachael Alexanderson
bc38f7f776
- changed gl_ssao_portals default to 1
2017-07-20 06:41:34 -04:00
Rachael Alexanderson
77617a2757
Merge branch 'master' into qzdoom-merge
2017-07-19 17:32:41 -04:00
Rachael Alexanderson
5918167fb3
- added 'kill baddies' cheat - does the same thing as 'kill monsters' only it ignores friendly monsters
2017-07-19 15:03:27 -04:00
Rachael Alexanderson
62a4eb6b6d
- fixed a comment in version.h about the current ZScript version (it was out of date)
2017-07-19 11:04:53 -04:00
alexey.lysiuk
bbb8374b06
Fixed applying of color to untranslated fonts in hardware renderer
...
https://forum.zdoom.org/viewtopic.php?t=57268
2017-07-19 15:00:55 +03:00
alexey.lysiuk
f4672d67bc
Fixed crash when drawing untranslated font
...
https://forum.zdoom.org/viewtopic.php?t=57268
2017-07-19 13:24:19 +03:00
Rachael Alexanderson
1f6d15c741
- Rename QZDoom back to GZDoom again for merge.
2017-07-19 06:13:05 -04:00
Rachael Alexanderson
bac72600f0
Merge remote-tracking branch 'origin/master' into qzdoom-merge
2017-07-19 06:11:13 -04:00
Christoph Oelckers
579840987d
- added per-class think time profiling tool.
2017-07-17 10:21:58 +02:00
Rachael Alexanderson
a383dacbe6
Merge https://github.com/coelckers/gzdoom
2017-07-16 01:38:25 -04:00
alexey.lysiuk
490e873602
Moved parallel_for() function template to own header file
2017-07-15 12:16:06 +03:00
Rachael Alexanderson
a3e782a164
Merge https://github.com/coelckers/gzdoom
2017-07-15 03:48:13 -04:00
Rachael Alexanderson
9eb0b64ab0
- Added new "sv_damagefactor*" variables.
...
sv_damagefactorplayer: Scales damage for player
sv_damagefactorfriendly: Scales damage for all other +FRIENDLY objects
sv_damagefactormobj: Scales damage for everything else (incl. monsters and decorations)
2017-07-15 03:38:10 -04:00
Christoph Oelckers
ac30e47ab4
- Added an 'srand' call to the RBG initialization.
...
This is needed because 'rand' gets used by parts of the sound code (e.g. playlists.)
2017-07-15 09:34:07 +02:00
Christoph Oelckers
daca12600d
- fixed: The ADDA_RK opcode used the wrong constant type for the offset it adds to the pointer.
2017-07-15 09:14:39 +02:00
Christoph Oelckers
98124c8049
- avoid using plain chars as variables.
...
This is all I found with a quick search, there's probably more...
2017-07-15 09:01:02 +02:00
Rachael Alexanderson
c1e3f10802
Merge https://github.com/coelckers/gzdoom
2017-07-15 00:24:25 -04:00
alexey.lysiuk
970adff5e7
Use multiple threads for xBRZ upscaling
...
Implementation relies on Concurrency Runtime, Grand Central Dispatch aka libdispatch or OpenMP depending on their availability
2017-07-14 16:01:38 +03:00
alexey.lysiuk
ac811f99c0
Fixed uninitialized variable in XLAT parser
...
https://forum.zdoom.org/viewtopic.php?t=57109
2017-07-13 18:05:58 +03:00
alexey.lysiuk
c6351825b8
Enable Core Profile on macOS only when OpenGL 3.3 is available
2017-07-13 18:05:58 +03:00
Rachael Alexanderson
7728875a7f
- Added 'enabled' property for PP shaders, to automatically enable them without ZScript
2017-07-13 05:57:12 -04:00
Magnus Norddahl
c38d0c1637
Merge branch 'line_distance_cull' into qzdoom
...
# Conflicts:
# src/swrenderer/scene/r_opaque_pass.cpp
2017-07-12 07:11:43 +02:00
Magnus Norddahl
7d1de667be
- Added r_line_distance_cull cvar that culls lines beyond the specified distance
2017-07-12 06:56:34 +02:00
Rachael Alexanderson
25900031f5
Merge https://github.com/coelckers/gzdoom
2017-07-11 06:22:51 -04:00
Rachael Alexanderson
25ab31e92c
- corrected transferred sky offsets using ZDoom 2.8.1 source - the sky needed to be offset by 28 units.
2017-07-11 05:53:21 -04:00
Rachael Alexanderson
28950b8a5d
- q2.1pre version
2017-07-10 13:15:52 -04:00
Rachael Alexanderson
e2744102c5
Merge https://github.com/coelckers/gzdoom
2017-07-10 11:39:46 -04:00
Rachael Alexanderson
d2c8a5c33d
Revert "Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom "
...
This reverts commit 65bb8a5185
, reversing
changes made to 619281de64
.
2017-07-10 11:29:58 -04:00
Rachael Alexanderson
26355ece82
Revert "Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom "
...
This reverts commit 035c036eb2
, reversing
changes made to 61660bf147
.
2017-07-10 11:29:30 -04:00
Rachael Alexanderson
8c0706e56f
Revert "Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom "
...
This reverts commit 56806e3243
, reversing
changes made to e1a2de4989
.
2017-07-10 11:26:41 -04:00
Rachael Alexanderson
04b1163188
Revert "Add a comment"
...
This reverts commit d2f4dd41f8
.
2017-07-10 11:25:38 -04:00
alexey.lysiuk
2e33165edf
Moved freeing of data stored in HUD message objects to OnDestroy() function
...
https://forum.zdoom.org/viewtopic.php?t=57163
2017-07-10 10:41:50 +03:00
Rachael Alexanderson
e1b4bb11ba
Merge https://github.com/coelckers/gzdoom
2017-07-09 20:09:12 -04:00
Magnus Norddahl
ddd1b629c3
- Calculate globvis/r_visibility in r_utility and use it in GL and poly renderers
2017-07-09 19:01:34 +02:00
Magnus Norddahl
c8e713b067
- Remember maximized window state
2017-07-09 15:12:31 +02:00
alexey.lysiuk
afe1199b69
Fixed sound looping when stream length is a multiply of buffer size
...
https://forum.zdoom.org/viewtopic.php?t=57164
2017-07-09 13:28:16 +03:00
Rachael Alexanderson
15d92b346d
Merge https://github.com/coelckers/gzdoom
2017-07-08 09:31:43 -04:00
Magnus Norddahl
00893763ed
Merge branch 'custom_postprocess' into qzdoom
2017-07-08 14:44:30 +02:00
Magnus Norddahl
a38de996e7
- Move uniform declarations to the GLDEFS lump to make it Vulkan safe (a vulkan implementation can then declare them in an uniform block)
...
- Change SetUniform functions to be clearscope as they can be safely called from both play and ui
- Add PlayerInfo argument to SetUniform functions to force the modder to take network play into account
- Add enabled flag on custom postprocess shaders
- Removed custom texture support until a more clean implementation is written
2017-07-08 14:44:07 +02:00
alexey.lysiuk
58b348e75a
Skip autogenerated mouse move events in Cocoa backend regardless of mode
2017-07-08 13:36:55 +03:00
alexey.lysiuk
9292b23bb4
Restore mouse position when entering GUI capture mode in Cocoa backend
2017-07-08 12:46:38 +03:00
Magnus Norddahl
a4b96f7673
- Fix linker error
2017-07-06 18:02:27 +02:00
Magnus Norddahl
69a3d10cb6
Merge branch 'custom_postprocess' into qzdoom
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
2017-07-06 05:41:16 +02:00
Magnus Norddahl
8a0e801cb5
- Move custom postprocess shader to its own file
2017-07-06 05:36:01 +02:00
Rachael Alexanderson
1cfaae78d9
- Add new "scene" target for custom postprocess shaders
...
- Add "gl_custompost" cvar to turn off custom postprocess shaders completely
- Made "scene" affect the screen before 2D drawing, made "screen" affect the entire screen after 2D drawing
2017-07-06 04:45:51 +02:00
Rachael Alexanderson
2bfd7859e4
Merge remote-tracking branch 'origin/custom_postprocess'
2017-07-03 17:17:17 -04:00
Magnus Norddahl
e161bba146
- Specify shader uniforms from ZScript
2017-07-03 22:30:49 +02:00
Rachael Alexanderson
5c87cdd786
- Add new "scene" target for custom postprocess shaders
...
- Add "gl_custompost" cvar to turn off custom postprocess shaders completely
- Made "scene" affect the screen before 2D drawing, made "screen" affect the entire screen after 2D drawing
2017-07-02 21:04:22 -04:00
Rachael Alexanderson
edb45cd70d
Merge remote-tracking branch 'origin/custom_postprocess'
2017-07-02 19:56:57 -04:00
Magnus Norddahl
1b5f3da9c5
- Fix lump lookup
2017-07-03 01:50:51 +02:00
Magnus Norddahl
befe081683
- Upload custom texture
2017-07-03 01:29:03 +02:00
Magnus Norddahl
ee6d7cf17e
- Add initial postprocess shader support to GLDEFS file
2017-07-03 01:26:02 +02:00
Rachael Alexanderson
0d8b7c55ef
- added a grayscale formula selector
2017-07-02 16:45:06 -04:00
Rachael Alexanderson
bd02893ce7
- expanded hard limits for saturation to -15.0/15.0
...
- added menu option for saturation
- tried to get the new saturation shader to consume less GPU power by turning it off when it is 1.0
2017-07-02 16:45:06 -04:00
Rachael Alexanderson
63da6e70c0
- added a vid_saturation control - works in postprocessing, only.
2017-07-02 16:45:06 -04:00
Rachael Alexanderson
6a402c28d8
Merge https://github.com/coelckers/gzdoom
2017-07-02 16:36:46 -04:00
Rachael Alexanderson
aa2a39da19
Revert "- Remove r_sprite_distance_cull"
...
This reverts commit 44546ce16a
.
2017-07-02 16:35:40 -04:00
Magnus Norddahl
205350e726
- Fix sprites behind midtextures unrender when near voxel
2017-07-02 20:09:46 +02:00
Magnus Norddahl
6d8281c812
- Fix voxel clipping for r_scene_multithreaded
2017-07-02 18:22:28 +02:00
Magnus Norddahl
4545539045
- Add polyobj support to r_scene_multithreaded
2017-07-02 17:22:59 +02:00
Magnus Norddahl
adcc7588ec
- Make it more clear what bFakeBoundary did
2017-07-02 15:35:29 +02:00
Magnus Norddahl
efb1a8d113
- Don't add 3D floor dummy draw segments to the list
2017-07-02 14:46:19 +02:00
Magnus Norddahl
e19c8eba62
- Switch sprite drawing to use the interesting draw segments list
...
- Stop adding 3D floor "fake" draw segments to the interesting segments list
- Rename InterestingSegments list to TranslucentSegments
2017-07-01 23:55:41 +02:00
Rachael Alexanderson
c3cc3637db
Merge https://github.com/coelckers/gzdoom
2017-07-01 13:12:25 -04:00
Christoph Oelckers
5a761dd3c3
- fixed alpha of palette index 0 for ice and alpha translations.
2017-07-01 16:19:41 +02:00
alexey.lysiuk
71b70d74a9
Fixed error handling in vector by scalar multiplication
...
https://forum.zdoom.org/viewtopic.php?t=57089
2017-07-01 12:37:31 +03:00
alexey.lysiuk
925274ca0c
Added name of upcoming macOS to OS detection
2017-07-01 12:29:25 +03:00
Magnus Norddahl
42fedd0f4c
- Improve sprite performance when there are many draw segments
2017-07-01 03:31:06 +02:00
Magnus Norddahl
44546ce16a
- Remove r_sprite_distance_cull
2017-07-01 03:29:28 +02:00
Rachael Alexanderson
17aceac912
Merge https://github.com/coelckers/gzdoom
2017-06-29 03:50:22 -04:00
Magnus Norddahl
0cd575363f
- Add r_sprite_distance_cull that per default culls all things further than 5000 units away
2017-06-28 19:55:11 +02:00
Christoph Oelckers
c74356a1c0
- made OpenGL 3.3 a requirement for running the modern render path. Also force '-glversion 3' to use the modern render path, even though actual OpenGL 3.0 won't support it.
...
This will exclude Intel HD3000 and many obsolete drivers for NVidia and ATI which should have been updated long ago.
2017-06-28 17:57:04 +02:00
Rachael Alexanderson
c15880a2fc
Merge https://github.com/coelckers/gzdoom
2017-06-27 17:38:26 -04:00
Magnus Norddahl
9c3361dfe2
- Fix stat fps to write something slightly more useful
2017-06-27 21:15:26 +02:00
Christopher Bruns
e9f03102f4
Update fixed color map for each eye, so light goggles would work in both eyes in stereo 3d modes.
2017-06-27 17:55:11 +02:00
Rachael Alexanderson
cf400ba2db
Merge https://github.com/coelckers/gzdoom
2017-06-25 23:44:33 -04:00
Magnus Norddahl
b6e035e796
- Implemented radial fog support in software light mode
2017-06-25 15:02:34 +02:00
Rachael Alexanderson
7592e6d5de
Merge https://github.com/coelckers/gzdoom
2017-06-25 00:18:19 -04:00
Magnus Norddahl
f34ededdef
- Improved fuzz rendering in software renderer by scaling it relative to 320x200
2017-06-25 00:35:15 +02:00
Rachael Alexanderson
9cb9121549
Merge https://github.com/coelckers/gzdoom
2017-06-24 11:31:01 -04:00
alexey.lysiuk
279b1e27dc
Made usage of assertions in VM code consistent
...
https://forum.zdoom.org/viewtopic.php?t=56995
2017-06-22 10:36:08 +03:00
Rachael Alexanderson
9001009fcf
Merge https://github.com/coelckers/gzdoom
2017-06-22 01:42:33 -04:00
Rachael Alexanderson
f49794d6c6
- fixed: Due to recent changes, textures now use 'bgra' format in OpenGL. The palette tonemap shader had not yet been updated to reflect this.
2017-06-21 19:00:51 -04:00
Rachael Alexanderson
bdc99d9768
- fixed: fillsimplepoly drawer was using an inverted scale, leading to incorrect automap texture display.
2017-06-21 04:03:37 -04:00
Rachael Alexanderson
e60d627e88
Merge https://github.com/coelckers/gzdoom
2017-06-21 03:04:06 -04:00
Magnus Norddahl
fa36677bdb
- Removed power-of-two limitation from span drawers, except for slopes
2017-06-21 03:08:11 +02:00
Rachael Alexanderson
ff257fcfd7
Merge https://github.com/coelckers/gzdoom
2017-06-20 09:39:12 -04:00
Christoph Oelckers
f909b82074
- fixed: Blood translations did not properly treat color 0 as transparent.
2017-06-20 09:10:19 +02:00
Rachael Alexanderson
cc9fa8a6f5
- fixed: Prevent /0 errors when calculating console scale, which could happen in certain rare situations.
2017-06-19 23:46:07 -04:00
Rachael Alexanderson
e290274fb7
- fixed: Now fully fixed the 3d floor + fog boundary issue.
...
- Revert "- Partially fixed the 3d floors + fogboundary issue. There's still an issue when a sprite appears in front of a fog boundary, but because this is already a huge visual improvement I am going to go ahead and push this."
This reverts commit 7e292fbfec
.
2017-06-19 17:19:44 -04:00
Rachael Alexanderson
7e292fbfec
- Partially fixed the 3d floors + fogboundary issue. There's still an issue when a sprite appears in front of a fog boundary, but because this is already a huge visual improvement I am going to go ahead and push this.
2017-06-19 17:05:53 -04:00
Magnus Norddahl
8af76b96d8
- Fix clearfog crash
2017-06-19 20:36:28 +02:00
Rachael Alexanderson
d454fafc9e
Merge https://github.com/coelckers/gzdoom
2017-06-19 03:22:23 -04:00
Magnus Norddahl
490d7e3a35
- Remove clearfog goto
2017-06-19 00:55:32 +02:00
Magnus Norddahl
8beafbb7da
- Fix voxel speed regression in the palette software renderer
2017-06-18 19:45:15 +02:00
Christoph Oelckers
3b024c347b
- use a dedicated flag word for the dynamic light flags instead of piggybacking on some flags4 bits.
2017-06-18 10:15:31 +02:00
Christoph Oelckers
cf1d94c9bb
- fixed blood translation's alpha so that CreateTexBuffer can assume that all palette entries in translations are correct.
2017-06-18 09:23:56 +02:00
Christoph Oelckers
a1694a79c6
- removed the FGLBitmap class and replaced all uses with the regular FBitmap.
...
The only reason this ever existed is that the GL renderer used RGBA instead of BGRA but there's no reason why this is even necessary.
2017-06-18 09:14:33 +02:00
Rachael Alexanderson
c70dac2d7f
Merge https://github.com/coelckers/gzdoom
2017-06-16 13:27:03 -04:00
alexey.lysiuk
eda55b25ee
Fixed code generation for vector parameters with default values
...
https://forum.zdoom.org/viewtopic.php?t=56915
2017-06-16 11:58:24 +03:00
alexey.lysiuk
c22017f981
Made two Hexen maps compatibility options data driven
2017-06-14 16:10:01 +03:00
alexey.lysiuk
5874d01a73
All compatibility options are now applied for IWAD maps
...
https://forum.zdoom.org/viewtopic.php?t=56867
2017-06-14 15:24:11 +03:00
Rachael Alexanderson
96df3aed01
Merge https://github.com/coelckers/gzdoom
2017-06-12 00:56:25 -04:00
Rachael Alexanderson
2ff492d005
- fix compile on Windows
2017-06-12 00:38:50 -04:00
Rachael Alexanderson
a148212215
Merge commit 'f1ad42c'
2017-06-12 00:22:59 -04:00
Christoph Oelckers
842e8b68b4
- blacklist old FMod related sound CVARs because they tend to be in the UnknownCVARs section but aren't useful any longer.
2017-06-12 00:00:55 +02:00
Christoph Oelckers
f1ad42c4e5
- instead of discarding protected menu replacements, try to merge them with the original version.
...
Testing with Adventures of Square this mostly works, but it is clear that a list of old and deleted CVARs still needs to be added so that any items referring to those can be eliminated as well. Some stuff is still slipping through that refers to features which no longer exist.
2017-06-11 22:30:40 +02:00
Christoph Oelckers
ee3d73478a
- added blanket protection to all submenus of OptionsMenu, except the player menu.
...
Sadly, some mods are truly careless enough to modify the engine internal menus to add their own things, which should have no business whatsoever in there.
As an example, in a D4D version released in May, the Display Options menu is showing quite a bit of outdated content and missing important settings.
2017-06-11 09:57:10 +02:00
Christoph Oelckers
8482653bbc
Menu protection features
...
- added a '-nocustommenu' command line options. This is for disabling user menus that intentionally or accidentally disable crucial menu features.
- do not allow replacement of the main options menu. This menu contains engine-critical settings and may change at any time when new features get added. For now it will be the only one that gets protected but this may soon be extended to some of its submenus as well.
2017-06-11 08:52:04 +02:00
Magnus Norddahl
3b8570003a
- Improved softpoly sprite clipping
2017-06-10 11:16:58 +02:00
Magnus Norddahl
a0cc78d6aa
- Fix softpoly wall clipping bug
2017-06-10 10:16:42 +02:00
Rachael Alexanderson
a48203ef1d
Merge https://github.com/coelckers/gzdoom
2017-06-10 01:00:38 -04:00
alexey.lysiuk
7a29128f6b
Fixed menu class replacement
...
https://forum.zdoom.org/viewtopic.php?t=56824
2017-06-09 14:08:26 +03:00
Rachael Alexanderson
63d9148604
Merge https://github.com/coelckers/gzdoom
2017-06-09 05:57:10 -04:00
Christoph Oelckers
8c053c0141
- let P_CheckMissileSpawn also clear MF2_PCROSS before checking the move.
2017-06-08 09:00:26 +02:00
Major Cooke
15df231a95
- Fixed: Vel3DFromAngle's internal function call had the pitch and angle parameters backwards:
2017-06-08 08:54:30 +02:00
Rachael Alexanderson
717e9dd0d8
Merge https://github.com/coelckers/gzdoom
2017-06-07 16:46:21 -04:00
Christoph Oelckers
8b19ae98ea
- consolidated the two averageColor instances.
2017-06-07 22:42:59 +02:00
Christoph Oelckers
55df3a91ec
- fixed: P_CheckMissileSpawn's setup for P_TryMove must be done in a way that allows detecting portal transitions.
...
By setting the position before the call any portal lying between the actual spawn point and the check position would be skipped.
2017-06-07 22:42:59 +02:00
Rachael Alexanderson
78061f1cf7
- fixed: D3DFB::DoClear did not call Super::DoClear when vid_hw2d was false.
2017-06-07 03:55:02 -04:00
Christoph Oelckers
446d1eb9c8
- we no longer support Windows 9x or NT 4 so its special code may just be removed entirely.
2017-06-07 09:26:06 +02:00
Rachael Alexanderson
921ce9247e
Merge https://github.com/coelckers/gzdoom
2017-06-05 10:40:15 -04:00
Major Cooke
b86aed5b01
Added polysoft render support for PSPF_MIRROR.
2017-06-05 10:39:18 -04:00
svdijk
c698f10257
Fix setting of the gl_legacy_mode cvar.
2017-06-05 14:45:24 +02:00
Christoph Oelckers
3b818171d5
- do not let P_AdjustFloorCeil use the return from P_CheckPosition if floorz is greater than ceilingz.
...
This can only happen if some thing gets placed somewhere it doesn't physically fit in and as a result of the floor move would be pushed into an even more invalid place.
See https://forum.zdoom.org/viewtopic.php?f=2&t=56764
2017-06-05 12:20:59 +02:00
alexey.lysiuk
c7b895c8ff
Fixed applying of clip rect to screen dimming
...
https://forum.zdoom.org/viewtopic.php?t=56719
2017-06-05 09:48:09 +03:00
Christoph Oelckers
1ed415014e
- fixed: 'self' may never be null for native VM functions so it must always abort if null gets passed.
2017-06-05 08:43:12 +02:00
Major Cooke
17fc58f712
Added PSPF_MIRROR to software renderer.
2017-06-04 21:41:21 -04:00
Rachael Alexanderson
5d40b2c36c
Merge https://github.com/coelckers/gzdoom
2017-06-04 21:04:33 -04:00
Rachael Alexanderson
757957bfac
- prevent SetShaded action function from messing up the RGB-to-PAL conversion with a possible overflow
...
- add RGB-to-PAL support for UDMF fillcolor property
2017-06-04 14:46:03 -04:00
Christoph Oelckers
91680a1e8d
- fixed incorrect number of returns in SetRandomSeed.
2017-06-04 18:56:03 +02:00
Rachael Alexanderson
5185ebbc28
- fixed: Add light diminishing to true-color stencil drawers
...
- fixed: Non-SSE AddClampShadedBgra (stencil) drawer did not handle overflows
2017-06-04 12:46:39 -04:00
Rachael Alexanderson
62374cf3bc
- fixed: add light diminishing support to rgb666 palette stencil drawers
2017-06-04 12:26:04 -04:00
Christoph Oelckers
211783c110
- added the UDMF sector scroll fields from Eternity.
...
These are currently untested and need review, especially regarding the scroll factor that gets applied to the numbers.
2017-06-04 18:03:43 +02:00
Rachael Alexanderson
564e24be28
- Added truecolor support to truecolor stencil drawers
2017-06-04 12:00:15 -04:00
Rachael Alexanderson
291b36f7b5
- Fix startup errors
2017-06-04 08:01:02 -04:00
Rachael Alexanderson
c340a6f794
Merge branch 'master' of https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/gl/scene/gl_sprite.cpp
# src/polyrenderer/scene/poly_sprite.cpp
# src/r_data/r_vanillatrans.cpp
# src/r_data/r_vanillatrans.h
# src/swrenderer/things/r_sprite.cpp
2017-06-04 07:24:35 -04:00
Christoph Oelckers
1cb3514b05
- use 0 as the default for r_vanillatrans.
...
As nice as the automatic is, this will trigger far too many cases where it will disable translucency for mods that only change some texts. Dehacked is very often only used for non-actor related modifications.
If the automatic is supposed to be the default it needs to do a lot more thorough checks to avoid bug reports due to misunderstanding the feature.
2017-06-04 12:39:39 +02:00
Rachael Alexanderson
c18134dbd3
- r_vanillatrans: Cache the cache! Transform the function into a global variable and recheck at the start of D_Display
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
4686ba78a0
- Add licenses to r_vanillatrans files
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
68b6f922f7
- Added auto-detection scheme for r_vanillatrans
...
It now works the following way:
(0) - Force off (ZDoom defaults)
(1) - Force on (Doom defaults)
(2) - Auto off (Prefer ZDoom defaults - if DEHACKED is detected with no ZSCRIPT it will turn on) (default)
(3) - Auto on (Prefer Doom defaults - if DECORATE is detected with no ZSCRIPT it will turn off)
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
2997f31f9f
- removed ZDOOMADD and updated actors in question with ZDOOMTRANS
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
89b372cb01
- Changed MF7_SPRITEFLIP, MF8_ZDOOMTRANS to RenderFlags
...
- Added RF_ZDOOMADD
- renamed r_canontrans to r_vanillatrans
- this developer's insanity level has increased by 231%.
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
01f88cfb16
- Added 'canonical transparency' cvar r_canontrans - this simply turns off transparency for Doom objects that were marked as transparent sometime in ZDoom's development cycle
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
64b22f6cb3
Merge https://github.com/coelckers/gzdoom
2017-06-03 22:34:13 -04:00
Rachael Alexanderson
c3808bbc2d
- Add licenses to r_vanillatrans files
2017-06-03 20:17:44 -04:00
Rachael Alexanderson
deb62ee156
Merge commit 'refs/pull/340/head' of https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/gl/scene/gl_sprite.cpp
# src/polyrenderer/scene/poly_sprite.cpp
# src/swrenderer/things/r_sprite.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.txt
2017-06-03 20:06:28 -04:00
Rachael Alexanderson
9af370f51e
- Added auto-detection scheme for r_vanillatrans
...
It now works the following way:
(0) - Force off (ZDoom defaults)
(1) - Force on (Doom defaults)
(2) - Auto off (Prefer ZDoom defaults - if DEHACKED is detected with no ZSCRIPT it will turn on) (default)
(3) - Auto on (Prefer Doom defaults - if DECORATE is detected with no ZSCRIPT it will turn off)
2017-06-03 20:00:53 -04:00
Magnus Norddahl
7acb492852
- Add gl_shadowmap_quality cvar that controls the resolution of the 1D shadow map texture
2017-06-04 00:44:49 +02:00
Magnus Norddahl
265df4b797
- Change shadowmap resolution from 1024 to 128
2017-06-03 21:19:34 +02:00
Christoph Oelckers
1df7dc81e6
- fixed: The statusbar's MustDrawLog method was called with an incorrect number of parameters.
2017-06-03 19:44:22 +02:00
Magnus Norddahl
797cb94b4f
- Add stat shadowmap to get performance for the upload part of the shadow maps
2017-06-03 19:24:54 +02:00
Magnus Norddahl
7edb75d299
- The mandatory include compile error fix for unix
2017-06-03 18:28:12 +02:00
Magnus Norddahl
d38dae5de8
- Add gpu stat that displays how much time the GPU spent on named GL groups
2017-06-03 18:14:24 +02:00
jplebreton
2c7a0c87c8
add FloatBobStrength Actor property, a multiplier on Z offset created by FloatBob behavior. default of 1.0 is current behavior, set higher/lower for more/less extreme bobbing.
2017-06-03 18:02:27 +02:00
Magnus Norddahl
f593e2aa3c
- Fix stat output to use the console scale
2017-06-03 16:58:09 +02:00
Rachael Alexanderson
6605bd70df
Merge https://github.com/coelckers/gzdoom
2017-06-02 14:23:30 -04:00
Rachael Alexanderson
b240ad0814
- removed ZDOOMADD and updated actors in question with ZDOOMTRANS
2017-06-02 12:24:03 -04:00
Rachael Alexanderson
00bfee8b1e
- Changed MF7_SPRITEFLIP, MF8_ZDOOMTRANS to RenderFlags
...
- Added RF_ZDOOMADD
- renamed r_canontrans to r_vanillatrans
- this developer's insanity level has increased by 231%.
2017-06-02 12:24:03 -04:00
Rachael Alexanderson
daad76547d
- Added 'canonical transparency' cvar r_canontrans - this simply turns off transparency for Doom objects that were marked as transparent sometime in ZDoom's development cycle
2017-06-02 12:24:03 -04:00
Kirill Gavrilov
2a8ebc6c27
Fixed broken Interleaved 3D output when GL Sampler objects are used
2017-06-02 09:10:38 +02:00
Rachael Alexanderson
723319cc6b
Merge https://github.com/coelckers/gzdoom
2017-06-02 01:10:47 -04:00
Rachael Alexanderson
bf12d38afd
- removed ZDOOMADD and updated actors in question with ZDOOMTRANS
2017-06-02 01:10:46 -04:00
Rachael Alexanderson
aa93990d3b
- Changed MF7_SPRITEFLIP, MF8_ZDOOMTRANS to RenderFlags
...
- Added RF_ZDOOMADD
- renamed r_canontrans to r_vanillatrans
- this developer's insanity level has increased by 231%.
2017-06-02 01:10:46 -04:00
Rachael Alexanderson
813b321c45
- Added 'canonical transparency' cvar r_canontrans - this simply turns off transparency for Doom objects that were marked as transparent sometime in ZDoom's development cycle
2017-06-02 01:10:45 -04:00
Rachael Alexanderson
5502421901
- fixed: Using pure software drawers (vid_hw2d==false) drawing stencils on the screen resulted in black stencils
...
- this fixes crosshairs being drawn black
2017-06-01 16:21:15 -04:00
Christopher Bruns
d2f4dd41f8
Add a comment
2017-06-01 01:02:46 -04:00
Rachael Alexanderson
b78cb6c693
Merge https://github.com/coelckers/gzdoom
2017-06-01 01:02:17 -04:00
Magnus Norddahl
c30010370e
- Fix voxels not being rendered when the replaced sprite texture doesn't exist
2017-06-01 00:26:25 +02:00
Rachael Alexanderson
b8074a4e53
- Sync VER_MAJOR and VER_MINOR in version.h with GZDoom parent.
2017-05-31 09:15:13 -04:00
Rachael Alexanderson
e72ae3f266
Merge ../gzdoom
...
# Conflicts:
# src/version.h
# wadsrc/static/compatibility.txt
2017-05-31 09:08:13 -04:00
Christoph Oelckers
1bd3098dec
- Now we are at 3.2pre.
2017-05-31 12:52:38 +02:00
Christoph Oelckers
d8d4723ae1
- removed PCD_GetActorZ double check.
2017-05-31 11:52:51 +02:00
Christoph Oelckers
1465102ba0
- added SetRandomSeed function for ZScript. This uses the same RNG syntax as the other random functions.
2017-05-31 11:33:57 +02:00
Christoph Oelckers
afa2888acb
- fixed size clamping of sector lights to use 1024 as maximum, not 255 as inherited from ZDoomGL.
2017-05-31 10:41:43 +02:00
Christoph Oelckers
977d5988c5
- fixed weapon sprite light calculation for low light levels.
2017-05-31 09:27:50 +02:00
Rachael Alexanderson
56806e3243
Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom
2017-05-30 14:59:24 -04:00
Christopher Bruns
857c183e5f
Default to statically linking OpenVR API directly from the public API source files.
2017-05-30 13:59:14 -04:00
Rachael Alexanderson
e1a2de4989
Merge https://github.com/coelckers/gzdoom
2017-05-30 12:43:14 -04:00
Christoph Oelckers
b50123ec6b
- avoid function call in VM code.
...
- return after calling ThrowAbortException because this avoids storing some register variables on the stack.
2017-05-30 17:50:56 +02:00
alexey.lysiuk
62bac1d612
Added check for nullptr to CLSS and META instructions of scripting VM
...
https://forum.zdoom.org/viewtopic.php?t=56667
2017-05-30 18:09:51 +03:00
alexey.lysiuk
0c90253a5d
Fixed potentially broken portal rendering after OpenGL context change
...
https://forum.zdoom.org/viewtopic.php?t=56393
2017-05-30 13:01:51 +03:00
Rachael Alexanderson
04e6551bbd
Merge https://github.com/coelckers/gzdoom
2017-05-29 12:59:14 -04:00
alexey.lysiuk
3b61be3145
Removed dependency on dxguid library
...
It's impossible to use VS2017 with XP compatible toolset otherwise
2017-05-29 14:46:56 +03:00
alexey.lysiuk
0f936f39d8
Rewrote directory creation function for Windows
...
Previous implementation had several security issues
https://forum.zdoom.org/viewtopic.php?t=56622
2017-05-29 12:20:30 +03:00
Rachael Alexanderson
4fd010e5e0
Merge https://github.com/coelckers/gzdoom
2017-05-29 04:54:01 -04:00
Rachael Alexanderson
2f7d512acf
Merge commit 'refs/pull/335/head' of https://github.com/coelckers/gzdoom
2017-05-29 04:53:39 -04:00
Rachael Alexanderson
b7295775b9
- Print out warnings when Direct3D initialization fails.
2017-05-29 01:01:08 -04:00
Rachael Alexanderson
5384f26b69
Merge https://github.com/coelckers/gzdoom
2017-05-28 20:16:08 -04:00
Magnus Norddahl
1505f75669
- Fix testcolor and testfade in the software renderer
2017-05-28 23:57:09 +02:00
Rachael Alexanderson
035c036eb2
Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom
2017-05-28 10:50:24 -04:00
Rachael Alexanderson
61660bf147
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-05-28 10:50:06 -04:00
Christopher Bruns
9db4dfd963
Link to platform specific openvr library, and install it, and update license headers.
2017-05-28 10:28:07 -04:00
alexey.lysiuk
e56cda1350
Fixed crash on change particular sound options
...
Happened only when there is a current song but it’s not played, for example in title screen
https://forum.zdoom.org/viewtopic.php?t=56631
2017-05-28 17:18:35 +03:00
Rachael Alexanderson
65bb8a5185
Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom
2017-05-28 07:13:27 -04:00
Rachael Alexanderson
619281de64
Revert "Merge commit 'refs/pull/336/head' of https://github.com/coelckers/gzdoom "
...
This reverts commit a05c38fefd
, reversing
changes made to 0fb1a0604c
.
2017-05-28 07:12:41 -04:00
Christopher Bruns
a49afd5bfc
Initial OpenVR mode.
...
Second attempt: clean up commit, and avoid messing with HDR framebuffer format.
2017-05-28 06:20:32 -04:00
Rachael Alexanderson
a05c38fefd
Merge commit 'refs/pull/336/head' of https://github.com/coelckers/gzdoom
2017-05-28 01:33:59 -04:00
Rachael Alexanderson
0fb1a0604c
Merge https://github.com/coelckers/gzdoom
2017-05-27 21:52:43 -04:00
Christopher Bruns
a149b54226
Maybe avoid gcc compile problem with forward declared enum.
2017-05-27 20:16:00 -04:00
Christopher Bruns
c1bacdbf92
Create initial rotation-tracking-only implementation of OpenVR mode for VR headsets.
2017-05-27 19:42:49 -04:00
Rachael Alexanderson
4545bb2fa1
- rename vid_used3d on windows to vid_glswfb to match Linux. Additionally, the values were reversed to match the Linux variant of this configuration. This CVar now operates exactly the same way it does on Linux, except it defaults to being off and still allows the D3D framebuffer on Windows when it's deactivated.
2017-05-27 04:52:43 -04:00
Rachael Alexanderson
872db304f0
Merge https://github.com/coelckers/gzdoom
2017-05-27 04:31:53 -04:00
Magnus Norddahl
b111a708da
- Fix compile error and some warnings
2017-05-27 06:27:36 +02:00
Magnus Norddahl
3f991429d1
- Reduce the number of naked new/delete calls in OpenGLSWFrameBuffer
2017-05-27 02:31:15 +02:00
Major Cooke
35583621cf
PSPF_MIRROR now corrects the bobx direction.
2017-05-26 18:28:09 -05:00
Rachael Alexanderson
40bbb70799
Merge https://github.com/coelckers/gzdoom
2017-05-26 18:17:35 -04:00
Major Cooke
636e36b90d
Clean-up.
2017-05-26 11:34:26 -05:00
alexey.lysiuk
67d313cf25
Fixed megasphere item selection in bot code
...
https://forum.zdoom.org/viewtopic.php?t=56604
2017-05-26 11:54:42 +03:00
Major Cooke
a25a536c9f
Removed the auto PSPF_FLIP implimentation.
2017-05-25 20:40:54 -05:00
Major Cooke
a111c59286
Added PSPF_MIRROR.
...
- Flips the sprite's drawing and position over entirely. Automatically implies PSPF_FLIP.
2017-05-25 19:46:36 -05:00
Rachael Alexanderson
5c30a99aa9
Merge https://github.com/coelckers/gzdoom
2017-05-25 10:39:14 -04:00
alexey.lysiuk
d633e8afc1
Fixed sector iteration with Floor_Stop and Ceiling_Stop action specials
...
https://forum.zdoom.org/viewtopic.php?t=56582
2017-05-25 10:41:06 +03:00
Rachael Alexanderson
538bfabef8
Merge https://github.com/coelckers/gzdoom
2017-05-23 06:17:46 -04:00
Christoph Oelckers
9d73e4c635
- fixed errors in wallsprite setup for the classic software renderer:
...
* it did not use the correct texture.
* it had a math error in the right edge's y-coordinate calculation.
2017-05-23 09:37:38 +02:00
Dugan Chen
bc0f9023f6
Add mem_fn header to oalsound.cpp
2017-05-22 21:54:58 +02:00
Rachael Alexanderson
7600fdb200
Merge https://github.com/coelckers/gzdoom
2017-05-22 13:10:19 -04:00
svdijk
bdfc42182f
OPLsynth: Default to center panning.
2017-05-22 09:15:02 +02:00
Christoph Oelckers
7bc5573baa
- call P_FindParticleSubsectors before rendering a save picture in OpenGL.
...
This entry point was the only one missing that call.
2017-05-21 12:45:49 +02:00
Christoph Oelckers
fc0855fac7
- fixed size of particles in the hardware renderer.
...
From the look of it the scale was changed in the software renderer several years back but the hardware renderer never got adjusted for it.
This also adds a bit of compensation to round particles so that they get rendered a bit larger than square ones.
2017-05-21 12:36:34 +02:00
Christoph Oelckers
be2cfddb17
- handle the case where SBARINFO only contains a mugshot definition and fall back to the current statusbarclass if creating an SBARINFO-based statusbar fails.
2017-05-21 12:06:22 +02:00
Magnus Norddahl
e27e89b57d
- Make sure a hung worker thread always crashes the application
2017-05-21 12:03:12 +02:00
Rachael Alexanderson
3955b7a4f8
Merge https://github.com/coelckers/gzdoom
2017-05-21 05:52:27 -04:00
Magnus Norddahl
aff9205057
- Fix mipmap filtering bug when using nearest filter
2017-05-21 11:01:37 +02:00
svdijk
371a8755c2
vid_glswfb: Prevent defunct windows.
2017-05-20 23:21:51 +02:00
Rachael Alexanderson
fd0602a163
Merge https://github.com/coelckers/gzdoom
2017-05-19 23:40:51 -04:00
Christoph Oelckers
fc8639226d
- yet again Visual Studio's autocompletion feature deleted some tildes.
2017-05-19 21:36:32 +02:00
Christoph Oelckers
a4231ffd00
- more handling of some very broken old ATI drivers.
2017-05-19 21:33:48 +02:00
Christoph Oelckers
e1cd0dc588
- major optimization on carry scroller code.
...
The old version was checking every single actor in every single sector for being affected by a carry scroller if there was so much as a single such scroller in the map.
Changed it so that the scroll thinker flags all actors in the affected sectors so that these expensive calculations can be skipped for everything else.
This change and reduce think time by 1/3 on maps like ZDCMP2 (on the test machine it went down from 6 ms to 4 ms on this map.)
2017-05-19 16:31:44 +02:00
Christoph Oelckers
9fc309d5b5
- stop the music when processing a fatal error.
2017-05-19 12:20:33 +02:00
Christoph Oelckers
c1e64fa576
- fixed: The rail trail should use r_trail_sparsity, not r_spiral_sparsity.
...
- fixed: Spawning actors on the rail trail must ignore the sparsity CVARs completely.
2017-05-19 12:03:20 +02:00
Christoph Oelckers
c8e631bf26
- fixed: The colormap was not fully initialized for 3D floors in sectors where neither the original floor nor ceiling were visible.
2017-05-19 11:42:44 +02:00
Christoph Oelckers
97b664968e
- removed a few unused VM opcodes.
2017-05-19 10:27:22 +02:00
Rachael Alexanderson
1472627f6a
Merge https://github.com/coelckers/gzdoom
2017-05-17 22:15:48 -04:00
Major Cooke
bb1e927c46
Give the parameter a better name to associate by.
2017-05-17 23:03:22 +02:00
Major Cooke
65f13b0927
- Added a Z offsetting parameter to the ZScript LineAttack function.
...
- Added LAF_OVERRIDEZ flag to LineAttack. Disregards all internal offsetting aside the actor's Z position before adding the offset parameter.
2017-05-17 23:03:22 +02:00
Rachael Alexanderson
0f54d7f854
Merge https://github.com/coelckers/gzdoom
2017-05-17 08:53:34 -04:00
alexey.lysiuk
a92f889e44
Fixed recently introduced compilation warnings
...
src\v_video.cpp(1771): warning C4244: '=': conversion from 'double' to 'int', possible loss of data
src\v_video.cpp(1773): warning C4244: '=': conversion from 'double' to 'int', possible loss of data
2017-05-16 16:39:07 +03:00
Rachael Alexanderson
a93efb1e9e
- slightly increase source code readability by moving a flag from one line to another.
2017-05-16 09:52:50 +02:00
Rachael Alexanderson
8192ad73bd
- changed fall damage so it is max 'TELEFRAG_DAMAGE - 1' instead of a flat 999 (it used to check for >=1000).
2017-05-16 09:52:50 +02:00
Rachael Alexanderson
c6946cc672
- removed all instances of CF_POWERBUDDHA
2017-05-16 09:52:50 +02:00
Rachael Alexanderson
fe023b5ca4
- changed Buddha powerup from a flag to an inventory check
2017-05-16 09:52:50 +02:00
Major Cooke
b1a8ef54f6
- Fixed bitwise comparison.
2017-05-16 09:52:50 +02:00
Major Cooke
6bbbd28a08
- Added missing LAXTELEFRAGDMG support to SelfDamageFactor.
2017-05-15 19:19:35 +02:00
Rachael Alexanderson
a96ef5276d
- Added new flags8 actor field. Isn't it frightening how quickly how we got to our 8th flag field?
...
- Speaking of frightening, added +FRIGHTENING flag.
2017-05-15 19:17:46 +02:00
Rachael Alexanderson
7ded20ca05
Merge https://github.com/coelckers/gzdoom
2017-05-15 03:27:58 -04:00
Dmitri Kourennyi
3b20c26275
Fix A_CheckProximity setting pointer to dead things when it shouldn't.
...
When using A_CheckProximity with CPXF_SETTARGET, the target pointer could
be set to a dead monster even without the CPXF_COUNTDEAD and CPXF_DEADONLY
flags. This is becuase the check for death would occur after setting the
pointer.
Fix simply moves death check to occur before setting pointers.
2017-05-14 20:01:18 +02:00
Major Cooke
795f8f0578
- Added a separate cheat flag to handle buddha powerups. Currently, Buddha powerups could interfere and disable the actual player cheat unintentionally, when the player may not want their actual cheat to be turned off.
...
- Set some overlooked 1000000 damage points to TELEFRAG_DAMAGE inside the falling damage code.
2017-05-14 17:22:46 +02:00
Christoph Oelckers
6a34092742
- fixed automap positioning with linked portals and a camera actor that is transitioning a sector portal.
2017-05-14 13:12:39 +02:00
Christoph Oelckers
437dd68d79
- the Render state must be applied before performing a portal clear screen, because it would still be set to stencil drawing at this point.
2017-05-14 12:42:25 +02:00
Rachael Alexanderson
a7025b5563
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/version.h
2017-05-14 06:41:56 -04:00
Christoph Oelckers
8a91153aeb
- Why does the Visual Studio editor hate tildes so much...?
2017-05-14 12:36:13 +02:00
Christoph Oelckers
ef7e4fe678
- draw empty portals in black, not the last set color.
2017-05-14 12:31:51 +02:00
Christoph Oelckers
0f80b7dcb6
- fixed: P_CollectConnectedGroups should abort if it tries to collect the same portal group more than once, because this would indicate an infinite loop.
2017-05-14 12:24:52 +02:00
Christoph Oelckers
1767dd6a42
- fixed: A_CheckBlock performed item pickup checks which could be done in completely inappropriate spots if this function was used from weapon overlays, for example.
2017-05-14 11:55:32 +02:00
svdijk
6dd570c538
Menu: Fix cycling the "midi devices" menu option.
2017-05-14 12:12:12 +03:00
svdijk
b6ef9fae3e
SDLGLFB: Implement mouse coordinate scaling for the menus.
2017-05-14 12:12:12 +03:00
Magnus Norddahl
788b9f6d54
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-05-14 08:55:39 +02:00
Magnus Norddahl
31125486ad
- Improve line portal rendering somewhat
2017-05-14 08:55:30 +02:00
Christoph Oelckers
b346dd0c09
- added a check for unconnected linked line portals.
2017-05-13 17:45:59 +02:00
alexey.lysiuk
f0d40d6a8a
Added check for patch set existence before loading in FluidSynth
...
This helps to avoid flooding of output with the following messages on every MIDI song change:
fluidsynth: error: Unable to open file "/usr/share/sounds/sf2/FluidR3_GS.sf2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/usr/share/sounds/sf2/FluidR3_GS.sf2"
fluidsynth: error: Unable to open file "/usr/share/sounds/sf2/FluidR3_GM.sf2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/usr/share/sounds/sf2/FluidR3_GM.sf2"
2017-05-13 17:56:26 +03:00
alexey.lysiuk
27384fc70d
Do not create symlink to executable on macOS too
...
This link in build directory pointed to non-existing file since we started to create application bundle with CMake
2017-05-13 17:01:24 +03:00
Magnus Norddahl
4554d90b1d
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-05-13 15:49:09 +02:00
Magnus Norddahl
0a4f4aaffd
- Stop using sqrt when calculating texture coordinates
2017-05-13 15:48:55 +02:00
alexey.lysiuk
3ab4a2238e
Removed some remains of sound system MIDI device
2017-05-13 16:45:02 +03:00
alexey.lysiuk
a8e379553e
Copy default soundfont in post build step
2017-05-13 15:49:23 +03:00
alexey.lysiuk
a01c6b1d65
Fixed build of non-Windows targets
...
src/sound/mididevices/music_fluidsynth_mididevice.cpp:355:13: error: use of undeclared identifier 'BaseFileSearch'
2017-05-13 14:29:29 +03:00
Christoph Oelckers
ba37f093e0
- use FluidSynth as default MIDI device and allow loading a 'gzdoom.sf2' sound font if none is specified. The search rules for this file will be the same as for gzdoom.pk3.
2017-05-13 12:33:14 +02:00
Rachael Alexanderson
d1c6d8543b
Merge https://github.com/coelckers/gzdoom
2017-05-13 04:17:54 -04:00
Chris Robinson
e1fc33c38f
Don't downmix sounds when AL_SOFT_source_spatialize is available
2017-05-12 21:38:45 +02:00
Magnus Norddahl
7af11b1963
- Offset sky in softpoly by 180 degrees
2017-05-12 17:59:22 +02:00
Magnus Norddahl
7a2be275af
- Fix interpolator bug in softpoly
2017-05-12 17:47:11 +02:00
Magnus Norddahl
5c6cbd17a1
- Move polyobj rendering to be handled as a special case in RenderPolyScene
2017-05-12 17:26:17 +02:00
Magnus Norddahl
f7d1a2a574
- Add polyobj support to softpoly
2017-05-12 14:05:32 +02:00
Rachael Alexanderson
d907f18e4c
Merge https://github.com/coelckers/gzdoom
2017-05-12 07:45:46 -04:00
Rachael Alexanderson
029788976d
- fully fix Strife1.wad's MAP10 shooting range.
...
- added the following compatibility.txt properties: setsectortexture, setsectorlight
2017-05-11 18:56:02 +02:00
Rachael Alexanderson
ac244b3229
Merge https://github.com/coelckers/gzdoom
2017-05-10 05:15:49 -04:00
alexey.lysiuk
8fbb5372b2
Fixed 32-bit Windows crash reporter
...
Restored old exception handling for 32-bit Windows executable
Tested on 32-bit Windows XP (previously exited without notification), 64-bit Windows 7 and 10 (previously deadlocked in system DLLs)
2017-05-10 11:34:48 +03:00
Chris Robinson
092b339c8f
Replace usleep with nanosleep for macOS too
2017-05-10 09:44:54 +02:00
Magnus Norddahl
f492e92cb5
- Handle degenerate triangles either sent as input or caused by clipping
2017-05-10 02:43:00 +02:00
Chris Robinson
7ad61a97ed
Fix handling long wait times on POSIX's I_WaitVBL
...
usleep only works for sleeping up to one second. The function is also
deprecated and nanosleep should be used instead.
2017-05-09 23:21:32 +02:00
svdijk
fd8613a11e
CMake: Fix building on 32-bit Linux (Core 2 Duo) again.
2017-05-09 20:48:48 +02:00
Chris Robinson
60cc91e000
Properly unload the backend sound buffers
2017-05-09 19:13:52 +02:00
Christoph Oelckers
0a8083e280
- fixed default obituary handling for predefined damagetypes.
2017-05-09 19:04:07 +02:00
Christoph Oelckers
2bf8e8f1c0
- fixed: InitClipper was missing a call to Clipper.Clear.
2017-05-09 12:20:49 +02:00
Christoph Oelckers
8be7ff01dd
- removed some pointless restrictions from AActor::IsOkayToAttack which prevented its use on normal monsters.
...
This all made sense as long as the function was only used internally but that's not the case anymore.
2017-05-09 09:57:38 +02:00
Christoph Oelckers
c6a516089e
- fixed: OPLio::WriteTremolo wrote the wrong value for operator #0 .
2017-05-08 22:46:35 +02:00
Christoph Oelckers
762ba13cd9
- store the last found OpenGL version in the INI so that modern GL related options can be removed when running old hardware with software rendering.
2017-05-08 19:30:51 +02:00
Christoph Oelckers
4a5fe65ce8
- added missing check for RenderStyle None to GL weapon drawer.
2017-05-08 19:13:18 +02:00
alexey.lysiuk
bdac1c3ad1
Fixed problem with looping of particular music tracks
...
Part of https://forum.zdoom.org/viewtopic.php?t=56333
2017-05-08 18:07:02 +03:00
Christoph Oelckers
26325edddc
- fixed Ogg tag validation.
2017-05-08 17:00:09 +02:00
alexey.lysiuk
f7b8dadedb
Made size of music stream buffer customizable
...
Use snd_streambuffersize CVAR to set buffer size in kilobytes, from 16 to 1024
Name of existed CVAR from removed FMOD sound backend is used
Increased default size of stream buffer to 64 kB like it was in FMOD backend
2017-05-08 10:30:16 +03:00
alexey.lysiuk
3d100e6578
Removed unused #include's from music_libsndfile.cpp
2017-05-08 10:30:16 +03:00
alexey.lysiuk
e1266685d9
Use proper function to set sound offsets in samples
...
This fixes the following compilation warnings:
src\sound\oalsound.cpp(1588): warning C4244: 'argument': conversion from 'unsigned int' to 'ALfloat', possible loss of data
src\sound\oalsound.cpp(1796): warning C4244: 'argument': conversion from 'unsigned int' to 'ALfloat', possible loss of data
2017-05-08 10:29:41 +03:00
Rachael Alexanderson
cdb68f159c
Merge https://github.com/coelckers/gzdoom
2017-05-07 21:29:12 -04:00
alexey.lysiuk
e848abf4df
Fixed restoration of absolute time position for sounds
...
Loading of saved game no longer restarts sounds from beginning
2017-05-07 13:00:06 +03:00
Rachael Alexanderson
0941cda7cc
Merge https://github.com/coelckers/gzdoom
2017-05-07 05:07:22 -04:00
Magnus Norddahl
81de951abc
- Fix missing include
2017-05-06 22:25:18 +02:00
Magnus Norddahl
f083109b51
- Add SSE code to OpenGLSWFrameBuffer::OpenGLPal::Update to workaround a broken auto-vectorizer in GCC
2017-05-06 22:03:32 +02:00
Christoph Oelckers
7f7be9e393
- fixed compile errors in last commit.
2017-05-06 20:38:36 +02:00
alexey.lysiuk
85bb5192b3
Replaced sectorflooroffset with more generic compatibility parameter
...
New parameter setsectoroffset can set offset of floor or ceiling
# Conflicts:
# src/compatibility.cpp
2017-05-06 19:43:35 +02:00
alexey.lysiuk
de97b753f6
Added compatibility parameter to set wall textures
2017-05-06 19:43:35 +02:00
alexey.lysiuk
cd8aa252ae
Added compatibility parameter to set thing skills
...
# Conflicts:
# src/compatibility.cpp
2017-05-06 19:43:35 +02:00
Magnus Norddahl
9011f0ed5b
- Fix texture coordinates for sloped walls
2017-05-06 18:44:06 +02:00
Chris Robinson
996ce4497d
Add a resampler option for the OpenAL backend
2017-05-06 18:07:31 +02:00
Magnus Norddahl
aca628acaf
- Improve wall texture coordinates in softpoly
2017-05-06 15:48:04 +02:00
Christoph Oelckers
567c21cdeb
- fixed recursion in Dim functions. When the main worker function was renamed to DoDim the Super calls were not fixed for it.
2017-05-06 10:44:29 +02:00
Rachael Alexanderson
678949ccd4
Merge https://github.com/coelckers/gzdoom
2017-05-06 00:52:02 -04:00
Magnus Norddahl
5c1dc900e3
- Slightly improve sky rendering in softpoly
2017-05-06 01:43:05 +02:00
Christoph Oelckers
bb12dabe2b
- added a 'protrusion' property to SBARINFO so that the map name display can properly be handled here as well. Until now it was only working for scripted status bars.
2017-05-05 19:32:37 +02:00
Rachael Alexanderson
fa3846ccc6
Merge https://github.com/coelckers/gzdoom
2017-05-05 00:36:22 -04:00
Magnus Norddahl
4fcea96a1c
- Improve softpoly sky rendering a little bit
2017-05-05 03:27:22 +02:00
Christoph Oelckers
2dff0e7309
- fixed: P_TranslateLinedef should not do any byte swapping but require passing of properly ordered values.
...
This gets called from several places, and the only one passing in potentially byte swapped values is P_LoadLineDefs.
All other uses of this function were essentially broken on PowerPC.
2017-05-04 23:52:16 +02:00
Rachael Alexanderson
118976129d
Merge https://github.com/coelckers/gzdoom
2017-05-04 02:38:13 -04:00
Christoph Oelckers
99a61e74c7
- fixed: The first model ID was always initialized to 0, even if that model wasn't even present in the definition.
2017-05-04 00:37:43 +02:00
Rachael Alexanderson
5a450b5eaa
- fixed: +FLIPSPRITE works in mirrors in OpenGL now.
2017-05-03 15:56:33 -04:00
Rachael Alexanderson
00a4993654
- forgot to implement +SPRITEFLIP for OpenGL
2017-05-03 21:13:31 +02:00
Rachael Alexanderson
2acb485121
- Added +SPRITEFLIP which reverses a sprite's left-rightness.
2017-05-03 21:13:31 +02:00
alexey.lysiuk
8303d8bbd1
Fixed name of mpg123 shared library on Linux
...
https://forum.zdoom.org/viewtopic.php?t=56253
2017-05-03 16:56:22 +03:00
Christoph Oelckers
f9445e96f5
- fixed: DPSprite::GetRenderStyle returned the wrong alpha value.
2017-05-03 10:27:20 +02:00
Rachael Alexanderson
00dab8677a
- fixed: Changing fullscreen while vid_renderer != currentrenderer will cause a fake vid_renderer to be passed to the mode change function in order to prevent a crash.
2017-05-03 10:05:46 +02:00
Rachael Alexanderson
a9412ec815
Merge https://github.com/coelckers/gzdoom
2017-05-02 23:26:34 -04:00
Magnus Norddahl
e68da4cd6b
- Fix crash in glswfb if vid_hw2d is toggled off
2017-05-02 22:56:31 +02:00
Magnus Norddahl
c8070c65d4
- Add support for drawing decals on 3d floors in the software renderer
2017-05-02 22:26:13 +02:00
Magnus Norddahl
17108e575a
- Add support for drawing decals on 3d floors in softpoly
2017-05-02 22:24:32 +02:00
alexey.lysiuk
43fc5633af
Fixed player falling through narrow notch upon unmorphing
...
https://forum.zdoom.org/viewtopic.php?t=56230
2017-05-02 17:22:50 +03:00
alexey.lysiuk
f73f42c4a6
Removed unsuccessful attempt to fix sndfile unaligned access
...
This reverts commit 8a36bf5c09
.
2017-05-02 11:22:18 +03:00
Rachael Alexanderson
a59336908c
Merge https://github.com/coelckers/gzdoom
2017-05-02 03:13:40 -04:00
Christoph Oelckers
aac6e65842
- fixed: FxActionSpecialCall did not resolve float to int casts.
2017-05-01 22:44:58 +02:00
Christoph Oelckers
050acc9271
- added rudimentary support for SVE.wad from the Strife Veteran edition so that the extended single player campaign is usable:
...
* all new things got either an sctor definition or are explicitly deleted through the 'doomednums' section in MAPINFO. CTC related actors are non-functional!
* added a 'noskillflags' option to 'doomednums' so that the lightmap definition things in the maps can be repurposed as dynamic lights.
* added the new dagger powerup.
* added MAPINFO entries for the added maps.
2017-05-01 21:25:54 +02:00
alexey.lysiuk
dcded0e183
Handle unloading of canvas textures properly
...
https://forum.zdoom.org/viewtopic.php?t=56207
2017-05-01 16:20:25 +03:00
Rachael Alexanderson
ebf33ed24e
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/posix/cocoa/i_video.mm
2017-04-30 22:16:01 -04:00
Christoph Oelckers
b84f7bcada
- scriptified the weapon firing logic.
2017-05-01 01:55:35 +02:00
Christoph Oelckers
abee2805cb
- the last scriptified bits of P_PlayerThink.
2017-05-01 00:27:58 +02:00
Chris Robinson
6044c876ab
Update LASTRUNVERSION to handle the snd_hrtf change
...
Also snd_hrtf now uses -1 for "auto" and 0 for "off", which makes more sense.
2017-05-01 00:26:28 +02:00
Rachael Alexanderson
65399bf075
- fixed: Added currentrenderer checks to SDL and COCOA implementations of 'swtruecolor'
2017-04-30 16:35:16 -04:00
Rachael Alexanderson
dfa5a3cd07
- Changed cocoa backend's s_currentRenderer to match PC version's 'currentrenderer' to address a possible Mac compilation issue.
2017-04-30 16:21:11 -04:00
Christoph Oelckers
6e25c34fda
- more player code exported
2017-04-30 22:17:51 +02:00
Christoph Oelckers
10deb5ce56
- exported P_PlayerThink to ZScript.
2017-04-30 22:17:50 +02:00
Rachael Alexanderson
8c992647de
- fixed: "vid_renderer" should NEVER be referenced outside of the hardware code. This may fix a crash when changing modes with vid_renderer not matching actual renderer
2017-04-30 16:11:34 -04:00
Rachael Alexanderson
588d028499
Merge https://github.com/coelckers/gzdoom
2017-04-30 16:00:52 -04:00
Chris Robinson
aae6ded2dd
Add snd_hrtf back in to allow enabling HRTF again
...
It's now an Int type instead of Bool. Older config files that had it set to
"true" or "false" will interpret it as 0, which is Auto (the default).
2017-04-30 18:41:39 +02:00
alexey.lysiuk
9a7aa7a7b4
Fixed map name in demos recorded with * argument
...
https://mantis.zdoom.org/view.php?id=642
2017-04-30 16:35:28 +03:00
Rachael Alexanderson
aae9b33198
- fixed: Swapping swtruecolor no longer crashes in OpenGL mode after selecting Software in the menu
2017-04-30 07:39:00 -04:00
alexey.lysiuk
8a36bf5c09
Fixed potential crash in sndfile reader on Intel platform
...
https://mantis.zdoom.org/view.php?id=640
2017-04-30 12:01:28 +03:00
svdijk
4c803b6615
CMake: Fix building on 32-bit Linux (Core 2 Duo).
2017-04-29 13:36:33 +02:00
alexey.lysiuk
be496a89d9
Fixed silent sounds on first play, stereo and precached only
...
https://mantis.zdoom.org/view.php?id=637
2017-04-29 11:44:13 +03:00
Rachael Alexanderson
1d980b87b4
Merge https://github.com/coelckers/gzdoom
2017-04-28 22:14:15 -04:00
Christoph Oelckers
ec1aeaf384
- allow changing to the current map by using "*" as argument. Implemented for 'map', 'changemap' and 'recordmap'.
2017-04-28 11:39:47 +02:00
Rachael Alexanderson
9fc2f805de
Merge https://github.com/coelckers/gzdoom
2017-04-27 14:29:28 -04:00
Christoph Oelckers
694b48423a
- fixed initialization of classes so that AllActorClasses only gets initialized when the game knows what is an actor and what is not.
...
This could result in lost states for weapons because the weapon class did not get added to the array.
2017-04-27 10:52:00 +02:00
Christoph Oelckers
22b70dd222
- fixed: For the last block in an MP3 the buffer address was incorrectly incremented.
2017-04-27 10:08:24 +02:00
Christoph Oelckers
21af612224
- avoid double loading sound data for monoization.
2017-04-26 20:51:06 +02:00
Christoph Oelckers
b5dc5ceb3c
- removed some unused static variables
2017-04-26 14:48:33 +02:00
Rachael Alexanderson
6fa7c9ee0c
Merge https://github.com/coelckers/gzdoom
2017-04-25 20:54:45 -04:00
Christoph Oelckers
99579efd0d
- fixed a few issues with libmpg123 not correctly reporting the sound's length and issues with repeatedly rewinding the song.
2017-04-25 21:30:11 +02:00
Christoph Oelckers
f866e0f02f
- saved the wrong version.
2017-04-25 21:05:36 +02:00
Christoph Oelckers
090502b243
- moved the 'no player start' check to the end of G_DoLoadLevel because inside G_FinishTravel it would leave some data in undefined places that later can cause a crash.
2017-04-25 19:55:05 +02:00
Christoph Oelckers
9375edda11
- removed p_buildmap.cpp.
...
This code had been broken for years and inactive for several months. Since there is really little point fixing it it may just be removed entirely.
2017-04-25 12:40:08 +02:00
alexey.lysiuk
2bb16c684f
Fixed crash caused by 0-length lines in UDMF
...
When line was removed during processing bogus entries remained in sidedefs array
2017-04-24 15:57:30 +03:00
Rachael Alexanderson
88f8c4afcc
Merge https://github.com/coelckers/gzdoom
2017-04-24 08:09:34 -04:00
Chris Robinson
f97efefe7e
Set the source gain to 0 before stopping it
...
Stopping a source in the middle of playback can causing undesirable "popping"
from a sudden change in amplitude. Setting the source gain to 0 gives OpenAL
the opportunity to ramp the source's output to 0, where it can be safely
stopped without causing a sudden change in amplitude.
2017-04-24 13:12:43 +02:00
Chris Robinson
78231d5ba1
Remove unused URLSong functionality
...
This isn't supported with the OpenAL backend, and instead of trying to make a
workaround for it, a better approach would probably be to make a FileReader
implementation that handles URLs.
2017-04-24 13:12:43 +02:00
alexey.lysiuk
e78d88094d
Removed obsolete timer workaround from Cocoa backend
2017-04-23 17:35:35 +03:00
alexey.lysiuk
6fb1689d02
Disabled truecolor software renderer on PowerPC by default
...
Performance on such old hardware is not acceptable
2017-04-23 17:35:35 +03:00
alexey.lysiuk
ab8759049d
Enabled GLSW framebuffer in Cocoa backend by default
...
Added fallback to generic Cocoa implementation if it's not available (i.e. without OpenGL Core Profile support)
Value of vid_glswfb CVAR is now saved to configuration file
2017-04-23 17:35:35 +03:00
Christoph Oelckers
f9735c44de
- fixed signedness issues in OPL code.
2017-04-23 15:40:03 +02:00
alexey.lysiuk
70abf19f76
Replaced pointless comparison with loop_start range check
...
src/sound/oalsound.cpp:1285:17: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
2017-04-23 14:49:36 +03:00
alexey.lysiuk
93fa9ac1c9
Include gitinfo.h in version.h on Windows only
...
Avoid building of several files on each pull/reset/amend/cherry-pick/etc on macOS and Linux
2017-04-23 14:49:36 +03:00
alexey.lysiuk
bd74cf85a4
Added selection of frame buffer implementation in Cocoa backend
...
Added vid_glswfb CVAR but set it to false by default for compatibility reasons
2017-04-23 14:49:36 +03:00
alexey.lysiuk
ea3b47d0ad
Added generic workaround for double type alignment
...
This fixes not only 32-bit Linux/macOS builds but PowerPC Mac target too
2017-04-23 14:49:36 +03:00
alexey.lysiuk
1c6cc3e28f
Proper detection of Intel 64-bit architecture
...
Size of pointer check was not enough
2017-04-23 14:49:36 +03:00
alexey.lysiuk
680d1b2dd6
Moved all CMake modules and launcher templates to designated directory
...
Let's not pollute root directory with various files
2017-04-23 14:49:36 +03:00
Christoph Oelckers
c519e76280
- fixed calculation of clipping rect's lower edge.
2017-04-23 12:58:40 +02:00
Christoph Oelckers
82b032680c
- delete the MMX function, too.
2017-04-23 12:12:49 +02:00
Christoph Oelckers
ace0568d09
- now that SSE2 is a required feature for compiling on x86, DoBlending_MMX has no use anymore and could be removed, as could the checks for bRDTSC, which is an older hardware feature than SSE2. There's also little point printing pre-SSE2 hardware features because they can be assumed to be present on anything the code can run on.
2017-04-23 11:54:08 +02:00
Magnus Norddahl
63e0310961
- add non-sse version of the softpoly drawers
2017-04-23 11:05:48 +02:00
Christoph Oelckers
2621c460e3
Revert "- add CPU.bSSE2 branching support to softpoly"
...
This reverts commit 545241aa06
.
These commits are WIP stuff that should not be in the master branch. A work branch has been created to finalize this code.
2017-04-23 10:39:07 +02:00
Chris Robinson
c2391d6a0d
Fix the default loop end point
2017-04-23 09:06:34 +02:00
Chris Robinson
4b7834465b
Fix off-by-one error for the loop end
2017-04-23 09:06:34 +02:00
Rachael Alexanderson
c71d23f519
Merge https://github.com/coelckers/gzdoom
2017-04-22 22:02:20 -04:00
Magnus Norddahl
fe2864d396
- add the AVX-2 softpoly drawer to the repository for completeness sake (not currently used)
2017-04-22 22:15:09 +02:00
Magnus Norddahl
9c805d1867
- added non-sse version of the true color softpoly drawers
2017-04-22 22:05:47 +02:00
alexey.lysiuk
173fa31383
Fixed internal Dehacked support
...
https://mantis.zdoom.org/view.php?id=619
2017-04-22 22:58:45 +03:00
alexey.lysiuk
e4c73cfc5f
Fixed compilation on Linux
...
src/polyrenderer/drawers/poly_triangle.cpp:212:20: error: ‘CPU’ was not declared in this scope
src/polyrenderer/drawers/screen_triangle.cpp:955:6: error: ‘CPU’ was not declared in this scope
2017-04-22 22:21:34 +03:00
Magnus Norddahl
545241aa06
- add CPU.bSSE2 branching support to softpoly
2017-04-22 20:38:06 +02:00
Christoph Oelckers
3608299e61
- serialize AActor::boomwaterlevel.
...
After changing the splash code this looks necessary.
2017-04-22 15:52:24 +02:00
Christoph Oelckers
882279d600
- clamp the loop end point to the sample size for sound effects so that bogus values do not render the loop start ineffective.
2017-04-22 15:49:39 +02:00
Christoph Oelckers
dc3df4e897
- remove mod_dumb CVAR. This now effectively disabled module playback because the OpenAL backend cannot substitute for it, unlike FMod.
2017-04-22 10:59:52 +02:00
alexey.lysiuk
ecbfb255f7
Fixed handling of default values in EventHandler.SendNetworkEvent()
2017-04-22 10:28:53 +03:00
alexey.lysiuk
370b639ab1
Fixed crash on returning to title screen
...
https://mantis.zdoom.org/view.php?id=615
2017-04-22 09:58:38 +03:00
Rachael Alexanderson
b2ba7a4e18
Merge https://github.com/coelckers/gzdoom
2017-04-21 18:15:48 -04:00
alexey.lysiuk
4e1e527b2c
Fixed compilation with Clang
...
src/sound/oalsound.cpp:1288: error: non-constant-expression cannot be narrowed from type 'uint32_t' (aka 'unsigned int') to 'ALint' (aka 'int') in initializer list [-Wc++11-narrowing]
2017-04-21 22:07:06 +03:00
Christoph Oelckers
3ccd4aa0d1
- fixed: The powerup icons did not blink when expiring.
2017-04-21 18:08:30 +02:00
Christoph Oelckers
0ed3ee6267
- updated the license in fmopl.cpp to the one in the current version of the original file.
2017-04-21 17:48:40 +02:00
Christoph Oelckers
f7a22154b7
- fixed: loop_end needs a different default in the sound effect code than in the music code.
2017-04-21 16:25:36 +02:00
Christoph Oelckers
b3f3500ce5
- added loop tag reading for Ogg and Flac sound effects. Due to lack of test material this is currently untested.
...
- removed unaligned memory access in FindLoopTags.
2017-04-21 12:29:50 +02:00
Christoph Oelckers
66b5c26352
- consider the volume control of all Windows MIDI mapper devices broken, because it may be the GS synth, which is not detectable.
2017-04-21 10:37:03 +02:00
Rachael Alexanderson
11ec35b061
Merge https://github.com/coelckers/gzdoom
2017-04-20 21:04:33 -04:00
alexey.lysiuk
c681d6eff0
Fixed applying of multiple pain chances
...
https://mantis.zdoom.org/view.php?id=608
2017-04-20 22:09:18 +03:00
alexey.lysiuk
e19f6fe8ea
Final touch in fixing restart CCMD
...
https://mantis.zdoom.org/view.php?id=595
2017-04-20 16:20:51 +03:00
alexey.lysiuk
403634c0e1
Fixed crash caused by failure to allocate memory block of very special size
...
Allocation of 810 FState objects (32400 bytes in total) could be performed in MSVC x64 build but worked in 32-bit version
This fixes https://mantis.zdoom.org/view.php?id=602
2017-04-19 17:52:43 +03:00
ZZYZX
29402ff685
ZScript version of SetCameraToTexture
2017-04-19 11:20:17 +02:00
Christoph Oelckers
1f69a000df
- removed redundant sound includes.
2017-04-18 20:55:40 +02:00
alexey.lysiuk
00dc649cc2
Fixed compilation with Clang
...
error: cannot pass object of non-trivial type 'FString' through variadic constructor; call will abort at runtime [-Wnon-pod-varargs]
2017-04-18 18:46:53 +03:00
Rachael Alexanderson
5d11c9962b
Merge commit '8db239d'
2017-04-18 11:33:52 -04:00
Christoph Oelckers
42a34ddd58
- fixed: The menu descriptors were not cleared on restart, leaving some menu data behind.
2017-04-18 16:54:06 +02:00
Christoph Oelckers
8180d34765
- added user configurable menus where soundfonts, patch sets or Timidity EXEs can be selected from lists being stored in the config file to reduce the hassle of testing MIDIs with different settings.
2017-04-18 16:43:07 +02:00
Christoph Oelckers
fb12c58533
- restart the music if the OPL core or the config file for the softsynths is changed, except for the GUS synth, which loads all its data during engine startup and cannot swap it out.
...
- added arrays to the config to hold entries for the softsynths' config files. This is not active yet, but will later be used to give the user a list of config options instead of having to type it by hand.
2017-04-18 16:43:07 +02:00
alexey.lysiuk
8db239d34f
Fixed build with NO_OPENAL defined
...
https://mantis.zdoom.org/view.php?id=596
2017-04-18 16:40:31 +03:00
alexey.lysiuk
1d84b28fc2
Added support for bool type in SetUserVariable() ACS function
...
https://mantis.zdoom.org/view.php?id=462
2017-04-18 15:37:45 +03:00
alexey.lysiuk
b6774e723b
Fixed non-functional XInput support when built with modern Windows SDKs
...
https://mantis.zdoom.org/view.php?id=568
2017-04-18 10:42:05 +03:00
alexey.lysiuk
03b77c0505
Set names for mpg123 and sndfile macOS dynamic libraries
2017-04-17 19:21:57 +03:00
alexey.lysiuk
a7cb7bbb9c
Backported changes from newer sndfile.h to fix non-MSVC compilation
2017-04-17 18:51:29 +03:00
Christoph Oelckers
7405f541e8
- allow dynamic loading of all sound related libraries without providing any SDK at all.
...
The needed headers are now included in the repo, which for these libraries is possible thanks to a stable ABI (at least on Windows, the other platforms still need to be checked but the headers only add, never remove or change existing content.)
The big advantage of this setup is that it allows building the project on Windows without any necessary setup - all that needs to be provided is the DLLs from the binary package.
This still requires some fixes for macOS and Linux. On MacOS the proper library names are missing and the ones for Linux are not verified. Both platforms should work, though, if the dynamic loading is disabled.
2017-04-17 17:05:09 +02:00
Christoph Oelckers
a48a3d0abf
- fixed some signedness warnings in OPL code.
2017-04-17 15:37:45 +02:00
Christoph Oelckers
96d328de9b
- removed all Doom Source license and all default Raven copyright headers and replaced them with GPLv3. Also fixed the license in a few other files.
...
For some files that had the Doom Source license attached but saw heavy external contributions over the years I added a special note to license all original ZDoom code under BSD.
2017-04-17 13:33:19 +02:00
Christoph Oelckers
57d703236b
- changed Doom source license to GPL in all subdirectories and fixed missing licenses in a few other files.
2017-04-17 12:27:19 +02:00
Christoph Oelckers
b68741b17f
- removed the special conditions of the FraggleScript license, now that they are no longer needed. Also relicensed the two original files under the GPL for consistency.
2017-04-17 10:31:25 +02:00
Christoph Oelckers
33ee761b37
- fixed: The timing of Heretic's lava damage was not correct.
2017-04-17 10:10:09 +02:00
alexey.lysiuk
59626cf843
Simplified transition to OpenAL sound backend
2017-04-17 10:46:38 +03:00
alexey.lysiuk
4519ab12e9
Fixed compilation errors
...
src/sound/oplsynth/musicblock.cpp:3:10: fatal error: 'muslib.h' file not found
src/sound/oplsynth/oplio.cpp:410:12: error: use of undeclared identifier 'cos'
src/sound/oplsynth/oplio.cpp:410:41: error: use of undeclared identifier 'sin'
2017-04-17 10:27:11 +03:00
Christoph Oelckers
c219811a54
- removed FMod as the last remaining piece of code that is not GPL compatible.
...
Please consider GZDoom as licensed under the GPL starting with this commit, even though the license headers have not been changed yet.
2017-04-17 01:06:54 +02:00
Christoph Oelckers
79ed1f73e7
- some minor cleanup, including renaming some data structutrd in the OPL code.
2017-04-17 00:46:27 +02:00
Christoph Oelckers
ba5721f98a
- rewrote the OPL middle layer to remove the MusLib code.
...
The new version keeps the non-MusLib code of both files and replaces most of the rest with code from Chocolate Doom.
2017-04-17 00:39:03 +02:00
Christoph Oelckers
4f67dc4f01
- fixed: DCorpsePointer's constructor was doing nasty stuff while the object wasn't fully set up yet.
2017-04-15 19:07:13 +02:00
Christoph Oelckers
47bcd8aaa2
- added per-layer translucency support to the OpenGL PSprite drawer.
2017-04-15 17:25:46 +02:00
Major Cooke
259e3127fe
- Fixed crash with corpse queueing.
2017-04-15 16:43:40 +02:00
Christoph Oelckers
1ee9256842
- did a complete workover of the weapon sprite translucency code that got inherited from QZDoom.
...
This was very poorly done without ever addressing the issues a composite render style can bring, it merely dealt with the known legacy render styles.
The same, identical code was also present in two different places.
The oversight that AlterWeaponSprite overrode even forced styles was also fixed.
OpenGL is not implemented yet but with the problems eliminated should be doable now.
2017-04-15 16:41:00 +02:00
Christoph Oelckers
046e250f2e
- fixed: Ceiling_CrushStop checked the wrong argument for the remove parameter.
2017-04-15 14:54:43 +02:00
Christoph Oelckers
2d0da4fcfa
- fixed: Dynamic arrays of objects in structs were not registered for garbage collection.
2017-04-15 13:20:58 +02:00
Christoph Oelckers
069e4e9b0b
- allow tag == 0 for backside activation on a few more actions.
2017-04-15 12:03:21 +02:00
Christoph Oelckers
e333e31410
- fixed: Vector array elements failed to allocate the proper amount of registers.
2017-04-15 12:03:21 +02:00
alexey.lysiuk
490fd8f3a0
Fixed applying of multiple damage factors
...
https://mantis.zdoom.org/view.php?id=586
2017-04-15 12:33:26 +03:00
Rachael Alexanderson
997a62de36
Merge https://github.com/coelckers/gzdoom
2017-04-14 23:09:21 -04:00
Christoph Oelckers
edebea4f8d
- allow specifying a custom class for message box display.
2017-04-14 23:28:54 +02:00
Christoph Oelckers
ca1981c52f
- fixed missing null pointer check in BuiltinNameToClass.
2017-04-14 23:06:12 +02:00
Christoph Oelckers
c73b71807b
- fixed: During hub travel, static thinkers may not be deserialized.
...
Since they are static, the version that got carried over from the last level will still be there and the more current version.
2017-04-14 22:06:29 +02:00
Christoph Oelckers
3d8821ee82
- make polyobject setup errors not abort the map.
2017-04-14 20:27:46 +02:00
Christoph Oelckers
d014395dae
- do not delete the namespaces when removing compiler symbols. They still get referenced by some types and must remain until the engine shuts down.
2017-04-14 19:40:50 +02:00
Christoph Oelckers
7186342221
- do not try to serialize static arrays.
2017-04-14 19:25:47 +02:00
Christoph Oelckers
d03c33f393
- added Translation.GetID.
2017-04-14 17:40:05 +02:00
alexey.lysiuk
2add60a4c4
Single RUNTIME_CLASS() macro for classes and templates
...
The main purpose of this is to fix compilation errors with GCC/Clang
src/dobject.h:87:48: error: expected primary-expression before ‘)’ token
2017-04-14 18:07:20 +03:00
Christoph Oelckers
cde450dd8a
- some enhancements for PowerReflection.
2017-04-14 16:51:11 +02:00
Christoph Oelckers
329c168cc2
- added a distance parameter to A_SprayDecal.
2017-04-14 16:28:54 +02:00
Christoph Oelckers
92acbdc625
- made GetClassName an intrinsic and expanded it to also work on class types.
2017-04-14 16:14:27 +02:00
Christoph Oelckers
1135f154b7
- fixed: For Screen.SetClipRect, -1 is a valid value for width and height so it must not be clamped away.
2017-04-14 15:41:36 +02:00
Christoph Oelckers
47bb29bac6
- check the return value of ogl_LoadFunctions and abort if it indicates failure.
...
If this happens there is normally something very wrong on the system side so continuing is not advised.
2017-04-14 15:32:04 +02:00
Christoph Oelckers
7983f6ea4f
- fixed incorrect return variable.
2017-04-14 15:23:18 +02:00
alexey.lysiuk
fd07b56ae9
Fixed link error for MSVC x64 build with modern Windows SDK
...
win32video.obj : error LNK2001: unresolved external symbol IID_IDirectDraw2
2017-04-14 16:13:51 +03:00
Christoph Oelckers
33145610b1
- let's better add a null check to Create<> in case allocation or construction fails. Although unlikely it's not impossible.
2017-04-14 13:48:00 +02:00
Christoph Oelckers
cd180d29c7
- block direct use of 'new' for DObjects.
...
This is to ensure that the Class pointer can be set right on creation. ZDoom had always depended on handling this lazily which poses some problems for the VM.
So now there is a variadic Create<classtype> function taking care of that, but to ensure that it gets used, direct access to the new operator has been blocked.
This also neccessitated making DArgs a regular object because they get created before the type system is up. Since the few uses of DArgs are easily controllable this wasn't a big issue.
- did a bit of optimization on the bots' decision making whether to pick up a health item or not.
2017-04-14 13:31:58 +02:00
Rachael Alexanderson
4b2b2af63e
Merge https://github.com/coelckers/gzdoom
2017-04-14 05:51:36 -04:00
Christoph Oelckers
929affa3cb
- removed MarkACSThinker.
...
The global variable holding a pointer to this thinker should be a weak reference to the instance in the thinker chain, there is no need to mark this global variable, as the thinker's lifetime is only determined by the thinker chain.
- committed a few Posix related file the last commit missed.
2017-04-14 10:59:57 +02:00
Christoph Oelckers
dc5a5419fc
- took DCanvas and all its subtypes out of the DObject tree.
...
I have no idea why they were even in there, as they intentionally circumvented all GC related features - they declared themselves fixed if prone to getting collected, they all used OF_YesReallyDelete when destroying themselves and they never used any of the object creation or RTTI features, aside from a single assert in V_Init2.
Essentially they were a drag on the system and OF_YesReallyDelete was effectively added just to deal with the canvases which were DObjects but not supposed to behave like them in the first place.
2017-04-14 10:48:18 +02:00
Rachael Alexanderson
93564078fe
Merge https://github.com/coelckers/gzdoom
2017-04-14 01:05:26 -04:00
Magnus Norddahl
d407aa3157
- Fix linear filtering bug for sprites
2017-04-13 22:16:26 +02:00
Christoph Oelckers
b1057cee36
- fixed: do not draw armor on the fullscreen HUD if the amount is 0.
2017-04-13 20:43:17 +02:00
Christoph Oelckers
2d098e99fb
- fixed: WP_NOCHANGE had different values in native and script code, resulting in problems with weapon selection.
...
This now explicitly allocates a single object it can safely point to instead of trying to hack around it.
2017-04-13 18:59:45 +02:00
Christoph Oelckers
98dab9c4b9
- took PTypeBase and all its subclasses out of the DObject hierarchy.
...
- moved scope flag to a new variable that is specific to PType instead of hijacking the ObjectFlags for this.
2017-04-13 17:47:17 +02:00
Rachael Alexanderson
2c4552da42
Merge https://github.com/coelckers/gzdoom
2017-04-13 10:09:47 -04:00
Christoph Oelckers
988fe8d735
- removed all RTTI from the type table.
...
Using names is just as good as using types so now this is what's done.
2017-04-13 16:01:38 +02:00
Christoph Oelckers
aeb455d705
- removed all RTTI checks for the types.
2017-04-13 15:38:06 +02:00
Christoph Oelckers
b2d944974e
- first stage of simplifying the type system.
...
Let's use inline checkers in PType instead of constantly having to do clumsy IsKindOf checks etc. Once complete this also means that the types can be taken out of the class hierarchy, freeing up some common names.
2017-04-13 12:52:18 +02:00
Christoph Oelckers
522ce59be2
- use in-class initialization for FLightDefaults to avoid uninitialized variables in the future.
2017-04-13 12:50:43 +02:00
alexey.lysiuk
cced9e014b
Fixed issue with actors occasionally unaffected by dynamic lights
...
https://mantis.zdoom.org/view.php?id=536
2017-04-13 13:14:33 +03:00
alexey.lysiuk
fbc1028d2b
Fixed crash when parsing DECORATE constant expressions
2017-04-13 12:06:59 +03:00
alexey.lysiuk
cbf2a21c83
Fixed registration of tentative classes
2017-04-13 12:03:45 +03:00
alexey.lysiuk
c99cecea8e
Fixed warnings reported by GCC/Clang
...
src/p_pspr.cpp:363:37: warning: more '%' conversions than data arguments [-Wformat]
src/gl/textures/gl_texture.cpp:845:21: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
2017-04-13 10:40:44 +03:00
alexey.lysiuk
1889efa814
Fixed build with Clang
...
Fixed bunch of compilation errors:
cannot pass non-trivial object of type 'FString' to variadic method; expected type from format string was 'char *' [-Wnon-pod-varargs]
Fixed linker erorr:
g_doomedmap.cpp.o: In function `InitActorNumsFromMapinfo()':
src/g_doomedmap.cpp: undefined reference to `PClass::FindActor(FName)'
2017-04-13 10:40:43 +03:00
Rachael Alexanderson
a15031706d
Merge https://github.com/coelckers/gzdoom
2017-04-12 20:33:38 -04:00
Christoph Oelckers
1712667ce2
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-04-13 02:18:16 +02:00
Christoph Oelckers
85d8244d03
- fixed: With the reorganization of the class data the setup of actor replacements must be delayed until after InitializeDefaults has been called.
2017-04-13 02:18:06 +02:00
Christoph Oelckers
6599e2c425
- moved the VM types into their own file and only include it where really needed.
2017-04-13 01:12:04 +02:00
Christoph Oelckers
3e47f00ba0
- the new order requires manual deletion of all class descriptors.
2017-04-12 22:57:14 +02:00
Christoph Oelckers
fc9e304189
- separated class descriptors from VM types.
...
Combining these two groups of data has been the cause of many hard to detect errors because it allowed liberal casting between types that are used for completely different things.
2017-04-12 22:46:49 +02:00
Christoph Oelckers
afd6743965
- moved AddNativeField to PSymbolTable, too.
2017-04-12 18:29:58 +02:00
Christoph Oelckers
8dc11317dd
- Moved WriteFields into SymbolTable as well.
2017-04-12 17:42:10 +02:00
Christoph Oelckers
96631e8808
- make PClass not inherit from PStruct.
...
Having these two types related can cause problems with detection in the compiler because for some parts they need quite different handling.
Common handling for the fields has been moved into PSymbolTable but overall redundancy was quite minor as both types share surprisingly little functionality.
2017-04-12 17:21:13 +02:00
alexey.lysiuk
20a9f17a15
Fixed handling of count parameter's default value in Array.Delete()
...
https://mantis.zdoom.org/view.php?id=571
2017-04-12 17:40:17 +03:00
Christoph Oelckers
0d7b7d6ab1
- merged PStruct and PNativeStruct.
...
There were exactly 4 places in the code that checked for the difference, this is better done with a flag.
2017-04-12 15:12:41 +02:00
Christoph Oelckers
63eb3e331e
- un-const-ify some functions.
2017-04-12 14:40:29 +02:00
Christoph Oelckers
abc4481431
- set PointedType to null for PClassPointer to simplify the functions for this class.
2017-04-12 13:11:59 +02:00
Christoph Oelckers
6308251084
- added a FindSymbol wrapper to PClass so that other code does not need to access the symbol table directly.
...
- added an isActor utility function to codegen.cpp to simplify a few constructs.
2017-04-12 13:08:41 +02:00
Christoph Oelckers
b17ab7a133
- put PObjectPointer to some use.
...
- fixed: There was no check for compatible class pointers.
2017-04-12 11:40:40 +02:00
Christoph Oelckers
bc486904cd
- split PPointer into PPointer and PObjectPointer.
...
A pointer to an object has quite different semantics so let's do this with proper virtual inheritance. This should allow to simplify a lot of pointer related checks in the compiler.
2017-04-12 10:52:54 +02:00
Christoph Oelckers
80801d11b1
- removed some redundant static_casts.
2017-04-12 10:29:04 +02:00
Christoph Oelckers
9c9b2ccf6d
- replaced more dyn_casts and checks for RUNTIME_CLASS(PClassActor)
...
It is preferable to use IsDescendantOf wherever possible if we ever want to be able to separate PClass from PType.
2017-04-12 10:20:58 +02:00
Christoph Oelckers
5350721ec5
- removed PClass::DeriveData because it is no longer needed.
...
- fixed: IsVisibleToPlayer and optimized it a bit more.
- moved SourceLumpName to PClass, so that it can also be used for non-actors (there's a lot of non-Actor classes already.)
- separated the serializer for PClassPointer from PPointer. Even though not doable, a pointer to a class type is something entirely different than a class pointer with a restriction so each should handle its own case.
2017-04-12 09:55:27 +02:00
Rachael Alexanderson
d5ad0b5b42
Merge https://github.com/coelckers/gzdoom
2017-04-11 21:48:17 -04:00
Magnus Norddahl
df8fa1274a
- Oops, forgot to actually disable vid_glswfb in last commit
2017-04-12 03:22:38 +02:00
Magnus Norddahl
96834fa524
- Turn off vid_glswfb, gl_es on Linux ARM and stop saving it in the config file until it fully works
2017-04-12 03:21:43 +02:00
Christoph Oelckers
0e0eca0e0f
- replaced some dyn_casts with calls to FindActor.
...
- fixed type checks in A_Morph.
2017-04-12 01:29:51 +02:00
Christoph Oelckers
e4d2380775
- moved all remaining fields from PClassActor to FActorInfo.
...
- added a few access functions for FActorInfo variables.
With PClassActor now empty the class descriptors can finally be converted back to static data outside the class hierarchy, like they were before the scripting merge, and untangle the game data from VM internals.
2017-04-12 00:07:41 +02:00
Christoph Oelckers
854053a14f
- use TArrays instead of TMaps to store damage factors and pain chances.
...
For these fields maps have no advantage. Linearly searching a small array with up to 10 entries is nearly always faster than generating a hash for finding the entry in the map.
2017-04-11 23:29:37 +02:00
Christoph Oelckers
4afe2d4218
- moved OwnedStates and NumOwnedStates out of PClassActor.
2017-04-11 22:44:35 +02:00
Christoph Oelckers
05240ccbe5
- fixed redundant reallocation of constructable meta fields.
...
- some optimization of access to OwnedStates in old DECORATE.
- consolidate all places that print a state name into a subfunction.
- allocate states from the ClassDataAllocator memory arena. States do not need to be freed separately from the rest of the static class data.
2017-04-11 21:48:41 +02:00
Rachael Alexanderson
7040bc2156
Merge https://github.com/coelckers/gzdoom
2017-04-11 14:06:13 -04:00
Christoph Oelckers
311ce2362a
- started moving stuff out of PClassActor into meta data.
...
This reinstates the old FActorInfo as part of the meta data a class can have so that the class descriptor itself can be freed from any data not directly relevant for managing the class's type information.
2017-04-11 19:37:56 +02:00
Christoph Oelckers
6a3ddaa8fa
- moved Restricted/ForbiddenToPlayerClass fully to the script side.
...
This required some fixes for allowing to read from metadata arrays.
2017-04-11 15:11:13 +02:00
Christoph Oelckers
45691e91c9
- removed PClassActor::PointerSubstitution.
...
This is not needed anymore because classes do not need to be replaced. The only reason this was implemented was the original design with the class descriptors taking on all the metadata themselves.
2017-04-11 14:03:49 +02:00
Christoph Oelckers
1febf277af
- fixed crash on bad PNGs.
...
The cast to a signed long could create negative numbers which failed the sanity check and caused a stack corruption.
2017-04-11 10:29:52 +02:00
Magnus Norddahl
f049e6145b
- remove all usage of std::make_unique to keep things C++11 compliant
2017-04-11 01:25:44 +02:00
Magnus Norddahl
bdf02ea67c
- move masked reads
2017-04-11 01:11:30 +02:00
Christoph Oelckers
7a6e70e777
- reenabled the part of OP_THROW that throws a VMAbortException. This part is still needed for a runtime variable access check.
2017-04-11 00:11:36 +02:00
alexey.lysiuk
4c1e03ebff
Fixed alignment issue with GCC/Clang i386 build
2017-04-10 22:20:34 +03:00
alexey.lysiuk
d5edd3db36
Commented out remains of VM exception handling opcodes
...
This fixes build with GCC/Clang
2017-04-10 22:18:43 +03:00
Christoph Oelckers
040c70714c
- commented out the exception handling opcodes in the VM.
...
They are currently not used and not planned to be used - and they are rather costly by increasing stack size per call quite significantly.
2017-04-10 20:41:55 +02:00
Christoph Oelckers
9ae97502be
- removed the last remnants of the ATAGs.
2017-04-10 17:08:52 +02:00
Christoph Oelckers
60dd58e7d2
- most ATAG stuff is gone, except for the static storage space in the VMFunction.
2017-04-10 16:06:18 +02:00
Christoph Oelckers
5464336035
- removed ATAGs from the function builder.
2017-04-10 15:48:27 +02:00
Christoph Oelckers
e551ef52f8
- removed atag parameter from GetConstantAddress.
2017-04-10 15:39:04 +02:00
Christoph Oelckers
ef77cbd295
- stop using the ATAGs for checking pointer types in asserts.
...
This is an incredibly costly way to do a debug check as it infests the entire VM design from top to bottom. These tags are basically useless for anything else but validating object pointers being passed to native functions (i.e. mismatches between definition and declaration) and that simply does not justify a feature that costs execution time in non-debug builds and added memory overhead everywhere.
Note that this commit does not remove the tags, it only discontinues their use.
2017-04-10 15:18:31 +02:00
alexey.lysiuk
175e784b67
Fixed applying of powerup effects after (un)morph
...
https://mantis.zdoom.org/view.php?id=556
2017-04-10 15:46:30 +03:00
alexey.lysiuk
287a0933bd
Fixed lookup of inventory and ammo types in FraggleScript
...
https://forum.zdoom.org/viewtopic.php?t=55950
2017-04-10 11:58:53 +03:00
Rachael Alexanderson
00531cda49
Merge https://github.com/coelckers/gzdoom
2017-04-09 11:53:40 -04:00
Christoph Oelckers
e1698c6d41
- split P_PlayerThink into several smaller functions.
...
This is for a future script export where overriding the actions separately may be interesting.
2017-04-08 15:45:11 +02:00
Christoph Oelckers
18d6fb7f49
- fixed: USEACTORPITCH in the model code was still using inverted pitch.
2017-04-08 10:24:12 +02:00
Rachael Alexanderson
cecf41e4d0
Merge https://github.com/coelckers/gzdoom
2017-04-07 21:50:23 -04:00
Magnus Norddahl
9f180b29b9
- Remove GL_MAJOR_VERSION check for OpenGL ES as apparently not even this can be done right by driver writers
2017-04-08 00:19:39 +02:00
Rachael Alexanderson
a90692330b
Merge https://github.com/coelckers/gzdoom
2017-04-07 09:55:00 -04:00
Rachael Alexanderson
3a36ffee35
- vid_glswfb is now true by default in Linux
2017-04-07 09:53:59 -04:00
Magnus Norddahl
73effc70bb
- The legacy OpenGL path resets the GLSL version, which in turn makes #version 0 crash the AMD driver. Old stuff that uses the legacy path will not get glswfb acceleration.
2017-04-07 15:45:08 +02:00
Magnus Norddahl
35c35fc26f
- Check if glCreateProgram or glCreateShader fails, because apparently AMD found a way to make exactly that happen
2017-04-07 15:27:04 +02:00
Rachael Alexanderson
51f30a8b1e
Merge https://github.com/coelckers/gzdoom
2017-04-06 23:55:20 -04:00
Rachael Alexanderson
b1e1f25218
- detect gl es shaders and request them
2017-04-06 23:34:50 -04:00
Magnus Norddahl
85a9984807
- Add OpenGL ES 3 support to GL renderer
2017-04-06 23:34:42 -04:00
Magnus Norddahl
b7482e10e2
- Detect dinosaur OpenGL and refuse to use it
2017-04-06 23:34:37 -04:00
Magnus Norddahl
e690de25a8
- Use SDL_GL_GetProcAddress on platforms where the SDL is being used. Since SDL initialized OpenGL for us, it is the only reliable way of retrieving proc addresses.
...
- Check if ogl_LoadFunctions failed and make OpenGLSWFrameBuffer gracefully recover from that
2017-04-06 23:33:56 -04:00
Rachael Alexanderson
dc1695918e
- detect gl es shaders and request them
2017-04-06 23:29:15 -04:00
Magnus Norddahl
994740b3ae
- Add OpenGL ES 3 support to GL renderer
2017-04-07 04:09:04 +02:00
Magnus Norddahl
a9591f57a6
- Detect dinosaur OpenGL and refuse to use it
2017-04-07 03:03:21 +02:00
Magnus Norddahl
0376d4e8fc
- Use SDL_GL_GetProcAddress on platforms where the SDL is being used. Since SDL initialized OpenGL for us, it is the only reliable way of retrieving proc addresses.
...
- Check if ogl_LoadFunctions failed and make OpenGLSWFrameBuffer gracefully recover from that
2017-04-07 02:17:34 +02:00
Christoph Oelckers
74faacd218
- fixed: FxVMFunctionCall::GetDirectFunction did not perform any checks on the function's self pointer and failed to report a mismatch as an error.
...
- also fixed two places in the code where the above caused some incorrect definitions not to be detected.
2017-04-06 20:52:38 +02:00
Rachael Alexanderson
a1473c48c3
Merge https://github.com/coelckers/gzdoom
2017-04-06 04:30:38 -04:00
alexey.lysiuk
ca4888eb3d
Added CVar.GetCVar() function to do player-dependent console variables lookup
2017-04-06 10:51:36 +03:00
alexey.lysiuk
26e4b74261
Restored initial behavior of CVar.FindCVar()
...
https://mantis.zdoom.org/view.php?id=537
2017-04-06 10:50:40 +03:00
alexey.lysiuk
ac5e516148
Removed obsolete forward declaration
2017-04-06 10:39:53 +03:00
Magnus Norddahl
1312e9fb72
- fix linker error on platforms with no SSE support
2017-04-05 22:36:57 +02:00
alexey.lysiuk
a27ab73f33
Fixed broken dialogue customization in USDF parser
...
https://mantis.zdoom.org/view.php?id=539
2017-04-05 13:43:49 +03:00
Rachael Alexanderson
c06bd028d9
Merge https://github.com/coelckers/gzdoom
2017-04-05 00:53:00 -04:00
alexey.lysiuk
dd30d2a045
DEHACKED lumps from IWAD now have precedence over embedded lumps and separate files
...
See https://forum.drdteam.org/viewtopic.php?t=7588
Processing order is now the same as in Chocolate Doom
prBoom+ loads separate files after all WAD lumps though
This makes sense but would change loading sequence existed in ZDoom for years
2017-04-04 12:20:12 +03:00
Rachael Alexanderson
5851408803
Merge https://github.com/coelckers/gzdoom
2017-04-04 01:29:14 -04:00
Magnus Norddahl
f12c42d8d1
- add fuzz mode to softpoly
2017-04-04 01:11:55 +02:00
Magnus Norddahl
5c5e3bdcba
- change fuzzing to not do any offsetting but keep the shading pattern produced by it
2017-04-03 19:11:38 +02:00
Major Cooke
d3ef3b585b
- fixed: Flat sprites did not rotate their sprite angles when given the FLATSPRITE flag.
2017-04-03 17:06:33 +02:00
Rachael Alexanderson
12d39c74ef
Merge https://github.com/coelckers/gzdoom
2017-04-02 21:38:20 -04:00
Major Cooke
73c1451048
- fixed: The functionality for AddEventHandlers and EventHandlers were backwards.
2017-04-02 19:23:28 +02:00
Christoph Oelckers
e074c75609
- added a generic TransformRect to the status bar so that the proper transformations can be applied to draw operations that require special parameters not supported by the stock functions.
2017-04-02 12:58:31 +02:00
alexey.lysiuk
4cf3e1be2c
Removed obsolete workaround for Apple's GCC 4.x from node builder
2017-04-02 11:51:58 +03:00
alexey.lysiuk
bb9cd1b159
Removed special initialization of legacy render styles
...
Workaround for Apple's GCC 4.0.1 is now completely pointless
2017-04-02 11:41:04 +03:00
alexey.lysiuk
5187acd44f
Fixed undefined behavior in drawing of status bar graphics
...
Debug configuration built with Apple's Clang had bogus render styles applied to graphics in status bar
2017-04-02 11:38:59 +03:00
alexey.lysiuk
659f75c84a
Avoid duplication of member in OpenGL software framebuffer class
2017-04-02 10:13:25 +03:00
alexey.lysiuk
63f85f6b07
Fixed compilation of Cocoa backend
...
Use the same member names in framebuffer class for all backends
2017-04-02 10:11:41 +03:00
Rachael Alexanderson
643bdac514
Merge https://github.com/coelckers/gzdoom
2017-04-02 02:34:32 -04:00
Magnus Norddahl
4268090738
- switch OpenGLSWFrameBuffer to use m_Lock instead of LockCount
2017-04-02 00:47:18 +02:00
Magnus Norddahl
4a9dffa70d
- change subsector gbuffer to use a 8x8 block memory layout to avoid having to clip memory reads and writes
2017-04-01 23:21:06 +02:00
Magnus Norddahl
0ed60b8df6
- fix OpenGLSWFrameBuffer::Begin2D
2017-04-01 22:14:04 +02:00
Christoph Oelckers
3f552ea95f
- added loop tag reading to the new streaming music class.
...
This is somewhat brute-force thanks to the surprising lack of good documentation for the Ogg headers. The only other option would have been some rather bloated library for a function that should be 25-30 lines at most.
2017-04-01 21:40:36 +02:00
Christoph Oelckers
dfd3535e02
- added a dedicated player class for streamed music formats (i.e. MP3, Ogg and Flac)
...
The idea is to have more control on the game side instead of dealing with these formats in the backend, which was done for FMod because it already had the decoders implemented.
However, with OpenAL this setup makes no sense and only complicates future extensions that can be better handled at a higher level.
2017-04-01 19:47:12 +02:00
Magnus Norddahl
4a0b3c3bab
- speed up triangle setup slightly
2017-04-01 16:42:24 +02:00
Rachael Alexanderson
2b2297b73e
Merge https://github.com/coelckers/gzdoom
2017-04-01 10:11:52 -04:00
Christoph Oelckers
54764c136d
- changed the 2D draw abort check to use a dedicated variable, that gets set in Begin2D and unset at the end of D_Display.
...
This is really all the extent where 2D draw operations may be allowed. Trying to detect this from other variables is not reliable.
2017-04-01 12:59:58 +02:00
Christoph Oelckers
9dc8933109
- let 'stat think' also print the number of active thinkers.
2017-04-01 12:30:38 +02:00
alexey.lysiuk
36ad485edd
Proper default value for GL framebuffer lock in Cocoa backend
...
No more error when running with +map command line parameter with classic HUD:
> VM execution aborted: Attempt to draw to screen outside a draw function
> Called from BaseStatusBar.DrawImage [Native]
> Called from DoomStatusBar.DrawFullScreenStuff at gzdoom.pk3:zscript/statusbar/doom_sbar.txt, line 140
> Called from DoomStatusBar.Draw at gzdoom.pk3:zscript/statusbar/doom_sbar.txt, line 41
2017-04-01 13:16:31 +03:00
Christoph Oelckers
e780cd8297
- seems the wrong version of this got committed...
2017-04-01 12:04:31 +02:00
Christoph Oelckers
41f2f61b94
- minor VM optimization: Precalculate a function's frame size when compiling it instead of doing it each time it gets called.
...
This made up ca. 10% of the 'call' instruction's execution time.
2017-04-01 10:42:47 +02:00
alexey.lysiuk
893607c96c
Fixed crash in decals handling caused by reference to undefined class
...
https://forum.drdteam.org/viewtopic.php?t=7589
2017-04-01 10:36:35 +03:00
alexey.lysiuk
59ae50aecb
Fixed compilation warning reported by GCC/Clang
...
src/gl/textures/gl_texture.cpp:691:25: warning: comparison of integers of different signs: 'unsigned int' and 'int' [-Wsign-compare]
2017-04-01 10:24:05 +03:00
Magnus Norddahl
da6bfe65ff
- only calculate gradients once
2017-04-01 04:38:15 +02:00
Magnus Norddahl
6db89a2ce1
- clean up the triangle setup functions
2017-04-01 03:44:45 +02:00
Rachael Alexanderson
24b6924428
Merge https://github.com/coelckers/gzdoom
2017-03-31 14:58:45 -04:00
alexey.lysiuk
f48af606df
Fixed creation of BaseStatusBar
...
No more access to memory ouside of class instance
Minimized amount of copy-pasted code
https://mantis.zdoom.org/view.php?id=511
2017-03-31 12:53:28 +03:00
Rachael Alexanderson
bf9edec91a
Merge https://github.com/coelckers/gzdoom
2017-03-30 18:04:37 -04:00
Christoph Oelckers
5601364aaf
- fixed some issues with Set/GetClipRect.
2017-03-30 21:12:39 +02:00
Christoph Oelckers
228c57fae3
- fixed: Even SBARINFO needs to call the scripted Init method of the status bar because it initializes some data used by the automap HUD.
2017-03-30 19:00:26 +02:00
Christoph Oelckers
91ac6e30fe
- fixed: The automap tried to access a variable before it was initialized.
...
The fix is not ideal but the way this code is used it cannot be done any better.
2017-03-30 18:51:24 +02:00
Christoph Oelckers
3a1228bf95
- exported the clipping rectangle to scripting and added a statusbar scaling wrapper for it.
...
- fixed: BaseStatusBar.Fill did not pass its flags parameter to the native function.
2017-03-30 12:13:28 +02:00
Christoph Oelckers
a3ef711d1d
- added a special slider type for the scaling options that prints a descriptive text instead of the slider for the special settings.
...
- fixed the adaptive scale calculation in GetUIScale which had the coordinates mixed up.
2017-03-30 11:30:09 +02:00
Rachael Alexanderson
39826753f9
Merge https://github.com/coelckers/gzdoom
2017-03-30 02:11:03 -04:00
Christoph Oelckers
f95c29ad28
cleaned up the scaling options.
...
- all 5 settings affected by uiscale have been changed to have the exact same semantics: -1, if supported means special scaling, this is available for HUD and status bar, 0 means to use uiscale, any larger value is a direct scaling factor.
- scaling is cut off when the factor is larger than screenwidth/320 or screenheight/200 because anything larger will definitely not fit.
- a lot of code has been cleaned up and consolidated. Especially the message code had an incredible amount of redundancy.
- all scaling options have been moved into a submenu. This menu is not complete, though - it still requires a special menu widget to convey the intended information without confusing the user.
2017-03-30 02:16:23 +02:00
Christoph Oelckers
1dcc017daf
- reimplemented the position display, but changed its position a bit upward.
...
- activated the RenderOverlay event, now that it can be called from the correct spot, i.e. right after the top level HUD messages are drawn. The system's status output will still be drawn on top of them.
2017-03-29 23:51:53 +02:00
Christoph Oelckers
bde73fc530
- added automatic brightmaps.
...
Everything in the brightmaps/auto directory will automatically be assigned to the same-named texture.
2017-03-29 23:13:11 +02:00
Christoph Oelckers
7011010ff2
- fixed the drain callback.
...
- changed the effect spawn prevention of the Hexen flame strike weapon and reverted the attempt to fix this in FastProjectile.
This cannot be fixed in the base class, which was doing everything right. It's the flame missile that was doing undefined things by stopping its movement without clearing its missile flag. This cannot work because missiles are given some minimal forced velocity to ensure collision detection and any attempt to address this without clearing the missile flag is doomed to fail.
2017-03-29 22:50:13 +02:00
Christoph Oelckers
3f9ad55432
- allow multiple expressions in 'for' iteration part.
2017-03-29 22:18:52 +02:00
Christoph Oelckers
b38934b532
- fixed declaration of ACS getters for status bar.
...
- fixed some uninitialized variables in font print code.
2017-03-29 21:54:11 +02:00
Christoph Oelckers
01b095c911
- added colorization for untranslated fonts. This uses the light color of the vertices. The software rendered 2D code will ignore this infomation.
...
- added a virtual OnRetrun method to menus.
2017-03-29 21:22:05 +02:00
Christoph Oelckers
d36f656caf
- added a callback for when damage is drained from a target.
2017-03-29 20:25:54 +02:00
Christoph Oelckers
356144a537
- fixed: The player menu was not able to set the new name because the security check did not account for the text enter menu being present.
2017-03-29 20:11:58 +02:00
Christoph Oelckers
9d1031f0ba
- fixed ForcedScale handling in SBARINFO.
...
Due to the setup it would miss setting it when changing between HUDs.
2017-03-29 20:01:57 +02:00
Christoph Oelckers
401a1e80e8
- fixes typo in actionspecials.h.
2017-03-29 19:24:56 +02:00
Christoph Oelckers
1d4ab0cc2a
- implemented proper scaling for the status bar itself.
...
This allows using the UI scale or its own value, like all other scaling values.
In addition there is a choice between preserving equal pixel size or aspect ratio because the squashed non-corrected versions tend to look odd, but since proper scaling requires ununiform pixel sizes it is an option.
- changed how status bar sizes are being handled.
This has to recalculate all scaling and positioning factors, which can cause problems if the drawer leaves with some temporary values that do not reflect the status bar as a whole.
Changed it so that the status bar stores the base values and restores them after drawing is complete.
2017-03-29 19:23:40 +02:00
Christoph Oelckers
7ba6860102
- scriptified the automap HUD and made it obey hud_scale instead of always being fully scaled.
2017-03-29 14:20:22 +02:00
Christoph Oelckers
2f06c09681
- fixed map name display on the automap HUD
...
This would cut off overlong names and the handling for status bars with protruding elements was far too simplistic and worse, making assumptions based on game mode.
It now uses a virtual function to query the status bar itself for returning this information so it can be overridden and uses V_BreakLines to split the text if it is wider than the display.
2017-03-29 10:36:16 +02:00
Rachael Alexanderson
9f38b2b107
Merge https://github.com/coelckers/gzdoom
2017-03-28 22:40:40 -04:00
Christoph Oelckers
fabf8451e7
- use Fill to draw Strife's health bars.
2017-03-29 02:24:04 +02:00
Christoph Oelckers
598523a1de
- moved all coordinate adjustment for the status bar mode into one function and use this function in all places where status bar related coordinate adjustments need to be performed, also in SBARINFO.
...
- fixed unscaled status bar placement.
- fixed inventory count display for Doom status bar.
2017-03-29 01:59:03 +02:00
Christoph Oelckers
914c829f79
- added Floor/Ceiling_MoveToValueAndCrush action specials.
2017-03-29 01:25:02 +02:00
Christoph Oelckers
3a569f176d
- added GetLineX/GetLineY ACS functions.
2017-03-29 01:02:29 +02:00
Magnus Norddahl
d160424aea
- added DFrameBuffer::HasBegun2D to allow scripting to test if 2D drawing is active (instead of using IsLocked, which may return false when vid_hw2d is active)
2017-03-29 00:45:53 +02:00
Christoph Oelckers
054d9a5bcc
- allow passing the activator to ScriptCall.
2017-03-29 00:43:12 +02:00
Christoph Oelckers
19e7d60275
- removed DSBarInfo::Scaled because it tended to disagree with StatusBar->Scaled.
2017-03-29 00:35:35 +02:00
Christoph Oelckers
2d1641f0cd
- fixed: Reference types passed as a reference parameter were not properly checked for.
2017-03-29 00:00:25 +02:00
Christoph Oelckers
5e3e4a3bd1
- fixed: The wall spliter for 3D lights did not initialize the resulting colormap's fog density value.
2017-03-28 23:36:26 +02:00
Christoph Oelckers
fa893c082b
- changed the default for hud_scale to 0 (i.e. use uiscale)
...
- allow calling Menu.SetMenu from play code so that in-game menus can be opened.
2017-03-28 22:51:37 +02:00
Rachael Alexanderson
9da596cd9c
Merge https://github.com/coelckers/gzdoom
2017-03-28 16:29:07 -04:00
Christoph Oelckers
6870efe134
- added a GetCVarString ZScript/DECORATE function.
...
- fixed: loading a savegame triggered PlayerEntered events.
2017-03-28 21:37:43 +02:00
nashmuhandes
99d1581c27
Added "DontLightActors" flag for dynamic lights. Actors will not be illuminated by lights that are given this flag.
2017-03-28 21:33:16 +02:00
Christoph Oelckers
bdf761e457
- moved th player resurrection code into a player_t method.
2017-03-28 21:29:14 +02:00
Christoph Oelckers
71fe4a83c9
- fixed: the translucent flat drawer used a bad condition for dynamic light processing which caused a problem with the GL 3.x lighting method.
2017-03-28 21:18:03 +02:00
Christoph Oelckers
cd94d0927a
- fixed a problems with BeginHUD clobbering gST_Y.
...
The code involved is a total mess and needs some cleanup.
2017-03-28 20:49:06 +02:00
Magnus Norddahl
e8ba1156af
- add rect drawers for softpoly's player sprites
2017-03-28 16:46:22 +02:00
alexey.lysiuk
4716b712b1
Fixed compilation issues with isnan()
...
Need to do it in pure C++ way to avoid C99 macro at all costs
Tested with CI targets, on Debian Jessie using GCC 4.9 and on Ubuntu 16.04 using GCC 5.4
2017-03-28 17:10:06 +03:00
Christoph Oelckers
e2e17f575c
- added safeguards to all 2D drawing functions to throw an exception if used outside a valid 2D draw context.
...
This is necessary because the hardware accelerated renderers will hide the problem, but with pure software rendering to a locked hardware surface, like DirectDraw can result in a crash.
Note that ANY mod that gets caught in this did something wrong!
2017-03-28 13:25:17 +02:00
Christoph Oelckers
f3db5f3803
- added a clipping rectangle to DCanvas that can be used independently of DrawTexture calls.
...
Currently this is only being used for draw operations that are not automap related, i.e. DrawLine, DrawPixel and FillSimplePoly are not subjected to it.
2017-03-28 13:06:24 +02:00
Christoph Oelckers
c4c2b440fc
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-03-28 11:00:18 +02:00
Christoph Oelckers
b9485d4edf
- ported the Hexen status bar to zscript.
...
Note that DrawBar with a background texture does not work yet because the clipping rectangle is not done yet.
2017-03-28 11:00:05 +02:00
Magnus Norddahl
d15def7d41
- remove TriVertex::NumVaryings as this did not help on readability at all
2017-03-28 10:52:19 +02:00
Magnus Norddahl
5adf7463cd
- support render styles on decals
2017-03-27 21:59:43 +02:00
Magnus Norddahl
0537e9c1ba
- implement all styles for sprites in softpoly
2017-03-27 21:03:51 +02:00
Christoph Oelckers
78095460ac
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-03-27 21:01:47 +02:00
Christoph Oelckers
a6bf93c624
- implemented the Heretic status bar.
2017-03-27 21:01:40 +02:00
alexey.lysiuk
020c34abfa
Added workaround for undefined isnan()
...
All our continuous integration targets have no problems with C99 isnan() macro but on Ubuntu 16.04 compilation fails
It appeared that some implementation of C++ Standard Library may undefine bunch of C macros to avoid conflicts with own declarations
2017-03-27 17:06:21 +03:00
Magnus Norddahl
e865ba60f5
- support particle styles in softpoly
2017-03-27 11:33:16 +02:00
alexey.lysiuk
bed559f763
Fixed compilation with GCC/Clang
...
src/g_statusbar/sbar.h:399:23: error: extra qualification on member 'DrawString'
2017-03-27 11:55:17 +03:00
Magnus Norddahl
ad992d2ffd
- add support for choosing the particle style in the software renderer
2017-03-27 10:12:57 +02:00
alexey.lysiuk
5f44bc4d5f
Fixed crash in line portal setup
...
https://mantis.zdoom.org/view.php?id=488
2017-03-27 10:55:51 +03:00
Christoph Oelckers
0fdd118906
- change statusbar drawers to use the top left of the virtual screen as origin, not the top left of the actual status bar, to bring this in line with SBARINFO.
...
The Strife status bar which was still native code had it differently and that was used as the initial guideline.
2017-03-27 09:52:30 +02:00
Rachael Alexanderson
2338fe7e66
Merge commit 'c8eabe5'
2017-03-26 21:57:23 -04:00
Christoph Oelckers
bc95e5180d
- moved the BarShader textures into the texture manager so that ZScript can use them. ZScript only knows about TextureIDs, but those require the texture to be handled by the texture manager.
2017-03-27 01:55:47 +02:00
Christoph Oelckers
bb04eea996
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-03-27 01:06:28 +02:00
Christoph Oelckers
a112b29c43
- implemented the inventory bar. This object is a bit special because it requires a lot of parameters, most of which are easily set to defaults. To make handling easier, most are passed through a container object which does some processing up front.
...
- finished work on the Doom status bar. I also took the opportunity to fix the layout of the inventory bar which is a bit broken in SBARINFO.
- tuned the selection rules for deciding what creates the status bar, so that the most recent definition that can be found is chosen.
2017-03-27 01:02:10 +02:00
Christoph Oelckers
e791c957d9
- implemented the regular Doom status bar.
...
The DOOM status bar and HUD are complete, except the inventory bar.
2017-03-26 22:04:58 +02:00
alexey.lysiuk
c8eabe57ff
Fixed compilation warning reported by GCC/Clang
...
src/v_draw.cpp:503:25: warning: comparison of integers of different signs: 'uint32_t' (aka 'unsigned int') and 'int' [-Wsign-compare]
2017-03-26 22:10:05 +03:00
alexey.lysiuk
e5d4d9a36a
Fixed compilation with GCC/Clang
...
src/swrenderer/line/r_walldraw.cpp:102:13: error: expected unqualified-id before ‘(’ token
2017-03-26 22:10:05 +03:00
Magnus Norddahl
84e94f2a32
- change softpoly psprite drawing to do exactly what the software renderer does
2017-03-26 18:55:23 +02:00
Christoph Oelckers
0cbbd8d4b1
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-03-26 18:41:44 +02:00
Christoph Oelckers
08b3c38304
- simplified the parameters of the HUD draw functions by moving all booleans into one flags word and ordering them so that the less likely ones to be used can be made optional.
...
- got rid of the image list in the Doom status bar. The cost of the texture lookup is mostly irrelevant here so clearer and shorter code is preferrable.
- moved the box fitting code from DrawTexture into the native function to have all coordinate calculations in one place which is necessary to implement proper alignment default handling. Without higher level functions altering positioning the default can be set to automatic alignment determination, i.e. the value's sign decides where something is placed. Of course for special cases this can be overridden.
- use ANIMDEFS to animate the inventory arrow,
2017-03-26 18:41:24 +02:00
Magnus Norddahl
a12f0862c9
- remove softpoly intersection math class
2017-03-26 17:12:20 +02:00
alexey.lysiuk
28be42675d
Fixed build of SDL backend on macOS
2017-03-26 11:49:23 +03:00
Magnus Norddahl
ffc90f16ab
- Simplify the PolyDrawArgs interface
2017-03-26 10:10:55 +02:00
Magnus Norddahl
7b58eab332
- fix softpoly light visibility bug
2017-03-26 05:28:27 +02:00
Christoph Oelckers
488fface50
- started port of Doom status bar to ZScript.
...
Fullscreen HUD done with the exception of key and inventory bar. I also used the opportunity to make it a bit more resistant against badly designed inventory icons.
2017-03-25 21:40:17 +01:00
Christoph Oelckers
3e67a8bafa
- let hud_scale act like an override to uiscale, just like con_scale does.
...
- better handling of ForceScale for the fullscreen HUD that doesn't mess around with CVARs.
- moved the mug shot into the status bar, because this is global state that needs to be shared between different pieces of code which want to display a mug shot.
- SBARINFO should work off the current status bar settings instead of the ones stored in its script object
2017-03-25 18:32:47 +01:00
Rachael Alexanderson
71ad6c9651
Merge https://github.com/coelckers/gzdoom
2017-03-25 11:19:27 -04:00
alexey.lysiuk
093a05b588
Reset OpenGL 2D drawer state fully on each frame
...
https://mantis.zdoom.org/view.php?id=469
2017-03-25 11:32:39 +02:00
alexey.lysiuk
80f3c1ed81
Mouse input can now be disabled completely in Cocoa backend
2017-03-25 11:04:06 +02:00
Rachael Alexanderson
f5e1502bd7
Merge https://github.com/coelckers/gzdoom
2017-03-25 03:53:25 -04:00
Magnus Norddahl
04057b8b91
- implement the blending modes for palette mode in softpoly
2017-03-25 08:38:27 +01:00
Rachael Alexanderson
c5805ddd6e
- removed another vestigial #define NO_SSE
2017-03-25 01:46:41 -04:00
Rachael Alexanderson
2c3d867946
- fixed invalid variable reference on ARM
2017-03-25 01:40:13 -04:00
Rachael Alexanderson
f1ce0f1136
- Removed redundant #ifdef __arm__ #define NO_SSE from 2.5D drawers
2017-03-25 01:39:09 -04:00
Rachael Alexanderson
2d035a39b4
- fixed: Pushed -DNO_SSE for ARM processors unconditionally. We don't support SSE whatsoever on ARM so all code should always be aware of it.
2017-03-25 01:15:24 -04:00
Magnus Norddahl
af5355c69d
- fix SSE intrinsics being used on arm
2017-03-25 06:14:19 +01:00
Rachael Alexanderson
733cf1acc5
Merge https://github.com/coelckers/gzdoom
2017-03-25 00:26:06 -04:00
Christoph Oelckers
bdb9275f8c
- made the mugshot accessible to ZScript.
...
Note that there is no direct access, all this exposes is a single function to get the current face's texture which then can be drawn using the existing functions.
2017-03-25 01:22:42 +01:00
Christoph Oelckers
2d17594f6f
- converted the Strife status bar to use the new HUD specific draw functions so that it also can benefit from coming changes.
...
Note that the pop screens are special because they are not subject to scaling - they will always be drawn with the current resolutions clean scale. As a result they cannot use the HUD drawers but instead continue to use the low level draw functions directly.
2017-03-25 00:35:19 +01:00
Christoph Oelckers
b17b8d32ad
completely redid the active powerup drawer for the HUD
...
- replaced Inventory.DrawPowerup with a GetPowerupIcon method so that the calling code can handle the drawing and apply its own rules. This was a major design flaw of allowing the inventory items to handle the drawing themselves, because they were unable to adjust to different HUD frontends. Note that any mod that overrides DrawPowerup will not draw any icon that expects to be handled that way!
- the alternative HUD now has its own, separate drawer that obeys the AltHUD's rules, and not the ones of the normal fullscreen HUD.
- the standard drawer has been scriptified as a virtual function.
- Both drawers now handle positioning of the icon inside its assigned box themselves instead of trusting the powerup item to do it correctly.
- DTA_HUDRules and Screen.DrawHUDTexture are to be considered deprecated because both do not integrate into the redesigned HUD code.
2017-03-24 22:58:16 +01:00
Magnus Norddahl
321e2da979
- initialize clipper with the view frustum for better performance
...
- change translucent objects to be pointers for faster sorting
2017-03-24 22:04:07 +01:00
Christoph Oelckers
6760e01a0d
- implemented the status bar's DrawString function and ported the fullscreen HUD part of the Strife status bar to use the new functionality.
2017-03-24 20:09:50 +01:00
Rachael Alexanderson
2063813348
Merge https://github.com/coelckers/gzdoom
2017-03-24 15:06:05 -04:00
Magnus Norddahl
ac518e23bf
- improve triangle setup performance a little bit
2017-03-24 20:00:53 +01:00
Rachael Alexanderson
f6d9d153b1
- fixed: moved blur before and outside of menu dimming code.
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
b747b0c3c6
- made gl_menu_blur into a menu option
...
- made bluramount also into a gameinfo option
- negative gl_menu_blur cvar now uses gameinfo option, 0 disables it
- removed gl_menu_blur_enabled since gl_menu_blur==0 does that anyway
- made gl_menu_blur default to -1 to use gameinfo option
- add default gameinfo bluramount options
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
954f21f71d
- changed defaults
...
- moved CVARs to head of file as forward declaration
- FGLRenderer::BlurScene now checks if postprocessing is enabled before executing
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
e49b549364
- added CVARs to control menu blur
...
- made blur effect menu only
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
959fb2577b
- Unfriendly players now spawn at deathmatch starts.
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
48e98c66de
- fixed: this should probably be bumped to match GZDoom
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
23141dc38a
- QZDoom-ify
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
ff3d3f13c8
- Implement hostile coop for -FRIENDLY players.
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
786c4f01c8
- Monsters no longer search for players who are unfriendly.
2017-03-24 14:59:25 -04:00
Magnus Norddahl
93a6e4bc94
Add an aggressive blur pass for the scene
2017-03-24 14:59:25 -04:00
Magnus Norddahl
bc8a4474d5
- optimize PolyTriangleDrawer::clipedge
...
- remove slow calls to roundf in the triangle setup functions
2017-03-24 13:04:02 +01:00
alexey.lysiuk
c1e425920e
Fixed compilation with GCC and Clang
2017-03-24 13:02:00 +02:00
Magnus Norddahl
f178646e1a
- improve sector portals rendering in softpoly
...
- fix a softpoly memory leak and change vertex list to be allocated using the frame allocator
2017-03-24 07:28:28 +01:00
Christoph Oelckers
b5720ee1e7
- initial work on DrawString method.
2017-03-24 02:38:44 +01:00
Christoph Oelckers
617934e1c2
- added a few exports for game strings which the SBARINFO string drawer can access and which should also be available by ZScript.
...
- merged BaseStatusBar and CustomStatusBar back together.
Since the low level draw functions are better done in native code for both performance and debuggability the split has become pointless.
2017-03-24 02:12:36 +01:00
Magnus Norddahl
c21037fb03
- fix sky sector portals
2017-03-24 02:11:24 +01:00
Christoph Oelckers
a3ee3c287e
- major progress on the status bar code: SBARINFO's DrawGraphic has been ported into a generic function of the base statusbar class and put to use for a few items on the Strife status bar.
...
- decided to ditch the widget system I had started to lay out. As it turns out that would make things far more complicated and slower than they need to be.
2017-03-24 00:47:08 +01:00
Christoph Oelckers
74a2d58a52
- made the coordinate check fatal. If this happens the loaded map will be broken, there is no point trying to recover.
2017-03-23 10:19:07 +01:00
Christoph Oelckers
f31fb64750
- added range checks to UDMF coordinate fields.
2017-03-23 10:09:54 +01:00
Magnus Norddahl
e12f48699e
- fix the culling bugs in softpoly by switching to a pseudo-angle clipper
2017-03-23 03:41:44 +01:00
Christoph Oelckers
31ea33bfc4
- rewrote the condition nodes from SBARINFO in ZScript. This compiles but hasn't been tested yet.
2017-03-23 00:25:26 +01:00
Christoph Oelckers
9bd75bcac5
- some conceptual work on statusbar stuff. This looks like a viable approach to build something that can replace SBARINFO.
2017-03-22 19:56:21 +01:00
Christoph Oelckers
f0e4f54c80
- one more bit of scriptification.
2017-03-22 18:38:09 +01:00
Christoph Oelckers
1423d5f42a
- scriptified the SBARINFO wrapper.
...
This serves no purpose in itself but it removes a native side class from the status bar class hierarchy which allows for better editing options later.
2017-03-22 17:29:13 +01:00
Christoph Oelckers
04c2565d7f
- added Get/SetValue functions to PBool.
2017-03-22 15:44:54 +01:00
Christoph Oelckers
62fbb00bc9
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-03-22 14:59:35 +01:00
Christoph Oelckers
4c51a4fc59
- reimplemented the health bar for Strife's status bar.
2017-03-22 14:59:12 +01:00
Rachael Alexanderson
09c3060728
- fixed: skybug on ARM was caused by undefined conversion from float to unsigned int. adding intermediary signed int cast fixes this problem.
2017-03-22 05:51:12 -04:00
Magnus Norddahl
b2e61412da
- add missing sprite blends to the soft poly drawer
2017-03-22 09:11:21 +01:00
Christoph Oelckers
4417afd548
- changed VMValue to handle strings by reference.
...
This makes VMValue a real POD type with no hacky overloads and eliminates a lot of destructor code in all places that call a VM function. Due to the way this had to be handled, none of these destructors could be skipped because any value could have been a string.
This required some minor changes in functions that passed a temporary FString into the VM to ensure that the temporary object lives long enough to be handled. The code generator had already been changed to deal with this in a previous commit.
This is easily offset by the code savings and reduced maintenance needs elsewhere.
2017-03-22 01:44:56 +01:00
Christoph Oelckers
9bffe4ee50
- scriptified the main statusbar interface and the Strife status bar.
...
Note that the Strife status bar does not draw the health bars yet. I tried to replace the hacky custom texture with a single fill operation but had to find out that all the coordinate mangling for the status bar is being done deep in the video code. This needs to be fixed before this can be made to work.
Currently this is not usable in mods because they cannot initialize custom status bars yet.
2017-03-22 00:32:52 +01:00
Rachael Alexanderson
4110f34139
- fixed: non-SSE2 drawers still had SSE2 intrinsics for light calculations, preventing successful compilation on ARM.
2017-03-21 17:51:09 -04:00
Magnus Norddahl
fc3cb01029
- only ray test sprites on lights that are shadowmapped
2017-03-21 14:32:48 +01:00
Magnus Norddahl
25a30f8b7e
- remove vectorcall from the 8 bit drawer
2017-03-21 14:28:31 +01:00
Magnus Norddahl
d437b342db
- replaced the softpoly drawers with templated versions
2017-03-21 14:12:19 +01:00
alexey.lysiuk
7aa6a6b0b3
Restored explicit assignment operators for VMValue
...
Unfortunately strings require special handling and so all operators must be available
This partly solves https://mantis.zdoom.org/view.php?id=453 (and https://mantis.zdoom.org/view.php?id=459 too)
2017-03-21 12:14:50 +02:00
Magnus Norddahl
11e5759913
- detached the poly renderer from the software renderer
2017-03-20 08:28:16 +01:00
Christoph Oelckers
f45371e231
- reverted the counter for the vertex angle cache to a simple incrementing global variable.
...
Using I_MSTime is not precise enough, because some camera textures can be done quicker. It was pointless anyway trying to make this multithreading-safe, the entire caching idea here makes no sense if two clippers can simultaneously work on the same level data without changing the memory organization and rendering it ineffective.
2017-03-20 01:21:33 +01:00
Christoph Oelckers
1031481167
- added some checks to exclude dynamic lights from being subjected to shadowmapping if they do not touch any one-sided lines from the back side. This condition is a requirement for a 1D shadowmap to even have an effect.
2017-03-20 00:34:19 +01:00
Christoph Oelckers
0721aef218
- fixed: FxAssign used the wrong value type for emitting the store operation.
...
It used the expression's value type, but needs to use the variable's, which can be different when the assignment is synthesized from a builtin function.
2017-03-19 21:36:18 +01:00
Christoph Oelckers
403c5693a9
- cleaned out a large part of unused methods from VMValue.
...
- keep string registers which are being used as function parameters allocated until after the function call returns. This is for allowing to pass strings by reference which would avoid some costly constructor/destructor loops in the call instruction.
2017-03-19 21:25:30 +01:00
Christoph Oelckers
0a11e38967
- let SBARINFO always read ST_X and ST_Y from the wrapper because it just too liberally changes these values in unpredictable ways.
2017-03-19 19:49:52 +01:00
Christoph Oelckers
6b95371813
- made a few adjustments to the clean factor calculation so that on large screens the smaller factor gets preferred.
...
Without such tweaking the menu scale tends to get a bit too large on some screen sizes.
2017-03-19 18:38:16 +01:00
Christoph Oelckers
0cfdd699ad
- exported the base thinker class for sector lighting effects to ZScript.
2017-03-19 13:15:38 +01:00
Christoph Oelckers
d74b6a6896
- typo...
2017-03-19 12:41:00 +01:00
Christoph Oelckers
fd9dc9e3f4
- fixed handling for OkayToSwitchTarget.
2017-03-19 12:07:02 +01:00
Christoph Oelckers
ac95cba848
- fixed generic class type properties to handle "" and "none" as 'no class'.
2017-03-19 12:02:17 +01:00
Christoph Oelckers
2c789a2d75
- looks like the last commit missed a few files.
2017-03-19 11:35:24 +01:00
Christoph Oelckers
845c43876c
- moved all trivial actor properties into the scripts as 'property' declarations.
2017-03-19 11:30:28 +01:00
Rachael Alexanderson
4784aae098
- backport cl_oldfreelooklimit from Skulltag - due to the advent of capped skies, there really was no reason to keep the upper limit so low.
2017-03-19 00:36:52 -04:00
Robert Cochran
077de36139
Fix method member being a qualified name
...
This breaks the Linux build with GCC. This is non-standard behavior, but
apparently Visual Studio allows it.
2017-03-18 22:44:21 +01:00
Christoph Oelckers
2c7ceaf96a
- fixed the check for one-subsector BSPs.
2017-03-18 22:44:03 +01:00
Christoph Oelckers
3cced6c7cc
- fixed the early-outs for empty functions in the VM caller.
...
OP_RET should not be used as an absolute number here.
2017-03-18 21:31:43 +01:00
Christoph Oelckers
622b4a6457
- switched over to the scripted intermission screens.
2017-03-18 21:19:32 +01:00
Christoph Oelckers
9ef88ea327
- need to be careful with ctype functions - the way they are written they will do bad things with non-ASCII characters if signed chars are fed to them.
2017-03-18 19:37:36 +01:00
Christoph Oelckers
a2f2be17ef
- status screen fully scriptified but not active yet.
2017-03-18 19:35:26 +01:00
alexey.lysiuk
9a10a0f136
Added handling of any space characters in BEX par times
...
Back to Saturn X E1: Get Out Of My Stations (https://www.doomworld.com/idgames/levels/doom2/megawads/btsx_e1 ) uses tabs instead of spaces and bunch of 'Need data after par' warnings were printed during loading
PrBoom supports arbitrary space characters too
2017-03-18 18:28:19 +02:00
Christoph Oelckers
745b96beec
- made the status screen a class and scriptified a few more functions.
2017-03-18 15:45:36 +01:00
Christoph Oelckers
74e9d9db1a
- fixed: The evaluation of multi-string ZScript properties did not work correctly.
2017-03-18 15:45:36 +01:00
alexey.lysiuk
cb5ddeff25
Fixed compilation warnings reported by Clang
...
src/gl/scene/gl_clipper.h:150:23: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
src/gl/dynlights/gl_aabbtree.cpp:137:24: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:137:34: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:137:44: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:139:6: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:139:30: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:139:54: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:142:6: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:143:3: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:144:3: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:167:6: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_shadowmap.cpp:163:31: warning: '&&' within '||' [-Wlogical-op-parentheses]
src/p_saveg.cpp:367:16: warning: comparison of integers of different signs: 'unsigned int' and 'int' [-Wsign-compare]
src/p_saveg.cpp:402:60: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
src/p_setup.cpp:1553:39: warning: format specifies type 'ptrdiff_t' (aka 'long') but the argument has type 'int' [-Wformat]
src/scripting/zscript/zcc_compile.cpp:293:74: warning: field 'AST' will be initialized after field 'mVersion' [-Wreorder]
src/swrenderer/drawers/r_thread.cpp:113:21: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
2017-03-18 15:13:02 +02:00
alexey.lysiuk
0130fc27cc
Fixed compilation with GCC/Clang
...
src/scripting/backend/codegen.cpp:317:35: error: cannot initialize return object of type 'FxExpression *' with an rvalue of type 'bool'
2017-03-18 14:31:15 +02:00
Christoph Oelckers
b416322032
- converted FInterBackground into a class so that the scripts can use it.
...
- fixed some issues with default value matching in savegames.
2017-03-18 13:25:22 +01:00
Christoph Oelckers
1e9ef2b1df
- started scriptifying the level intermission screen. This compiles but is not active yet.
...
- allow treatment as one-character string constants as character constants. This became necessary because name constants already use single quotes and are much harder to repurpose due to a higher degree of ambiguity.
- fixed: protected methods in structs were not usable.
2017-03-18 12:18:15 +01:00
alexey.lysiuk
ce3c397ec7
Fixed builtin type names for -dumpast command line option
2017-03-18 13:11:13 +02:00
alexey.lysiuk
4557f751c8
Fixed sight check after blockmap refactoring
...
https://mantis.zdoom.org/view.php?id=446
2017-03-18 12:44:26 +02:00
Christoph Oelckers
f3ae144525
- removed some unused variables in wi_stuff.cpp.
2017-03-17 23:53:51 +01:00
Christoph Oelckers
d423ad0d18
- moved CheckRealHeight from wi_stuff.cpp to texture code.
2017-03-17 23:08:22 +01:00
Christoph Oelckers
c4f6a54753
- fixed reject check in particle code.
2017-03-17 21:54:03 +01:00
Christoph Oelckers
c9296ead57
- moved the skybox texture files to the main textures directory.
2017-03-17 21:12:09 +01:00
Christoph Oelckers
fee18a6971
- fixed the attenuation check in gl_GetLight.
2017-03-17 20:16:49 +01:00
Christoph Oelckers
7d8d69d01b
- fixed: The clipper for the main scene may not be initialized before the camera textures have been drawn.
...
It looks like the memory management at use here is not capable of maintaining multiple instances simultaneously and the camera textures create another scene drawer so the initialization of the main scene drawer has to be delayed until after the camera textures are done.
2017-03-17 19:28:47 +01:00
alexey.lysiuk
3f7160183d
Fixed compilation with GCC/Clang
...
src/p_blockmap.h:76:7: error: extra qualification ‘FBlockmap::’ on member ‘VerifyBlockMap’
2017-03-17 17:42:28 +02:00
Christoph Oelckers
d506b2e6a1
- fixed code generation bug with bad class names in DECORATE.
...
- print attenuation info with 'listlights' CCMD.
2017-03-17 16:00:04 +01:00
Christoph Oelckers
33d36157c8
- moved the blockmap into a substructure of FLevelLocals.
...
This part can certainly improved a lot but the most important thing, grouping all those global variables into one place, is done.
2017-03-17 14:24:21 +01:00
Christoph Oelckers
f864a09faa
- moved more varialbles into FLevelLocals.
2017-03-17 12:49:43 +01:00
Christoph Oelckers
ea1d6634f7
- moved the Zones array into FLevelLocals.
...
- replaced TStaticArray with regular TArrays.
They had incomplete implementations preventing proper cleanup of the level loading code. It makes more sense to add the missing methods to the regular TArray and use that.
This also makes some changes to how the game nodes are used to avoid creating a copy: If the head node's pointer is stored in a separate variable, no code needs to check which of the two arrays gets used.
2017-03-17 12:11:37 +01:00
alexey.lysiuk
c1b774e809
Fixed compilation with GCC/Clang
...
src/p_glnodes.cpp:670:3: error: cannot jump from this goto statement to its label
src/p_glnodes.cpp:682:4: error: cannot jump from this goto statement to its label
2017-03-17 12:34:05 +02:00
Christoph Oelckers
309d086a15
- GCC complained about this part.
2017-03-17 10:16:04 +01:00
Christoph Oelckers
39b329e3f7
- this was accidentally left in.
2017-03-17 10:12:47 +01:00
Magnus Norddahl
fc0f2292ab
- add non-sse version of the sprite drawers
...
- fix some typos
2017-03-17 08:44:33 +01:00
Magnus Norddahl
1435832b09
- added non-sse span drawers
2017-03-17 07:36:02 +01:00
Magnus Norddahl
5644b2c0fd
Create non-sse version of the wall drawers
2017-03-17 06:58:36 +01:00
Magnus Norddahl
a6e47b571f
- change _mm_load_ss to _mm_set_ss just in case compilers are really dumb
2017-03-17 06:19:26 +01:00
Christoph Oelckers
fea4079b7c
- moved nodes into FLevelLocals.
2017-03-17 01:42:37 +01:00
Christoph Oelckers
f818d25542
- last commit deleted a small piece of code.
2017-03-17 00:31:15 +01:00
Christoph Oelckers
f201dab534
- moved the subsectors into FLevelLocals.
2017-03-17 00:22:52 +01:00
Christoph Oelckers
59b684bdbc
- moved the segs array into FLevelLocals.
2017-03-16 21:34:04 +01:00
Christoph Oelckers
2b2c986bd0
- cleanup of GL renderer interface and improper header use in software renderer.
2017-03-16 21:34:03 +01:00
Magnus Norddahl
1f109a5deb
- fix wrong particle Y offset
2017-03-16 19:15:42 +01:00
Rachael Alexanderson
55b95e68db
- Restored a file that apparently worked fine back at a certain commit ( 0176c29
).
2017-03-16 13:55:10 -04:00
Magnus Norddahl
dbea29e02c
- added missing memory barrier
2017-03-16 17:58:41 +01:00
Magnus Norddahl
f1b03b48e9
- add thread safety to GetSpecialLights
2017-03-16 17:53:12 +01:00
Christoph Oelckers
b529b1e3a7
- removed several unneeded GL headers from the software renderer's sources.
...
- consolidated the code to calculate a sprite's display angle for all 3 renderers.
As it turned out, they all differed in their feature support because they had always been updated independently by different people.
2017-03-16 13:49:34 +01:00
Christoph Oelckers
005e6871f9
- increased the snd_channels default and minimum.
...
The values were still 8 and 32 respectively which applied to hardware from last decade, but for modern mods these are simply too low. New values are 64 as minimum and 128 as default.
- added script access to a sector's colormap and specialcolors fields. (Writing only through dedicated functions because these fields are render state which may need to trigger some form of refresh if the renderer changes.)
2017-03-16 10:38:56 +01:00
alexey.lysiuk
889a2ae6aa
Fixed compilation with GCC/Clang
2017-03-16 11:13:02 +02:00
Christoph Oelckers
3aa7687d91
- made 'nocoloredspritelighting' a global option and also implemented it in the software renderer.
2017-03-16 00:56:03 +01:00
Christoph Oelckers
91da8aecdb
- fixed fog init for SW Truecolor.
2017-03-15 23:38:12 +01:00
Christoph Oelckers
76d3ae5ba2
made the sector's color_* properties work in the software renderer.
...
With no 3D floors this appears to be ok, but there are so many places where colormaps are being set in the software renderer that I cannot guarantee that I got all of them correct. This will need some testing.
2017-03-15 23:24:53 +01:00
Christoph Oelckers
921bc763fb
- separated the software-renderer-specific parts of colormap processing from the common parts.
...
- moved testcolor and test fades into SWRenderer files.
These CCMDs work by hacking the default colormap and were never implemented for hardware rendering because they require many checks throughout the code.
2017-03-15 22:04:59 +01:00
Christoph Oelckers
cd015f9340
- make the colormap comparison against NormalLight inline because this is by far the most frequent case and any cycle being saved here counts.
2017-03-15 22:04:59 +01:00
Christoph Oelckers
9a24771a7d
- refactored FDynamicColormap out of sector_t.
...
This has increasingly become an obstacle with the hardware renderer, so now the values are being stored as plain data in the sector, with the software renderer getting the actual color tables when needed. While this is a bit slower than storing the pregenerated colormap, in realistic situations the added time is mostly negligible in the microseconds range.
2017-03-15 22:04:59 +01:00
Rachael Alexanderson
a2fc2fb707
- Add new drawer: AddClampShadedSprite
...
- fixed: AddShaded did not have a drawer associated with it in the software renderer - used new drawer for this purpose.
2017-03-15 14:40:22 -04:00
Christoph Oelckers
d0c77d7264
- added a GetRenderStyle function to Actor, so that the internal render style can be retrieved in a format suitable for scripting.
2017-03-15 10:36:41 +01:00
Magnus Norddahl
fea2361815
- fix broken voxel palette colors when using the game palette
2017-03-15 04:33:01 +01:00
Magnus Norddahl
225ce82a5a
- turned r_scene_multithreaded back off as zdcmp2 revealed some problems
2017-03-15 04:01:28 +01:00
Magnus Norddahl
366d1637ce
- enable r_scene_multithreaded
2017-03-15 03:01:43 +01:00
Magnus Norddahl
80f9c81e36
- move PrepareTexture out of the inner drawer loops
2017-03-15 02:59:33 +01:00
Christoph Oelckers
64bdc8c495
- fixed some incomplete checks for static arrays.
...
- made AActor::OkaytoSwitchTarget scripted virtual.
2017-03-15 01:39:59 +01:00
Christoph Oelckers
d283beb063
- implemented static constant arrays in class scope.
2017-03-14 23:55:30 +01:00
Magnus Norddahl
93908bc2ef
- fix crash if a worker thread is the first thread to queue drawer commands
2017-03-14 23:47:41 +01:00
Magnus Norddahl
3838ec3edc
- allow drawer queues to run immediately to improve r_scene_multithreaded performance
...
- removed unused pass ranges in DrawerThread
2017-03-14 23:03:14 +01:00
Christoph Oelckers
6926875b21
- allow parsing of static constant arrays in class scope.
...
This is only the parsing part, the arrays are not yet getting evaluated.
This required quite a hacky workaround because the gramma couldn't be made to accept the rule. The scanner will check if a 'static' token is immediately followed by a 'const' token and will combine both to a new 'staticconst' token that does not create conflicts with other rules.
2017-03-14 20:22:37 +01:00
Christoph Oelckers
539af96b8e
- fixed variable size mismatch and some warnings for 32 bit builds.
2017-03-14 18:48:51 +01:00
Christoph Oelckers
d86bd470e5
- moved two MAPINFO settings that are not exclusively used by the OpenGL renderer to the common code.
2017-03-14 18:31:11 +01:00
alexey.lysiuk
e1cd034698
Fixed compilation with GCC/Clang
2017-03-14 18:24:34 +02:00
Christoph Oelckers
3c6e9f361c
- fixed typo in fog boundary check.
2017-03-14 16:13:00 +01:00
alexey.lysiuk
6b8ea7ead3
Fixed comparison of class names for functions and fields
...
https://mantis.zdoom.org/view.php?id=426
2017-03-14 15:50:05 +01:00
Christoph Oelckers
44a087554f
- moved the OpenGL fog properties to FLevelLocals to simplify their handling.
...
- added access to the glow properties for ZSCript and ACS.
2017-03-14 13:54:24 +01:00
Christoph Oelckers
72ecaba50a
- fixed: When vr_quadbuffering is on and context creation fails, first retry without it before falling back on the compatibility handler.
2017-03-14 13:50:33 +01:00
Christoph Oelckers
0ebe98d1e0
- added support for reading JASC palette files. I hope it's correct, considering I have no such files to test. The format should be simple enough, though.
2017-03-14 12:16:42 +01:00
Christoph Oelckers
f70d0a6ced
- added a setinv cheat CCMD.
2017-03-14 11:44:21 +01:00
Christoph Oelckers
dd8963142f
- fixed: P_RailAttack must send DMG_PLAYERATTACK if the attack originates from a player.
2017-03-14 11:13:52 +01:00
Christoph Oelckers
6db355a947
- added a callback to menu items for when a new menu gets created.
...
- added a StartSlideshow ACS and ZScript command and extended the functionality to specify the slideshow's name when starting it.
This is for triggering any kind of intermission definition in the middle of a level - keep in mind that this may not be set up to loop!
2017-03-14 10:41:13 +01:00
Christoph Oelckers
fbcf1b2c45
- restored a line of accidentally deleted code in the animated door thinker.
2017-03-14 10:08:43 +01:00
Christoph Oelckers
303ccb3ecc
- this is past version 2.4
2017-03-13 21:24:30 +01:00
Christoph Oelckers
d1ce5e37fc
- fixed another error in DispatchScriptProperty. That AST's data organization is really messed up... :(
2017-03-13 21:22:11 +01:00
Christoph Oelckers
5141fee8c0
- reverted the change of position where polyobjects get linked to the subsectors.
2017-03-13 21:17:25 +01:00
alexey.lysiuk
3a039b1e44
Fixed compilation error reported by GCC
2017-03-13 22:05:55 +02:00
Christoph Oelckers
6037ecb6a1
- fixed: Getting the offset to the 'Size' field for static arrays should use a fixed offset, not the size of the defining variable, which, depending on where things are defined, can be different.
2017-03-13 20:27:46 +01:00
Christoph Oelckers
cc60b005a1
- fixed processing of parameter-less ZScript properties.
2017-03-13 19:57:20 +01:00
Magnus Norddahl
a08f35fe3b
Fix missing player sprites in some situations when r_scene_multithreaded is on
2017-03-13 19:19:46 +01:00
Magnus Norddahl
22d3599ea1
Fix warp texture crash in software renderer true color mode
2017-03-13 18:02:44 +01:00
Magnus Norddahl
a408ea312f
Remove if statement that was always false
2017-03-13 17:54:05 +01:00
Christoph Oelckers
cd392e50e9
- added a dummy struct named '_' to define global variables. This can only be used internally.
...
This method was chosen because it avoids adding variable declarations to the global namespace which would have required a lot more work while polluting the grammar.
This way the global variables can be handled by a small bit of special coding in the struct generator.
2017-03-13 14:42:14 +01:00
Christoph Oelckers
feb680a4eb
- Removed the RSQRTSS code from GLSeg::Normal.
...
If we have to write compiler specific code for micro-optimizations I am out.
The Posix compatible version nullified most the advantage on MSVC by writing out the XMM register to memory and then reading back the float.
That's not worth the hassle for an optimization that brings a few microseconds at best.
2017-03-13 13:17:15 +01:00
Christoph Oelckers
5fd86cf98c
- added some syntactic help to the ZScript parser to allow defining the arrays with native structs on the script side instead of having to define them internally.
2017-03-13 12:51:09 +01:00
alexey.lysiuk
fc8b697e33
Fixed compilation of POSIX targets
...
TODO: Need better way to detect SSE support
2017-03-13 12:51:06 +02:00
Christoph Oelckers
822cda652b
- fixed: A_FireProjectile was still using the inverted pitch from A_FireCustomMissile it was supposed to correct.
2017-03-13 10:03:42 +01:00
Christoph Oelckers
1fccec32d6
- add limits.h include to vectors.h for FLT_EPSILON.
2017-03-13 09:23:57 +01:00
Christoph Oelckers
60fd79ce23
- some menu reorganization:
...
* dynamic lights also work in the true color software renderer and have been moved out of the OpenGL menu.
* created a separate software renderer menu and moved all relevant options there.
* delete non-applicable options when running in legacy mode.
* moved the OpenGL preferences menu one level up to eliminate a two-entry GL top level menu.
2017-03-13 01:17:46 +01:00
Christoph Oelckers
f9bb64a5f3
- fixed: MIDIStreamer::Update did not check if the device was still valid.
...
Stopping a song can delete device while the streamer is still valid.
2017-03-13 00:38:59 +01:00
Christoph Oelckers
439e4f9f94
Merge remote-tracking branch 'remotes/origin/3.0_work'
2017-03-13 00:02:16 +01:00
Christoph Oelckers
4965cdfd9a
- removed some unused global variables.
2017-03-12 23:56:17 +01:00
Christoph Oelckers
d72623b9b5
- eliminated global in_area variable.
...
Removing this made me realize that calling the renderers' FakeFlat functions from the automap is inherently unsafe with the recent refactorings because there is absolutely no guarantee that the data may actually still be defined when the automap is being drawn.
So the best approach here is to give the automap its own FakeFlat function that runs independently of render data and assumptions of data preservation. This one can also be a lot simpler because it only needs the floor, not the ceiling info.
2017-03-12 23:13:07 +01:00
Magnus Norddahl
a663f71a9f
- Added thread safety to texture loading in the software renderer
2017-03-12 22:53:20 +01:00
Christoph Oelckers
4c61048278
- moved gl_fixedcolormap into GLSceneDrawer.
...
This means that one of the most extensively used global variables is gone.
2017-03-12 21:57:39 +01:00
Magnus Norddahl
00f6ed45a2
Make LightVisibility thread local
2017-03-12 20:40:00 +01:00
Christoph Oelckers
61c91f05fc
Merge branch '3.0_work'
...
# Conflicts:
# src/gl/scene/gl_portal.cpp
# src/r_plane.cpp
2017-03-12 20:31:34 +01:00
ZZYZX
0176c29ec2
Will not emit OP_SCOPE if self type can be checked at compile time.
2017-03-12 20:27:38 +01:00
ZZYZX
91e83bf3c6
Fixed DECORATE scope for duplicates
2017-03-12 20:27:38 +01:00
ZZYZX
bd889cc8f1
Fixed various virtualscope oddities; set scope for DECORATE classes to play.
2017-03-12 20:27:38 +01:00
Christoph Oelckers
438b983ab1
- inlined the 4 remaining short functions of the Plane class and removed gl_geometric.cpp.
...
# Conflicts:
# src/CMakeLists.txt
# Conflicts:
# src/CMakeLists.txt
2017-03-12 20:11:57 +01:00
Christoph Oelckers
b52d1c3d50
- some cleanup.
2017-03-12 20:04:46 +01:00
Christoph Oelckers
4cd0d3d454
- removed the Vector class in the GL renderer and replaced all its uses with FVector3.
...
- optimized the math to get a plane equation from a linedef. The original code used a generic algorithm that knew nothing about the fact that Doom walls are always perfectly vertical. With this knowledge the plane calculation can be reduced to a lot less code because retrieving the normal is trivial in this special case.
- use the SSE2 rsqrtss instruction to calculate a wall's length, because this is by far the most frequent use of square roots in the GL renderer. So far this is only active on x64, it may be activated on 32 bit later as well, but only after it has been decided if 32 bit builds should be x87 or SSE2.
# Conflicts:
# src/gl/dynlights/gl_dynlight.cpp
# Conflicts:
# src/g_shared/a_dynlightdata.cpp
2017-03-12 19:59:45 +01:00
Christoph Oelckers
ef3421eee5
- moved dynamic lights out of the GL code into the common game code.
...
Since the true color software renderer also handles them there is no point keeping them on the GL side.
This also optimized how they are stored, because we no longer need to be aware of a base engine which doesn't have them.
2017-03-12 19:57:06 +01:00
Magnus Norddahl
6788b19e89
- stop using PORTSF_INSKYBOX flag in software renderer as it is not thread safe
2017-03-12 19:43:40 +01:00
Magnus Norddahl
3113db798d
Debug build compile fix
2017-03-12 19:10:52 +01:00
Magnus Norddahl
5bcdc7d889
Fix compile error on Linux
2017-03-12 18:56:48 +01:00
Magnus Norddahl
5fdbbc4f9e
Remove usage of r_viewpoint and r_viewwindow globals from software renderer and poly renderer
2017-03-12 18:54:39 +01:00
alexey.lysiuk
23130678a1
Fixed compilation errors and warnings in Mac PowerPC target
...
Tested with GCC 5.2 on 10.4 (32-bit only) and Clang from Xcode 8.2 on 10.12 (64-bit only)
2017-03-12 16:27:02 +02:00
alexey.lysiuk
b398c7458c
Do not draw crosshair on automap with alternative HUD enabled
2017-03-12 08:57:25 -04:00
Christoph Oelckers
e7330cfa03
- all main functions in gl_scene.cpp now belong to the new GLSceneDrawer class.
2017-03-12 12:51:26 +01:00
Christoph Oelckers
e4d7d9de8b
- moved several more functions from FGLRenderer to GLSceneDrawer.
2017-03-12 12:03:54 +01:00
Christoph Oelckers
90c42519b7
- fixed changed variable inside an assert that apparently got overlooked because it got only compiled as release.
2017-03-12 01:59:41 +01:00
Christoph Oelckers
64183fc3cd
- moved GL texture precaching to gl_texture.cpp.
2017-03-12 01:49:44 +01:00
Christoph Oelckers
9b33d1dd18
Merge branch 'scene_multithreaded' of https://github.com/raa-eruanna/qzdoom into 3.0_work
...
# Conflicts:
# src/gl/scene/gl_clipper.cpp
# src/gl/scene/gl_portal.cpp
# src/gl/scene/gl_scene.cpp
# src/swrenderer/scene/r_scene.cpp
2017-03-12 00:38:55 +01:00
Rachael Alexanderson
0f61197bae
- Forbade return scripts from triggering on save load.
2017-03-12 00:22:59 +01:00
Magnus Norddahl
c79051126e
Fix ssao being applied to skybox portals
2017-03-12 00:22:58 +01:00
Christoph Oelckers
0aa0db637c
- started adding a SceneDrawer class to the OpenGL renderer.
...
This will eventually hold all the global variables for the rendering.
2017-03-12 00:19:20 +01:00
Rachael Alexanderson
bfc8c614a0
- Forbade return scripts from triggering on save load.
2017-03-11 17:39:57 -05:00
Magnus Norddahl
0c9014b984
- move r_utility globals into r_viewpoint and r_viewwindow
...
- change r_utility functions to only work on FRenderViewpoint and FViewWindow
2017-03-11 23:28:07 +01:00
Christoph Oelckers
8e2ebe15fe
- removed several unused variables from OpenGLFrameBuffer.
...
- removed the LastCamera logic in RenderView. This code predates the first GZDoom release and apparently was only added because back then R_SetupFrame was not fully compatible with the hardware renderer. Today it is not needed anymore.
2017-03-11 21:10:21 +01:00
Christoph Oelckers
9e70771da3
- Added a check to allow shader storage buffers on GL 4.3 Intel drivers. It doesn't work if GLSL version is set to 4.0 and the feature activated via extension.
2017-03-11 20:14:18 +01:00
Christoph Oelckers
9eae422dab
Merge branch 'shadowmaps' of https://github.com/raa-eruanna/qzdoom into 3.0_work
...
# Conflicts:
# src/CMakeLists.txt
# wadsrc/static/language.enu
2017-03-11 19:55:43 +01:00
Christoph Oelckers
28aba3469d
- missed 2 includes
2017-03-11 19:18:31 +01:00
Christoph Oelckers
921abc404d
- fixed GCC warnings and errors
...
(Is there anyway to tone down GCC's warning level? It outputs too many false positives for potentially uninitialized variables in which the genuine errors get drowned.)
2017-03-11 19:02:35 +01:00
Magnus Norddahl
77a388e908
Fix default palette for voxel BGRA slab data and support translated 8-bit slab data in true color mode
2017-03-11 18:31:53 +01:00
Christoph Oelckers
756e6432c0
- missed a typo.
2017-03-11 18:26:56 +01:00
Christoph Oelckers
7d6cd2ac83
- fixed some issues with the AudioToolboxMIDIDevice interface that got broken by yesterday's changes.
2017-03-11 18:17:08 +01:00
Magnus Norddahl
38ad6ce6b7
Fix ssao being applied to skybox portals
2017-03-11 17:20:06 +01:00
Rachael Alexanderson
d868f79413
- fixed: Froze on startup on Linux.
2017-03-11 11:04:37 -05:00
Rachael Alexanderson
81291e6892
- fixed: Clang on Linux compile
2017-03-11 11:01:30 -05:00
Christoph Oelckers
355bbf4829
- removed debug output from recent translation additions.
2017-03-11 14:58:59 +02:00
alexey.lysiuk
b8ba2d20e5
Do not draw crosshair on automap with alternative HUD enabled
2017-03-11 14:58:33 +02:00
Christoph Oelckers
72da1fed7e
- removed many 'extern "C"' declarations, now that assembly is no longer a concern.
...
- some concepts about building a RenderViewpoint struct. No actual work yet.
2017-03-11 11:31:09 +01:00
Christoph Oelckers
56986ba843
- removed debug output from recent translation additions.
2017-03-11 09:56:05 +01:00
Christoph Oelckers
daacaa961e
- removed Windows includes from two more files.
2017-03-10 23:30:30 +01:00
Christoph Oelckers
5eb9587135
- moved the various music format files into their own directory.
2017-03-10 22:26:02 +01:00
Christoph Oelckers
95b181e618
-added missing file.
2017-03-10 22:19:36 +01:00
Magnus Norddahl
b407ea2164
Change gl_light_shadowmap to default to being off
2017-03-10 22:12:13 +01:00
Magnus Norddahl
59ec97d2d5
Fix shadow map acne and the attenuate flag
2017-03-10 22:08:55 +01:00
Christoph Oelckers
5cc525cd54
- renamed Timidity++ device source file for consistency.
2017-03-10 21:34:42 +01:00
Christoph Oelckers
c8bfef039a
- removed dependency on windows.h for music_fluidsynth_mididevice.cpp. It just accesses a single function from Windows so let's manually define this so that this file can use precompiled headers.
...
- enable precompiled headers for all non-system-specific MIDI devices.
- moved the native Windows and Mac MIDI devices into their respective sections in the project file so that they won't get compiled on the other ones.
2017-03-10 21:18:15 +01:00
Christoph Oelckers
0b645dc42d
- reorganized sound related code.
2017-03-10 20:53:03 +01:00
Christoph Oelckers
343db41b63
- changed the #defines in ddstexture.cpp into an enum
...
(because #defines suck...)
2017-03-10 20:08:39 +01:00
Christoph Oelckers
fec958cc0a
- finally managed to get rid of the DWORD type.
...
This one was particularly nasty because Windows also defines a DWORD, but in Windows it is an unsigned long, not an unsigned int so changing types caused type conflicts and not all could be removed.
Those referring to the Windows type have to be kept, fortunately they are mostly in the Win32 directory, with a handful of exceptions elsewhere.
2017-03-10 19:46:22 +01:00
Christoph Oelckers
2b0e9650bb
- forgot to add the new header.
2017-03-10 19:11:30 +01:00
Magnus Norddahl
b660493051
Add menu option for disabling shadow maps and detecting if storage buffers are available or not
2017-03-10 19:10:40 +01:00
Christoph Oelckers
5374eed06d
- cleaned up the interdependencies between the MIDIStreamer and the WinMIDIDevice classes.
...
A major part of this device's implementation details about how to handle the callback were not encapsulated by the device class at all, they were #ifdef'd into the streamer class.
This puts everything into the device class which now exposes a clean interface to the rest of the game with no special handling aside from calling two additional virtual functions that are empty for the other devices
2017-03-10 19:08:37 +01:00
Christoph Oelckers
8d6fe24945
cleanup of MIDI code dependencies
...
* make the critical section local to the respective platform instead of polluting everything with system specific symbols.
* moved system specific class declarations into the source file instead of having them in the global header.
This commit temporarily disables the Windows system device because it cannot be done without polluting the global header and still needs a bit of refactoring.
2017-03-10 19:08:36 +01:00
Magnus Norddahl
d75e09f545
Fix span dynamic light rendering glitch
2017-03-10 12:25:18 -05:00
Magnus Norddahl
1e7ea1c7ff
Fix crash HOM effect when vid_hw2d is off
2017-03-10 12:25:05 -05:00
Magnus Norddahl
b6ea5944d3
Fix crash when vid_hw2d is off
2017-03-10 12:24:09 -05:00
Christoph Oelckers
86d8f9ca83
- removed all dependencies on Windows-defined constants, rename the ones for non-Windows platforms and use those througout.
...
This should remove all dependencies on Windows definitions from the music interface, what remains is some cleanup.
2017-03-10 12:39:23 +01:00
Christoph Oelckers
f1630cebf3
- backported Line_Align... fix.
2017-03-10 12:09:15 +01:00
Rachael Alexanderson
9d5f8ba250
- fixed: P_AlignFlat's y-offset data was ignored when calculating plane offsets for the final render
2017-03-10 12:04:43 +01:00
Rachael Alexanderson
bb1d29d491
- Fixing r_voxel's license.
2017-03-10 12:04:43 +01:00
Christoph Oelckers
bfd968a88c
- uncoupled the MIDI player from Windows system structures.
...
The approach being used here caused the entire sound system to be infested by windows.h, just to avoid copying around a handful of variables in one place, effectively preventing any compiling optimization.
Windows will now use the same internally defined structure for all MIDI processing which only for actual submission to the system player will be converted to the internal format.
2017-03-10 12:01:29 +01:00
Christoph Oelckers
bc63c664f2
Merge branch 'master' into 3.0_work
2017-03-10 10:39:12 +01:00
Christoph Oelckers
5b9fece062
- fixed bad definition of FBlockThingsIterator.Next(). When implementing the BlockLinesIterator apparently some incorrect code got modified.
...
- fixed an uninitialized variable in P_CheckSight.
2017-03-10 10:38:30 +01:00
Christoph Oelckers
4ed5b91b0f
- added a few missing includes which were not triggered as error in a debug build.
2017-03-10 09:57:10 +01:00
Christoph Oelckers
96fa38bdc6
- make GCC happy.
2017-03-10 02:29:03 +01:00
Christoph Oelckers
bd7476fb8d
- untangled r_defs.h from actor.h
...
Both files can now be included independently without causing problems.
This also required moving some inline functions into separate files and splitting off the GC definitions from dobject.h to ensure that r_defs does not need to pull in any part of the object hierarchy.
2017-03-10 02:22:42 +01:00
Christoph Oelckers
ea0a9b537b
- removed the dobject.h include from s_sound.h. This isn't needed and only increased compile times of files with no relation to the actual game that need the sound system.
2017-03-10 01:10:14 +01:00
Rachael Alexanderson
7dc70b636f
- enable multiprocessor compilation with MSVC++ using /MP for MSBuild
...
- Target NEON processors for ARM.
2017-03-10 00:49:26 +01:00
Rachael Alexanderson
0d5cb0536e
- enable multiprocessor compilation with MSVC++ using /MP for MSBuild
...
- Target NEON processors for ARM.
2017-03-10 00:44:25 +01:00
Christoph Oelckers
4de0f8b1fa
- compile both poly and sw renderer as one unit, because due to the includes this gets really slow otherwise. Lumping these together saves 50 seconds per build on my system with a 3.4 GHz Core i7 and an SSD for storage, so on other systems it may be even more.
2017-03-10 00:43:36 +01:00
Christoph Oelckers
a4710bcdb0
- did a bit of header cleanup to reduce the dependency on dobject.h.
2017-03-09 23:30:42 +01:00
Christoph Oelckers
1c81c40c59
- moved several files for which fastmath is mostly irrelevant into the PCH group.
...
Because reducing compile time is more important than some microscopic performance gain in non-time-critical code.
2017-03-09 20:56:33 +01:00
Christoph Oelckers
6325fbc491
- did a bit of cleanup on the MIDI callback interface, made the function type a typedef and removed the two unused parameters. Only the native Windows player passed something, but it wasn't used by the callback.
2017-03-09 20:28:57 +01:00
Christoph Oelckers
9b87a167d7
- replaced a large batch of DWORDs.
...
Most of those which still rely on ZDoom's own definition should be gone, unfortunately the code in files that include Windows headers is a gigantic mess with DWORDs being longs there intead of ints, so this needs to be done with care. DWORD should only remain where the Windows type is actually wanted.
2017-03-09 20:19:55 +01:00
Christoph Oelckers
a17685f3fd
- removed some long longs, to reduce that type's use to the necessary minimum
...
.
2017-03-09 20:05:22 +01:00
Christoph Oelckers
d2beacfc5f
- except for DWORD, all homegrown integer types are gone - a handful were left where they represent genuine Windows types.
2017-03-09 19:54:41 +01:00
Christoph Oelckers
c008ddaf66
- replaced homegrown SWORD, SBYTE and uint32_t types.
2017-03-09 19:31:45 +01:00
Christoph Oelckers
cc1241a4b8
Merge branch 'make-qzdoom-gzdoom-again' of https://github.com/raa-eruanna/qzdoom into 3.0_work
...
# Conflicts:
# src/win32/win32gliface.h
# src/win32/win32iface.h
This compiles but no guarantees otherwise.
2017-03-09 19:09:13 +01:00
Christoph Oelckers
609e4c78b4
- fixed: NOINFIGHTSPECIES checked the wrong target actor.
2017-03-09 18:44:32 +01:00
Rachael Alexanderson
536e8fad19
- Make QZDoom GZDoom again!
2017-03-09 11:51:42 -05:00
Christoph Oelckers
878e6015df
- made all iterator classes natively abstract so that they do not get a ConstructNative method so that OP_NEW can refuse creating them without the need to mark them as abstract.
...
- block creation of actors with the 'new' instruction. Unlike the above these cannot be made abstract because without ConstructNative they cannot be serialized.
2017-03-09 17:21:37 +01:00
Christoph Oelckers
20c56f6dda
- added SectorTagIterator and LineIDIterator script classes.
2017-03-09 17:05:51 +01:00
Christoph Oelckers
420f71fc4f
- added a BlockLinesIterator script class.
2017-03-09 16:45:48 +01:00
ZZYZX
4dd1910d6d
Fixed the size of the local params array for WorldTick/UiTick
2017-03-09 15:38:49 +01:00
ZZYZX
5eb20b7877
Removed Create, CreateOnce, Register, Unregister from the C++ side as well
2017-03-09 15:38:49 +01:00
ZZYZX
01561eb768
Added: UiTick in EventHandlers, a callback that executes at 35fps on every handler in ui scope;
...
Removed: RenderOverlay, RenderFrame (commented out), Create, CreateOnce, Register, Unregister (completely)
2017-03-09 15:38:49 +01:00
Christoph Oelckers
e080f0cf89
- removed Windows.h include from gl_system.h and cleaned up that file. This means that most OpenGL sources can now be compiled without any Windows dependencies, which is significantly faster.
2017-03-09 13:19:51 +01:00
Christoph Oelckers
396c570a96
- moved Win32GLVideo's definition into the .cpp file, because it isn't needed anywhere else.
2017-03-09 13:09:38 +01:00
Christoph Oelckers
05919a2926
- remove Windows includes from gl_load.h
...
This is one of two places that unconditionally pulled in all Windows headers into the GL code.
We also do not need the cruft for defining the standard integer types. GZDoom is C++11 which means that stdint.h will be present. So the madness with the definitions should be avoided to ensure that the types are always the same.
2017-03-09 13:03:49 +01:00
Christoph Oelckers
03e1cbcfc0
- removed Windows types from several files which don't need them.
...
- split out the software renderer's video classes into their own file because they got included by all OpenGL sources.
2017-03-09 12:52:31 +01:00
Christoph Oelckers
8bd9c5a983
- moved some ACS enums from p_acs.h to p_acs.cpp.
...
There is really no point including this in multiple files if only one of them actually uses these constants.
2017-03-09 09:49:07 +01:00
Christoph Oelckers
77bac4f6fa
- fixed code generation for min/max when the first operand was a local variable or constant.
...
The code for constants was not optimal because the first operand of the instructions cannot be constant. This was solved by swapping it with the second choice which will always be non-constant.
The code for local variables did not allocate a new destination register and would overwrite the first parameter's variable.
2017-03-09 09:36:12 +01:00
Rachael Alexanderson
4d70b01da5
- followed through with GZDoom's SQWORD removals.
2017-03-08 21:35:20 -05:00
Rachael Alexanderson
cc9a2e5121
Merge https://github.com/coelckers/gzdoom
2017-03-08 21:25:24 -05:00
Magnus Norddahl
279fa7e886
Non-SSE version of the sky drawers
2017-03-08 23:35:13 +01:00
Christoph Oelckers
a632fae33f
- for some reason the change to c_expr.cpp got lost.
...
- moved NO_SANITIZE to autosegs.h, because it's the only place where it is used.
2017-03-08 21:14:21 +01:00
Christoph Oelckers
b513b32bcf
- reduced missing texture messages in the menu to warnings.
2017-03-08 19:04:35 +01:00
Christoph Oelckers
f341e7fb6a
- removed SQWORD, there were only a handful of occurences.
2017-03-08 19:02:50 +01:00
Christoph Oelckers
ba0f5a3f94
- most WORD and SWORD are gone.
2017-03-08 18:55:55 +01:00
Christoph Oelckers
8ab562ef13
- the fourth.
2017-03-08 18:55:54 +01:00
Christoph Oelckers
6dee9ff566
- replaced another large batch of homegrown type use.
2017-03-08 18:55:53 +01:00
Christoph Oelckers
6c6bab73ad
- more of the same.
2017-03-08 18:55:53 +01:00
Christoph Oelckers
ad41b23506
- replaced the homegrown integer types in all p* sources and headers.
2017-03-08 18:55:52 +01:00
alexey.lysiuk
3a0e29dab9
Added missing linker options for native MIDI support on macOS
...
Continuous integration is a cool thing: I completely forgot about addition of these frameworks because of my build environment which relies on static libraries and custom command line options
2017-03-08 16:11:04 +02:00
Magnus Norddahl
b281a697ce
Document the algorithm used for generating the 1D shadow maps
2017-03-08 14:12:59 +01:00
Christoph Oelckers
b8f7e305db
- changed TObjPtr to take a pointer as its template argument and not the class it points to.
...
This addresses the main issue with TObjPtr, namely that using it required pulling in the entire class hierarchy in basic headers like r_defs which polluted nearly every single source file in the project.
2017-03-08 13:35:21 +01:00
Christoph Oelckers
1cb89c6b37
- fixed bad call to validate function.
2017-03-08 13:35:21 +01:00
Magnus Norddahl
d09c3ad305
Move all GPU handling to gl_shadowmap and rename gl_lightbsp to gl_aabbtree
2017-03-08 13:31:19 +01:00
Magnus Norddahl
8687a9868a
Rename Level2DShape to LevelAABBTree and add a bit of documentation to it
2017-03-08 12:40:45 +01:00
alexey.lysiuk
de9c9221fe
Added AudioToolbox MIDI device for macOS
...
This device is the default one for OpenAL backend on Apple's platform
2017-03-08 11:23:36 +02:00
alexey.lysiuk
54ca55f070
Default MIDI device is now created by sound backend
...
OpenAL backend now plays music by default
It uses WinMM device on Windows and OPL on other platforms
2017-03-08 11:04:02 +02:00
Rachael Alexanderson
527a172fcd
Merge https://github.com/coelckers/gzdoom
2017-03-07 22:03:56 -05:00
Magnus Norddahl
850e61d1c9
Add shadow test to sprites
2017-03-08 00:34:08 +01:00
Christoph Oelckers
d911cdcfe7
- missed a bit.
2017-03-07 22:18:50 +01:00
Christoph Oelckers
e2f3a09dd0
- refactored the scope check for VirtualScope calls.
...
It now uses a dedicated opcode instead of piggybacking on OP_CALL and it passes data that is closer to the VM. Symbols should be avoided at this level.
It also will skip the scope instruction if the code generator detects that both calling function and the self pointer type have the same scope, this assumes that subclasses cannot flip between UI and Play.
2017-03-07 22:17:48 +01:00
Christoph Oelckers
0c686c593b
- simplify the runtime checks for OP_NEW.
...
They are not needed for OP_NEW_K which can evaluate the class relations at compile time and for OP_NEW the calling function can also be checked at compile time, passing only the scope value itself.
2017-03-07 19:57:55 +01:00
Christoph Oelckers
7a0c466b24
- fixed: For reflective floors, closed doors need to be considered an outer boundary, even if the floor below the door is reflective itself.
2017-03-07 18:59:48 +01:00
Rachael Alexanderson
71f400e238
Merge https://github.com/coelckers/gzdoom
2017-03-07 10:00:20 -05:00
Magnus Norddahl
6df3b3fbca
Changed the light collision structure uploaded to the GPU to be a binary tree using AABBs for the nodes instead of a BSP plane
2017-03-07 15:58:22 +01:00
ZZYZX
620ce72ebd
Fixed E_Responder for mouse events. It being active during console was actually a bug, because console should prevent any events.
2017-03-07 12:46:26 +01:00
ZZYZX
883048b538
Added E_Responder call for direct mouse input interception
2017-03-07 12:46:26 +01:00
Christoph Oelckers
1c95ddacb8
Revert "Moved some ancient playsim mouse input code around so that it works properly with input events"
...
This reverts commit 2e0eb742eb
.
This effectively nullifies the attempt to get a higher mouse update rate for the display.
2017-03-07 10:26:03 +01:00
ZZYZX
a681b5b706
Just in case, don't send useless mouse move events to G_Responder.
2017-03-07 09:47:47 +01:00
ZZYZX
2e0eb742eb
Moved some ancient playsim mouse input code around so that it works properly with input events
2017-03-07 09:47:47 +01:00
Rachael Alexanderson
bd50b5d05a
Merge https://github.com/coelckers/gzdoom
2017-03-06 19:40:55 -05:00
Magnus Norddahl
65f8d65858
Minor code clean up
2017-03-06 23:27:02 +01:00
Rachael Alexanderson
cb8b2de287
- somehow, this missed a few.
2017-03-06 16:58:48 -05:00
Christoph Oelckers
9d6b5f7015
- switched the menu code over to the data types of the event system.
...
Note that this will require adjustment of all menu code which overrides the Responder method!
2017-03-06 22:27:51 +01:00
Rachael Alexanderson
28abc96aef
- fully implemented "nolightfade" to turn off diminishing lights in the software renderer.
...
- unfortunately, LIGHT2SHADE had to be transformed into a namespaced function.
2017-03-06 16:14:54 -05:00
Rachael Alexanderson
5c3b9d81ad
Merge remote-tracking branch 'origin/no-diminishing-light'
2017-03-06 13:47:33 -05:00
Christoph Oelckers
4f97db74f2
- fixed: The deprecation checks in the compiler backend were wrong.
2017-03-06 19:24:31 +01:00
Rachael Alexanderson
134c2f3f38
Merge https://github.com/coelckers/gzdoom
2017-03-06 12:36:34 -05:00
Major Cooke
e111b0b92e
Fixed: Deprecated functions could not act because FxVMFunctionCall::CheckAccessibility returned false on warning.
2017-03-06 17:37:18 +01:00
alexey.lysiuk
cf23deef74
Fixed ssize_t type definition for mpg123 (affects MSVC x64 only)
...
According to MinGW headers (which is used for compiling libmpg123) ssize_t type must be 64-bit in size on 64-bit Windows
Moreover it was impossible to build GZDoom with the recent versions of libmpg123 because of wrong type redifinition
Tested MP3 music on Deus Vult II with Release x64 and OpenAL backend
2017-03-06 18:05:06 +02:00
ZZYZX
21ecd714ec
Added a way to tell apart console-executed events from code-executed SendNetworkEvent
2017-03-06 11:23:36 +01:00
alexey.lysiuk
4eb9f662cb
Fixed compilation with Clang
...
src/scripting/backend/codegen.cpp:8568:10: error: cannot initialize return object of type 'FxExpression *' with an rvalue of type 'bool'
2017-03-06 10:41:17 +02:00
Rachael Alexanderson
7ef8ed5867
Merge https://github.com/coelckers/gzdoom
2017-03-05 18:40:44 -05:00
Gaerzi
ad89d3eea0
Added SLADE3's colourise and tint translations.
...
Includes support for ACS.
Added tokens for '#' and '@' in sc_man_scanner.re.
2017-03-05 22:50:35 +01:00
Rachael Alexanderson
b4079b9915
- implemented "hazardcolor" and "hazardflash" properties. This affects strife's sector damage type that passively builds up over time. setting "hazardcolor" changes the gradual blend that is used when palette flash is disabled. setting "hazardflash" changes the flashing blend that is used when palette flash is turned on.
2017-03-05 22:48:46 +01:00
Christoph Oelckers
2b5fea4ea8
- added version checks for function calls and virtual overrides.
...
- restricted the UI functions in inventory.
2017-03-05 21:44:10 +01:00
Christoph Oelckers
8a5daf211c
- added version check for member variables.
2017-03-05 20:41:41 +01:00
alexey.lysiuk
f9e543bed3
Fixed black target screen during wipe (legacy renderer only)
...
Credits: NiTROACTiVE and Erick194
https://www.doomworld.com/vb/source-ports/93179-two-issues-im-having-with-gzdoom-v2-3-2/
2017-03-05 20:51:48 +02:00
Rachael Alexanderson
effe8a1e80
Revert "- started adding ARM support. incomplete. won't compile. don't try."
...
This reverts commit be8abba344
.
2017-03-05 13:07:25 -05:00
ZZYZX
8400961a00
Did some cleanup - since FScopeBarrier is not in codegen now, it's possible to include it properly from vm.h
2017-03-05 18:39:59 +01:00
Christoph Oelckers
456ac64723
- implemented version checks for compile-time type determination and for class inheritance.
...
Note that in this system, DECORATE counts as version 2.0, so any data that should be available to DECORATE should not use version restriction.
2017-03-05 17:58:55 +01:00
Magnus Norddahl
eb7955694b
Disable diminishing light in software renderer
2017-03-05 16:57:58 +01:00
Christoph Oelckers
7df698dad8
- implemented the parser basics of a ZScript versioning system.
...
Note that this completely disables the newly added keywords 'play' and 'ui' for unversioned code to allow using them as identifiers as I have found at least one mod that uses a variable named 'play' that would have been rendered broken otherwise.
This also disables many ZScript only keywords for other parsing jobs.
2017-03-05 14:13:00 +01:00
alexey.lysiuk
5d3244c3a7
Fixed minor issues in config file reader
...
Removed hardcoded values from long lines handling and made sure that pointer to the last character is always initialized
2017-03-05 13:07:51 +02:00
alexey.lysiuk
27376b1697
Fixed compilation of Debug configuration
...
src/scripting/vm/vmexec.cpp:204:44: error: no member named 'Native' in 'VMScriptFunction'
2017-03-05 11:39:25 +02:00
ZZYZX
38b86ad83c
No need for explicit EFX_Self check in FxStructMember::RequestAddress if self is set to readonly elsewhere.
2017-03-05 09:49:31 +01:00
ZZYZX
1832531726
Fixed: check protected fields against analog of OwningClass in functions, as opposed to the type that the field was accessed from.
2017-03-05 09:49:31 +01:00
ZZYZX
3eafc13b08
Removed BarrierSide from VMFunction, since it's obsolete with addition of VarFlags
2017-03-05 09:49:31 +01:00
ZZYZX
7cbabfb0d4
Implemented implicit 'protected' inheritance in virtual functions
2017-03-05 09:49:31 +01:00
ZZYZX
b87f9b540e
Implemented 'protected' on fields and methods
2017-03-05 09:49:31 +01:00
ZZYZX
9d4179ca06
Protected on methods of StaticEventHandler is completely useless
2017-03-05 09:49:31 +01:00
ZZYZX
6af5c1fa2b
Produce a warning if clearscope is used on non-inner structs. Also now checking for outer class presence correctly.
2017-03-05 09:49:31 +01:00
ZZYZX
86a494aacd
Can use clearscope on struct to signify that it should be plain data even if defined inside a play/ui class
2017-03-05 09:49:31 +01:00
ZZYZX
6c90d05407
By default, inner struct in class should take the scope of it's outer class
2017-03-05 09:49:31 +01:00
ZZYZX
0a7aebae93
Fixed const method qualifier. Also, fixed: const is not clearscope, treat differently.
2017-03-05 09:49:31 +01:00
Rachael Alexanderson
2c27b74e34
Merge https://github.com/coelckers/gzdoom
2017-03-05 02:55:38 -05:00
Christoph Oelckers
f07bd5ec65
- fixed some mess by two nearly similarly named flags.
2017-03-05 00:36:32 +01:00
Christoph Oelckers
600f57405f
- fixed typo in TexMan.GetSize.
2017-03-05 00:28:15 +01:00
Rachael Alexanderson
be8abba344
- started adding ARM support. incomplete. won't compile. don't try.
2017-03-04 16:50:42 -05:00
Rachael Alexanderson
b8b5360de1
Merge https://github.com/coelckers/gzdoom
2017-03-04 07:28:02 -05:00
Christoph Oelckers
cfafbfe4f2
- removed FStringNoInit.
...
This was development garbage.
2017-03-04 12:55:20 +01:00
Christoph Oelckers
7dbc6939c4
- declared most native getters in Actor as const.
...
- made the self pointer of const functions readonly.
This seems to work fine. Both calling a non-const function and trying to assign a value to a member fail with an error message.
2017-03-04 12:43:07 +01:00
Christoph Oelckers
b3ba5bfe2c
- allow 'const' on class functions. This is preferable to 'clearscope' so that the UI code can call getter functions without having to declare things as 'clearscope'.
...
Clearscope is a dangerous context and should be limited to the minimum extent possible and preferably be blocked in user code.
This may still need some work on const functions but better have it in now.
2017-03-04 12:07:45 +01:00
Christoph Oelckers
5551f3a8c5
- declared the sectorplanes in Sector as read only and marked all relevant functions in the planes themselves const.
...
This is to block modification of the planes directly. For future-proofness with renderer changes everything that alters these values should go through he function interface.
2017-03-04 11:48:36 +01:00
Christoph Oelckers
3879e67cee
- the #if was in the wrong place.
2017-03-04 11:34:53 +01:00
alexey.lysiuk
a5edd48996
Fixed remaining warning reported by Clang
...
src/scripting/zscript/zcc_compile.cpp:2456:54: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2017-03-04 12:23:15 +02:00
alexey.lysiuk
d8cee4d3a5
Fixed most of warnings reported by Clang
...
src/scripting/zscript/zcc_compile.cpp: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
src/p_acs.cpp: warning: format specifies type 'char *' but the argument has type 'PClass *' [-Wformat]
2017-03-04 12:17:53 +02:00
alexey.lysiuk
8a1e0ee4b5
Fixed compilation with GCC/Clang
...
src/menu/menu.cpp:806:20: error: cannot pass non-trivial object of type 'FString' to variadic function; expected type from format string was 'char *' [-Wnon-pod-varargs]
2017-03-04 12:03:31 +02:00
Christoph Oelckers
a7fdf4b90d
- fixed: M_Init needs to catch VM exceptions from MENUDEF init to print out meaningful error messages in case something goes wrong.
2017-03-04 10:58:34 +01:00
Christoph Oelckers
fd4727e701
- did a bit of cleanup.
...
- disabled the runtime check in OP_CALL because as implemented it doesn't clean up properly and is not fully implemented.
2017-03-04 10:28:51 +01:00
Magnus Norddahl
8515f9720a
1D shadow maps are now working
2017-03-04 09:14:01 +01:00
ZZYZX
3338fb7f33
Added SendNetworkEvent static method to EventHandler; Fixed qualified static method call from own class (previously was 'shadowed' by qualified virtual method call)
2017-03-04 00:57:41 +02:00
ZZYZX
c9a994a885
Fixed: clearscope should also clear the inherited scope (through struct member access chain); Fixed: struct member access chain should ONLY work for structs (forgot that FxClassMember inherits FxStructMember)
2017-03-04 00:04:19 +02:00
ZZYZX
723f9770a4
Merge remote-tracking branch 'gz/master' into gz_master2
2017-03-03 23:33:02 +02:00
Rachael Alexanderson
21a8964bea
Merge remote-tracking branch 'gzdoom/master'
...
# Conflicts:
# src/v_video.cpp
2017-03-03 16:29:33 -05:00
ZZYZX
a924564bf3
Implemented hard separation between playsim ConsoleEvent and networked ConsoleEvent (ConsoleProcess, NetworkProcess)
2017-03-03 23:21:12 +02:00
Rachael Alexanderson
4b63092c7a
- disable size checking in windowed mode for vid_setmode, allowing it to set arbitrary sizes.
2017-03-03 22:19:58 +01:00
ZZYZX
421f78c771
Fixed potential crash with new() in anonymous functions (is that even allowed?); Added compile-time check for disallowed new()
2017-03-03 22:52:35 +02:00
ZZYZX
3a57a9809f
Removed nonew class modifier
2017-03-03 22:42:12 +02:00
ZZYZX
78533cc316
Fixed: the name of accessed field is now properly retrieved in FxStructMember::RequestAddress
2017-03-03 22:38:33 +02:00
Christoph Oelckers
fd20e1d78f
- allow hooking custom serializers into PPointer so that serializable types can be handled without having to create new type classes which would be a bit unwieldy thanks to how the type system works.
2017-03-03 20:11:13 +01:00
Christoph Oelckers
c630b07011
- replaced SDWORD with int32_t globally.
...
This type wasn't used in the software rendering code so it could be removed already. The other homegrown types will have to be dealt with later.
2017-03-03 19:35:08 +01:00
Christoph Oelckers
f563a296c2
- added an ACS ScriptCall function. So far only superficially tested.
2017-03-03 19:23:27 +01:00
Christoph Oelckers
217bcb847d
- fixed: When the savegame code errors out, some cleanup is required in G_DoSaveGame.
2017-03-03 19:19:19 +01:00
Christoph Oelckers
7736e42740
- fixed: The respawn event handler was not called for a regular in-game respawn, only for a cheat resurrection.
2017-03-03 18:53:11 +01:00
Magnus Norddahl
6055f136d8
Make sure SwapInterval is only ever called while the default frame buffer is bound to avoid problems with some drivers
2017-03-03 16:55:18 +01:00
Rachael Alexanderson
b3a69e1df8
Merge https://github.com/coelckers/gzdoom
2017-03-02 18:13:33 -05:00
Magnus Norddahl
0d1deddae5
Bind shadow map texture for main.fp and sample from the shadowmap texture
2017-03-02 19:10:57 +01:00
Christoph Oelckers
1761da6079
- fixed: AActor::Howl checked HowlSound for the wrong type.
2017-03-02 18:40:01 +01:00
Christoph Oelckers
8253b91d97
- fixed: The stair and donut builders did not initialize FFloor::m_Instant.
2017-03-02 18:18:34 +01:00
Magnus Norddahl
538d516c9a
Upload shadow map index for each light to main.fp
...
Move storage buffer binding location
2017-03-02 18:07:47 +01:00
Magnus Norddahl
62c285f7b3
Create a shadowmap texture and upload light list
2017-03-02 16:19:06 +01:00
Magnus Norddahl
7a4b01471d
Add class updating and managing the shadow map texture
2017-03-02 16:19:06 +01:00
Magnus Norddahl
6363c6cf58
Add a shadowmap shader
2017-03-02 16:19:06 +01:00
Magnus Norddahl
58c7c3c902
Upload BSP tree to the GPU
2017-03-02 16:19:06 +01:00
Rachael Alexanderson
26f7902c3f
- fixed: If player is killed by world, attacker was not checked for nullptr, causing a crash.
2017-03-02 13:02:25 +01:00
Christoph Oelckers
ff88ecd3f0
- a bit more reordering for another minor performance gain.
2017-03-02 12:55:04 +01:00
Christoph Oelckers
4dc0599a6c
- did a bit of reordering AActor's variables to group the ones together which are accessed by the renderer. Tested with some actor-heavy maps this does provide a small, approx 3-4% speedup in the OpenGL sprite processing function.
2017-03-02 12:37:25 +01:00
Christoph Oelckers
3532e50575
- check for RF_MASKROTATION before calling IsInsideVisibleAngles, because it is a bit faster this way.
2017-03-02 12:14:00 +01:00
Christoph Oelckers
cfda1a49d4
- forgot to save the last fix for the previous commit.
...
- let the script compiler also output the size of the allocated data for the script functions in addition to the actual code size.
2017-03-02 11:58:30 +01:00
Christoph Oelckers
b194ba205a
- backported Zandronum's MaxHealth base class for the MaxHealthBonus item.
2017-03-02 11:39:52 +01:00
Christoph Oelckers
00dc59ebdc
- separated the blood translation index from the BloodColor variable to allow more than 255 blood translations and as a prerequisite for allowing to change the blood color.
2017-03-02 10:26:23 +01:00
Rachael Alexanderson
d84ba4b953
Merge https://github.com/coelckers/gzdoom
2017-03-02 04:22:32 -05:00
Christoph Oelckers
59bd4d608c
- fixed: Be a bit more paranoid about what to consider a mod with an empty top-level directory.
...
This should only be accepted if the subdirectory contains at least one identifiable game definition lump to avoid catching some patch mods with only a few files.
2017-03-02 10:00:22 +01:00
Christoph Oelckers
3c21ca9cb1
- added a compatibility option to move vertices and applied it to E1M6 of Masters of Chaos.
...
This map has a door/lift combination that could trap the player without any chance to get out because both elements are so close together that it was almost impossible to trigger the lift. Moved two vertices by one map unit to make enough room.
2017-03-01 22:06:39 +01:00
Christoph Oelckers
9b2f31e692
- had to add a hack because some people had to exploit implementation-dependent behavior of the PulseLight type.
2017-03-01 20:54:37 +01:00
Christoph Oelckers
0de79042d4
- fixed: 'Bloodtype' cannot use the generic property definition because it needs special handling for optional arguments. This reinstates the native handler.
2017-03-01 20:20:46 +01:00
Christoph Oelckers
b5d4a59465
- fixed: Meta properties must not be serialized.
2017-03-01 20:10:24 +01:00
Rachael Alexanderson
bb3a2b25ff
Merge branch 'qzdoom-gpuswitch'
2017-03-01 10:26:15 -05:00
Rachael Alexanderson
4ebd25171c
- Implemented a simple graphics switch. This currently affects NVidia Optimus-enabled notebooks only.
2017-03-01 09:58:56 -05:00
Matthew McAllister
0583691670
Add bash-style console shortcuts
2017-03-01 11:33:14 +01:00
Rachael Alexanderson
5e5f88b629
Merge commit '5aec906' into testmaster
2017-02-28 21:34:36 -05:00
Rachael Alexanderson
d6169ea75e
Merge https://github.com/coelckers/gzdoom
2017-02-28 18:55:17 -05:00
Christoph Oelckers
cb295e0441
- added parameter to PLayerPawn::GetMaxHealth to return the real maximum health, including stamina upgrades.
2017-03-01 00:04:17 +01:00
Christoph Oelckers
12915b5f6e
- use an inventory flag to decide what items are slipped by DF_NO_HEALTH and DF_NO_ARMOR. With all the changes over the last 10 years this had become too spotty.
...
- use an enum type for ItemFlags, just like it was done for actor flags. Since the flag word is almost full it may soon be necessary to add a second one and then this kind of security check may become necessary.
2017-02-28 21:45:47 +01:00
Christoph Oelckers
dc6c91042b
- fixed misordered ACS functions.
2017-02-28 18:47:18 +01:00
Christoph Oelckers
314a642527
Merge branch 'meta'
2017-02-28 14:47:00 +01:00
nashmuhandes
bb1709228c
Changed FOV from a CCMD to a CVar, allowing players' FOV settings to persist. Also exported SetFOV to PlayerInfo for ZScript.
2017-02-28 14:46:30 +01:00
Christoph Oelckers
5f6da0d222
fixed double allocation of metadata.
2017-02-28 14:44:18 +01:00
Christoph Oelckers
168627f549
- native meta variables are not needed anymore. They were only a temporary aid to properly handle this, but now all have been redone.
2017-02-28 14:38:50 +01:00
Christoph Oelckers
bc0ffc4185
- removed access to the PlayerPawn's DisplayName variable. This one has implicit semantics, so wherever a displayable name is needed GetPrintableDisplayName should be called instead to allow later refactoring of the internal handling.
2017-02-28 14:33:46 +01:00
Christoph Oelckers
fc125f7eaf
- reworked the obituary system to use scripted virtual overrides. Let's hope this solves the problems with the original code, now that any actor needing special treatment can override it.
2017-02-28 14:30:14 +01:00
Christoph Oelckers
851984efe0
- made GetDeathHeight a virtual scripted function.
...
- made GetGibHealth a virtual scripted function.
- removed a few more native meta properties.
2017-02-28 13:40:46 +01:00
Christoph Oelckers
d5250d6b9f
- made WoundHealth modifiable to allow more control over the wound state.
2017-02-28 12:56:35 +01:00
Christoph Oelckers
2a4a5e7a70
- refactored a few more native meta properties.
2017-02-28 12:47:44 +01:00
Christoph Oelckers
1311f08f47
- scriptified Actor.GetBloodType as a virtual function to allow mods more flexibility here.
...
- made CameraHeight a modifiable actor property - it was readonly before.
- allow accessing the type constants from ZScript, this required quite a bit of explicit coding because the type system has no capabilities to search for basic types by name.
2017-02-28 12:11:25 +01:00
Christoph Oelckers
b6a1fe7fc6
- scriptified the basic attack functions, its properties and the explosion properties to test the new metadata system.
2017-02-28 10:51:32 +01:00
Rachael Alexanderson
5aec906031
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/version.h
2017-02-28 04:46:23 -05:00
Christoph Oelckers
a93a7e1cac
- handle player meta properties.
...
Only two really make sense, the rest is never used from scripts and may just remain where it was.
2017-02-28 01:23:12 +01:00
Christoph Oelckers
4a87a598fb
- do floatification of the UDMF Health property as it should have been.
2017-02-28 00:59:09 +01:00
Christoph Oelckers
78a66e001a
- properly handle all meta properties for inventory items.
2017-02-28 00:45:16 +01:00
Christoph Oelckers
f343d36ea9
- implemented the basics of a working metadata system.
...
This will store class meta properties in a separate memory block so that it won't have to muck around with PClass - which made the implementation from the scripting branch relatively useless because extending the data wasn't particularly easy and also not well implemented. This can now be handled just like the defaults.
2017-02-27 23:28:19 +01:00
Christoph Oelckers
3700dea336
Revert "- the UDMF health key for actors was not correctly implemented. This addresses the problem by adding a second one and documenting 'Health' as implemented."
...
This reverts commit e4e023e59a
.
(This was nonsense.)
2017-02-27 22:05:20 +01:00
Christoph Oelckers
d5d383ee93
- added Floor_Stop and Ceiling_Stop action specials.
2017-02-27 21:31:59 +01:00
Christoph Oelckers
1ff4016498
- added ACS math functions floor, ceil and round.
2017-02-27 20:42:12 +01:00
Christoph Oelckers
e511f7f84b
- added a damage type parameter to MDK CCMD.
2017-02-27 20:07:21 +01:00
Christoph Oelckers
ac4074a69a
- allow sprites and particles simultaneously for puffs.
2017-02-27 19:51:37 +01:00
Christoph Oelckers
321c846d01
- added StealthAlpha actor property for defining a minimum visibility value of a stealth monster.
2017-02-27 19:46:27 +01:00
Christoph Oelckers
f82ab889b2
- added ACS strarg function which can convert a string into a string argument for ACS specials.
2017-02-27 18:44:58 +01:00
Christoph Oelckers
4bcbd5c011
- clear WF_WEAPONBOBBING in P_FireWeapon, because otherwise the first frame of the fire animation will be drawn in the current bobbing position and not centered.
2017-02-27 18:38:01 +01:00
Rachael Alexanderson
869de7554f
- fixed: Opening automap without 2D acceleration and rgb666 blending crashed due to bad color calculations. (Attempted to pass rgb888 values into rgb666 array)
2017-02-27 12:15:17 -05:00
Rachael Alexanderson
e9364fccb8
- Fixed: voxels were not properly remapped after "restart" ccmd
2017-02-27 18:12:49 +01:00
Rachael Alexanderson
4a9845a6c0
- Fixed: voxels were not properly remapped after "restart" ccmd
2017-02-27 12:02:46 -05:00
Christoph Oelckers
cc598dfdde
- fixed: To get the final error handling from the serializer, Close must be called before the destructor gets invoked.
...
- added line feeds to all error messages in the serializer.
2017-02-27 15:16:03 +01:00
Christoph Oelckers
78538ed9ef
- missed an else.
2017-02-27 14:53:39 +01:00
Rachael Alexanderson
fa6a94f789
Merge https://github.com/coelckers/gzdoom
2017-02-27 08:22:53 -05:00
Rachael Alexanderson
bd61e9f3f4
- Disabled dynlights during invulnerability/lightamp (or any FixedColormap or FixedLightLevel)
2017-02-27 08:20:26 -05:00
Christoph Oelckers
f9f9f2d5fc
- added selfdamagefactor actor property.
2017-02-27 11:22:51 +01:00
Christoph Oelckers
e84a2899f9
- this needs one more check.
2017-02-27 10:52:29 +01:00
Christoph Oelckers
073e63ed04
- Added a check for all z-movement for floor huggers so that it doesn't skip all the height checks if +NODROPOFF is also given.
2017-02-27 10:50:21 +01:00
Christoph Oelckers
0c660ff29c
- added an option to add elements to an existing options menu.
...
Note that for list menus this does not exist because they require complete setup to work as intended.
2017-02-27 10:37:47 +01:00
Rachael Alexanderson
2a847ca570
Merge https://github.com/coelckers/gzdoom
2017-02-27 01:06:00 -05:00
Christoph Oelckers
720e05d131
- fixed memory leak in DEM_NETEVENT.
...
- added handling for DEM_NETEVENT to SkipCommand.
- keep the data of DEM_NETEVENT at a fixed length to simplify handling.
2017-02-27 02:31:19 +01:00
Christoph Oelckers
3a5124e10e
- fixed: TakeInventory needs to check for subclasses of PowerInfiniteAmmo.
2017-02-27 02:09:56 +01:00
Christoph Oelckers
c7cf619ff4
- Caution: Wads.GetLumpName with a char pointer is stupid because it doesn't 0-terminate its return.
2017-02-27 01:58:21 +01:00
Christoph Oelckers
1e1194a669
- fixed: Dp mot strip the top level folder name in Zips if they only contain one entry or if the first entry isn't a directory.
2017-02-27 01:53:51 +01:00
Christoph Oelckers
c8445703ac
- added a workaround for the 'cannot split a seg' error in the node builder: In order to prevent all segs from ending up on the same side it will now force the bogus seg onto the other side of the node - regardless of whether this is correct or not, because the most important thing here is that the set of segs gets split to prevent the node builder from ending up in an endless recursion trying to split the same set of data and endlessly failing.
...
Note that this is not a fix, it's merely a countermeasure to avoid the crash in ZPack's E2M6 which this seems to achieve.
2017-02-27 01:41:27 +01:00
Christoph Oelckers
1ed2a0baf9
- fixed: The intermission screen did not show 'entering' for cluster-less maps.
2017-02-26 23:49:53 +01:00
Christoph Oelckers
e4e023e59a
- the UDMF health key for actors was not correctly implemented. This addresses the problem by adding a second one and documenting 'Health' as implemented.
...
- fixed: Several ZDoom-exclusive actor keys did not check the current namespace.
2017-02-26 23:21:56 +01:00
Christoph Oelckers
0514a997db
- added a new argument to GlassBreak to allow it to spawn other types of debris than GlassJunk by passing a spawn ID.
2017-02-26 23:07:16 +01:00
Christoph Oelckers
8c30ca213d
- allow loading of zips that have one root folder with all content contained within this folder. This top level's folder name will be stripped out from all file names, unless it is a special name that maps to a known namespace.
2017-02-26 22:55:36 +01:00
Christoph Oelckers
f918a9d9a7
- added a BOUNCE_NotOnShootables flag that hopefully helps addressing the biggest glitch in the bouncing code.
2017-02-26 22:31:43 +01:00
Christoph Oelckers
80e9763d64
- added a NOMENU option for skills.
2017-02-26 22:10:35 +01:00
Christoph Oelckers
3d500f0495
- added default obituaries for damage types.
...
Note that this is only implemented for the new official way of doing this in MAPINFO, but not in DECORATE!
2017-02-26 21:36:06 +01:00
Christoph Oelckers
f6dd99d3aa
- added A_Morph function.
2017-02-26 21:20:47 +01:00
Christoph Oelckers
346ada76bc
- allow blocking controller input in the menu.
2017-02-26 20:59:24 +01:00
Christoph Oelckers
8cac2d8c84
- added a NOATTACK sector flag which prevents monsters from going to their attack states if present.
2017-02-26 20:27:02 +01:00
Christoph Oelckers
9aff224891
- allow a link between the same sector's floor and ceiling.
2017-02-26 20:11:24 +01:00
Christoph Oelckers
0eebaf9f6b
- allow nightmare respawn if the current state has the 'canraise' flag.
2017-02-26 20:06:16 +01:00
Christoph Oelckers
7a1f36bfb0
- added RF_DONTINTERPOLATE flag.
2017-02-26 20:01:39 +01:00
Rachael Alexanderson
8c46ab40b1
Merge https://github.com/coelckers/gzdoom
2017-02-26 13:42:12 -05:00
Christoph Oelckers
4d043f086e
- missed a spot.
2017-02-26 19:41:39 +01:00
Rachael Alexanderson
7a5df2bc28
Merge commit 'b0eb19b'
2017-02-26 13:41:02 -05:00
Christoph Oelckers
7267e608cf
- added kickback factor skill property.
2017-02-26 19:37:25 +01:00
Christoph Oelckers
b0eb19bbc8
- added an option to define untranslated fonts through FONTDEFS. Note that due to how the fonts work they cannot be colorized AT ALL!
2017-02-26 19:29:27 +01:00
Christoph Oelckers
0cc46a2aaf
- added a FORCEINFIGHTING flag.
2017-02-26 19:05:20 +01:00
Christoph Oelckers
92b916fd5d
- fixed: ACS's SetMugshotState function was essentially broken in multiplayer because it contained no checks if the script's activator is connected to the current console player.
...
Ideally this should also be fixed for singleplayer but that would probably break half the mods using this function...
2017-02-26 18:49:40 +01:00
Christoph Oelckers
fb3d4bd42a
- added A_SetMugshotState.
2017-02-26 18:46:06 +01:00
Christoph Oelckers
5fe04dfd20
- added A_SprayDecal function.
2017-02-26 18:37:12 +01:00
Christoph Oelckers
c4b546404a
- added a 'nocheck' parameter to A_Raise* and Thing_Raise.
2017-02-26 17:50:48 +01:00
Christoph Oelckers
3f5ef48dac
- allow setting a global dialogue lump through gameinfo.
2017-02-26 17:22:02 +01:00
Christoph Oelckers
f31ddbc57c
- allow specifying specials in ZSDF by name.
...
- allow specifying a decal ID by name in UDMF.
2017-02-26 17:05:04 +01:00
Christoph Oelckers
ee6e427e78
- fixed: USDF did not allow specials > 255.
2017-02-26 16:54:09 +01:00
Christoph Oelckers
d80dc098bd
- added a RESETITEMS MAPINFO flag.
2017-02-26 16:48:24 +01:00
Christoph Oelckers
e6b31dde27
- added some flexibility to some Skulltag powerups.
...
- handle these powerups by actual item checks instead of cheat flags. (The same should also be done for the Frightener and Buddha but those are a bit more complex because they are also real cheats.)
2017-02-26 16:23:22 +01:00
Christoph Oelckers
8b2a5c75a1
- added an old submission for PowerReflection, although it had to be seriously reworked and improved.
2017-02-26 15:47:37 +01:00
Christoph Oelckers
a0b830c198
- allow all actor list CCMDs to filter by tid.
2017-02-26 15:20:43 +01:00
Christoph Oelckers
a6761463af
- added a new showtriggerlines mode that doesn't exclude doors.
...
- use lambdas for the AM checker functions.
2017-02-26 15:01:55 +01:00
Christoph Oelckers
bb7e191208
- allow specification of intermission music based on the destination map.
2017-02-26 14:50:02 +01:00
Christoph Oelckers
03ac816e83
- added a gme_stereodepth CVAR.
2017-02-26 14:04:30 +01:00
Christoph Oelckers
3412bdf5dc
Revert "Fixed splitting of long lines in message box menu"
...
This reverts commit 76a44ebf9c
.
Fix was done in the wrong place, it should be inside the script so that script-side calls to open a confirmation screen also get proper treatment.
2017-02-26 12:51:24 +01:00
Christoph Oelckers
2663414f72
Merge branch 'master' of https://github.com/coelckers/gzdoom
2017-02-26 12:47:34 +01:00
Christoph Oelckers
90b8dbb096
- removed the separate SSE2 version of the node builder's ClassifyLine function and all code associated with it.
...
Like everything else related to doing standard math with SSE2 vs. x87, there's nothing to be gained here with anything but first generation SSE2 systems which are irrelevant these days.
Taking 'thespir2.wad' from https://forum.zdoom.org/viewtopic.php?f=1&t=10655 the SSE2 version is reproducably ~3% slower than the x87 version on my Core i7, which quite closely mirrors all my previous tests since 2007.
Overall this just looks like an optimization not worth doing.
2017-02-26 12:47:16 +01:00
alexey.lysiuk
76a44ebf9c
Fixed splitting of long lines in message box menu
...
https://mantis.zdoom.org/view.php?id=338
2017-02-26 12:04:34 +02:00
Christoph Oelckers
bfa7a2d737
- fixed: DStaticEventHandler did not declare its pointers.
2017-02-26 10:59:05 +01:00
alexey.lysiuk
c150f9d737
Fixed incorrect pointers for Actor.Used()
...
https://mantis.zdoom.org/view.php?id=340
2017-02-26 11:39:27 +02:00
alexey.lysiuk
6ae91ac9ea
Fixed scripting type of demoplayback global variable
...
https://mantis.zdoom.org/view.php?id=334
2017-02-26 10:36:03 +02:00
Rachael Alexanderson
404b326812
Merge https://github.com/coelckers/gzdoom
2017-02-25 18:32:06 -05:00
Rachael Alexanderson
e7a1a59053
- Disabled alpha-masking textures for now, since they do not yet work. (needs texman fix)
2017-02-25 16:36:57 -05:00
Christoph Oelckers
43e5f035e4
- added a 'brief' mode to linetarget and info.
2017-02-25 21:48:15 +01:00
Rachael Alexanderson
9b40aa9605
- Fixed two typos as identified by dpJudas.
2017-02-25 15:32:50 -05:00
Christoph Oelckers
35552ce0cb
- added a Death.Sky state for missiles that gets used when they hit a sky plane.
...
- fixed: The Alt HUD did not draw the crosshair in HUD off mode.
2017-02-25 20:45:28 +01:00
Christoph Oelckers
7f78b42f21
- added an 'inventory change' and 'weapon change' sound, which by default are not defined.
2017-02-25 20:20:43 +01:00