Commit graph

15327 commits

Author SHA1 Message Date
Rachael Alexanderson
239b57b41c - fixed: use 'setsizeneeded' more often in the scaling code. recalculating screen geometry for 2D elements when it changes never really hurts. 2018-10-14 16:27:08 -04:00
Erick Tenorio
cc8112f88d -Fixed many IWAD mapping errors 2018-10-14 11:44:54 +02:00
Christoph Oelckers
dd719f0f14 - extended the register limit for 'param'.
The instruction one free instruction byte so it's now using that to extend its argument's register range to 65535.
For param this is needed because it passes strings by reference and creating an implicit temporary copy for string constants does not work here.
2018-10-14 09:13:26 +02:00
player701
eee0946bc5 - Fixed indentation 2018-10-14 00:52:00 +02:00
player701
6dc026895c - Exported PickNewWeapon function from PlayerPawn to ZScript. 2018-10-14 00:52:00 +02:00
Rachael Alexanderson
ec7e855a56 - g3.7pre 2018-10-10 02:25:32 -04:00
Christoph Oelckers
0dc7f6be19 - fixed: MD3s with a skin-less surface left the renderer in an undefined state.
The frame interpolation factor wasn't reset and rendering prematurely aborted with no chance to recover.
2018-10-09 19:16:15 +02:00
Erick Tenorio
22f8c26917 Fix missing enemies in HTP-RAW.WAD MAP22
Make 100% kills possible on MAP22 of Hell to Pay
2018-10-09 07:44:30 -04:00
Rachael Alexanderson
e223a25863 - fixed: smooth teleporters could fudge the player over an adjacent line, causing the player to appear on top of a cliff that is much higher than the original teleport. 2018-10-09 06:55:56 -04:00
Rachael Alexanderson
3d81be1517 - always enforce a minimum distance for fog when fogmode is set to standard. without this, it was possible for the GPU to error out and stop rendering pixels for certain screen blocks 2018-10-09 04:45:23 -04:00
Erick Tenorio
643e3a78d8 Fixes for Wraith Corporation WADs 2018-10-08 18:40:25 +02:00
alexey.lysiuk
77b8eb6547 - reverted macOS dark mode support with old SDKs
This feature causes several issues with NSOpenGLView:
* Mouse event coordinates are wrong in non-retina mode on HiDPI screen
* In retina mode only 1/4 of picture is visible and its scaling is incorrect
* Some sort of filtering is applied to frontbuffer picture
* Noticeable increase in CPU load because of that filtering

Linking with macOS 10.14 SDK leads to all these issues regardless of .plist option presence and its value
2018-10-08 15:50:56 +03:00
Christoph Oelckers
2c9a82e084 - fixed potential null pointer access in Hexen's spike code. 2018-10-07 20:00:30 +02:00
alexey.lysiuk
4d14642cad - enabled macOS dark mode support with pre-10.14 SDKs
https://developer.apple.com/documentation/appkit/nsappearancecustomization/choosing_a_specific_appearance_for_your_app
2018-10-07 11:10:29 +03:00
alexey.lysiuk
2a68926192 - use Xcode 10 for Travis builds 2018-10-07 11:08:10 +03:00
Christoph Oelckers
605d9ecdab - removed dynamic lights from Hexen's Mana pickups.
They barely glow, yet were casting relatively strong lights.
2018-10-06 23:50:12 +02:00
Magnus Norddahl
d4a64284ea
Merge pull request #586 from Talon1024/feature/objSmoothCalc
Calculate normals for OBJ models with smooth groups
2018-10-05 21:40:16 +02:00
Magnus Norddahl
8ea74770fd - fix artifact in PCF filter when the texture coordinate wraps 2018-10-05 21:30:16 +02:00
alexey.lysiuk
9cffc29134 - fixed stuck memory usage warning in options menu
https://forum.zdoom.org/viewtopic.php?t=62186
2018-10-05 15:22:21 +03:00
Magnus Norddahl
5e04678965 Merge branch 'master' of https://github.com/coelckers/gzdoom 2018-10-05 04:36:27 +02:00
Magnus Norddahl
6135e867a9 - remove shadow acne from PCF shadowmap filter and add three quality levels 2018-10-05 04:36:11 +02:00
Rachael Alexanderson
e7f19b01cb - added normal5x and normal6x 2018-10-04 22:09:18 -04:00
Magnus Norddahl
09bc6614cf
Merge pull request #595 from OrdinaryMagician/ue1_facetfix
Another minor correction to UE1 models
2018-10-04 23:24:16 +02:00
Marisa Kirisame
25ac526936 Computed facet normals for UE1 models were not normalized when they were supposed to. 2018-10-04 23:16:43 +02:00
Magnus Norddahl
c60270bd9e Merge branch 'master' of https://github.com/coelckers/gzdoom 2018-10-04 15:33:22 +02:00
Magnus Norddahl
cd520a6528 - fix the nearest shadow map filter to have no shadow acne and replace linear with nearest in the menu 2018-10-04 15:33:07 +02:00
Marisa Kirisame
c3894ee348 Exports various resurrection-related functions to ZScript. 2018-10-04 08:59:37 -04:00
Vitaly Novichkov
59c8d8ff64 Upgrade libADLMIDI and libOPNMIDI
Added full-panning stereo, improvement of channel management, and many other things.

Also, I have implemented an ability to use custom WOPL (for libADLMIDI) and WOPN (for libOPNMIDI) banks from the same path as "soundfonts", but also, in the same environment, the "fm_banks" folder was added for WOPL/WOPN storing purposes.
To toggle usage of embedded or custom bank, I have added togglable booleans. When bank fails to be loaded, the default embedded bank is getting to be used as fallback.

ADLMIDI 1.4.0   2018-10-01
 * Implemented a full support for Portamento! (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Added support for SysEx event handling! (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Added support for GS way of custom drum channels (through SysEx events)
 * Ignore some NRPN events and lsb bank number when using GS standard (after catching of GS Reset SysEx call)
 * Added support for CC66-Sostenuto controller (Pedal hold of currently-pressed notes only while CC64 holds also all next notes)
 * Added support for CC67-SoftPedal controller (SoftPedal lowers the volume of notes played)
 * Fixed correctness of CMF files playing
 * Fixed unnecessary overuse of chip channels by blank notes
 * Added API to disable specific MIDI tracks or play one of MIDI tracks solo
 * Added support for more complex loop (loopStart=XX, loopEnd=0). Where XX - count of loops, or 0 - infinite. Nested loops are supported without of any limits.
 * Added working implementation of TMB's velocity offset
 * Added support for full-panning stereo option (Thanks to [Christopher Snowhill](https://github.com/kode54) for a work!)
 * Fixed inability to play high notes due physical tone frequency out of range on the OPL3 chip

OPNMIDI 1.4.0   2018-10-01
 * Implemented a full support for Portamento! (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Added support for SysEx event handling! (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Added support for GS way of custom drum channels (through SysEx events)
 * Ignore some NRPN events and lsb bank number when using GS standard (after catching of GS Reset SysEx call)
 * Added support for CC66-Sostenuto controller (Pedal hold of currently-pressed notes only while CC64 holds also all next notes)
 * Added support for CC67-SoftPedal controller (SoftPedal lowers the volume of notes played)
 * Resolved a trouble which sometimes makes a junk noise sound and unnecessary overuse of chip channels
 * Volume models support taken from libADLMIDI has been adapted to OPN2's chip speficis
 * Fixed inability to play high notes due physical tone frequency out of range on the OPN2 chip
 * Added support for full-panning stereo option

ADL&OPN Hotfix: re-calculated default banks
The fix on side of measurer of OPL3-BE and OPN2-BE where some instruments getting zero releasing time.
2018-10-04 08:58:47 -04:00
Rachael Alexanderson
2fff5c4c39 - use correct multipliers for the memory warnings for normalNx scalers 2018-10-04 08:43:02 -04:00
Rachael Alexanderson
b6bcc1b0f5 Add 'normalNx' texture scaling 2018-10-04 08:43:02 -04:00
alexey.lysiuk
c589f1bba7 - added a warning for texture upscaling modes 2018-10-04 08:43:02 -04:00
alexey.lysiuk
778a7c370d - added 5x and 6x upscaling with xBRZ 2018-10-04 08:43:02 -04:00
alexey.lysiuk
36adbcd9ed - localized names for xBRZ scaling modes 2018-10-04 08:43:02 -04:00
alexey.lysiuk
e111e2251c - cleaned up old xBRZ 1.0 upscaler
Removed obsolete header comments and support for C++98
Disabled Windows only debug features
2018-10-04 08:43:02 -04:00
alexey.lysiuk
30c3f4f597 - update xBRZ upscaler to version 1.6
Fixed build with all suported toolchains thanks to incomplete implementation of C++14 in MSVC 2015 and GCC 4.9
Removed obsolete header comments and support for C++98
Disabled Windows only debug features

https://sourceforge.net/projects/xbrz/
https://sourceforge.net/projects/xbrz/files/xBRZ/xBRZ_1.6.zip
2018-10-04 08:43:02 -04:00
Magnus Norddahl
d65d462268 - add some comments to shadowmap.fp 2018-10-04 01:29:25 +02:00
Magnus Norddahl
36946a47fe - fix diagonal linear shadow map artifact 2018-10-04 00:46:17 +02:00
Rachael Alexanderson
51dfc82153 - fix missing curly brace 2018-10-03 09:39:32 -04:00
Christoph Oelckers
92e419d65c - toned down the intensity of the dynamic lights for Doom's torches. 2018-10-03 13:46:25 +02:00
Christoph Oelckers
797f88a6c8 - some tweaking of shadowmap filter setting to allow changing the PCF filter's number of samplings. 2018-10-03 13:45:54 +02:00
Christoph Oelckers
35bb2d3079 - add new option to menu 2018-09-29 13:31:13 +02:00
Christoph Oelckers
c8852b8fea - enabled the linear shadowmap filter.
Although this doesn't look as good as the PCF version it is a lot less calculation intensive and therefore more suitable for weaker hardware.
It also tends to bleed through walls a lot less.
2018-09-29 13:23:40 +02:00
Christoph Oelckers
86c7e87767 Merge branch 'master' of https://github.com/coelckers/gzdoom 2018-09-29 12:59:11 +02:00
Marisa Kirisame
670c86cd47 Fix a major oversight that caused UE1 models to use the normals of the first frame for all frames. 2018-09-25 21:00:04 +02:00
Marisa Kirisame
a9b25242cd Hotfix: The output from CheckReplacement no longer permanently overrides an actor's replacement. 2018-09-23 23:40:58 +02:00
Magnus Norddahl
3b8b312fae - clamp the software light to never get brighter than the initial light level 2018-09-23 17:58:17 +02:00
Kevin Caccamo
525ab8eda3 Attempt to fix warnings from VS2017 Win64 compiler 2018-09-22 12:49:54 -04:00
Kevin Caccamo
7d4895d9df Calculate normals for OBJ models with smooth groups
Add smoothGroup member to OBJFace struct, and assign the current smooth group number to it
Move face normal calculation code to CalculateNormalFlat
Add AddVertFaces method, which initializes and populates the vertFaces array of arrays, which holds references to triangle references per vertex
Only initialize and populate vertFaces if the model has missing normals and smooth groups
Assign smooth groups to triangle data
Add CalculateNormalSmooth method, which calculates the normals for each face the vertex is attached to, depending on whether or not the faces are part of the given smooth group, and averages them out
Add OBJTriRef struct, which holds references to triangles on OBJ surfaces

Make {agg,cur}SurfFaceCount unsigned ints
Change nvec to a value instead of a pointer
2018-09-22 10:24:01 -04:00
Christoph Oelckers
bc1e659c7b Revert "- reworked fog uniforms to move the global fog mode setting to the viewpoint buffer."
This reverts commit 8b26b6dd1e.

This was causing problems with light mode 2 because some edge cases were no longer handled properly.
2018-09-16 22:38:20 +02:00
Marisa Kirisame
38c8f0d585 Adds OnDrop virtual to inventory items. Called on the dropped item at the end of AActor::DropInventory. 2018-09-16 17:58:57 +02:00