Commit graph

14407 commits

Author SHA1 Message Date
Magnus Norddahl
83c0ec8b15 - fix softpoly mirrors
(cherry picked from commit 6e77cb4906)
2018-05-10 10:50:49 +02:00
Magnus Norddahl
bcb2ba6f29 - Simplify the portal code in softpoly somewhat
(cherry picked from commit 16a8d71caf)

# Conflicts:
#	src/polyrenderer/poly_renderer.cpp
2018-05-10 10:49:49 +02:00
alexey.lysiuk
343bcdad58 Actor's Activation property is now stored in saved game
https://forum.zdoom.org/viewtopic.php?t=60295
(cherry picked from commit b0261d9545)
2018-05-09 22:14:50 +02:00
alexey.lysiuk
798b6d0d5e Do not write g_pch.cpp if it's already up-to-date
This eliminates rebuilding of main executable by MSVC on every project generation by CMake

(cherry picked from commit 220d923e65)
2018-05-09 21:51:53 +02:00
alexey.lysiuk
a695cb426a Disabled annoying MSVC 2015 warnings in ADL and OPN files
src\sound\adlmidi\adlmidi_private.hpp(457): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\adlmidi\adlmidi.cpp)
src\sound\opnmidi\opnmidi_private.hpp(404): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\opnmidi\opnmidi.cpp)
src\sound\adlmidi\adlmidi_private.hpp(457): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\adlmidi\adlmidi_midiplay.cpp)
src\sound\adlmidi\adlmidi_private.hpp(457): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\adlmidi\adlmidi_load.cpp)
src\sound\adlmidi\adlmidi_private.hpp(457): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\adlmidi\adlmidi_private.cpp)
src\sound\adlmidi\adlmidi_private.hpp(457): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\adlmidi\adlmidi_opl3.cpp)
src\sound\opnmidi\opnmidi.cpp(132): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\opnmidi\opnmidi.cpp(147): warning C4800: 'unsigned int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\adlmidi\adlmidi.cpp(168): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\adlmidi\adlmidi.cpp(177): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\adlmidi\adlmidi.cpp(186): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\adlmidi\adlmidi.cpp(195): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\adlmidi\adlmidi.cpp(209): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\adlmidi\adlmidi_midiplay.cpp(740): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\adlmidi\adlmidi_midiplay.cpp(741): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\adlmidi\adlmidi_midiplay.cpp(742): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\adlmidi\adlmidi_midiplay.cpp(743): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\opnmidi\opnmidi_private.hpp(404): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\opnmidi\opnmidi_midiplay.cpp)
src\sound\opnmidi\opnmidi_private.hpp(404): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\opnmidi\opnmidi_load.cpp)
src\sound\opnmidi\opnmidi_midiplay.cpp(697): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\opnmidi\opnmidi_midiplay.cpp(698): warning C4800: 'unsigned int': forcing value to bool 'true' or 'false' (performance warning)
src\sound\opnmidi\opnmidi_private.hpp(404): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\opnmidi\opnmidi_opn2.cpp)
src\sound\opnmidi\opnmidi_private.hpp(404): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) (compiling source file src\sound\opnmidi\opnmidi_private.cpp)

(cherry picked from commit 671736ecdc)
2018-05-09 21:48:57 +02:00
drfrag666
ca0dee561b - Include gitinfo.h in version.h only for VS.
- Wrong version.

Avoid building of several files on each pull/reset/amend/cherry-pick/etc
2018-05-09 21:47:41 +02:00
drfrag666
538897430d - added a 'lightsizefactor' command to gldefs.
This is for mitigating the recently discovered problem with attenuated lights getting reduced in size, even on OpenGL 3+. The intent of the shrinking was to account for higher brightness of non-attenuated lights on OpenGL 2 and was never meant to be active on more modern versions.
The factor will apply to any attenuated light defined after it and will be inherited by included sub-lumps, but it will only last for the lunp it is set in.

If you have a definition for the broken behavior, AddLightAssociation

'lightsizefactor 0.667' at the top of your GLDEFS.
(ported patch by Graf)
2018-05-09 19:05:10 +02:00
drfrag666
8d45611cab - changed handling of attenuated lights in the legacy renderer to be adjusted when being rendered instead of when being spawned. For the software renderer the light needs to retain its original values.
(patch by Graf)
2018-05-09 14:57:13 +02:00
alexey.lysiuk
ca71c8c596 Changed macOS targets in Travis configuration
Added new Xcode 8.0 target and updated existing one to Xcode 9.3

(cherry picked from commit 340f5818c7)
2018-05-09 13:09:56 +02:00
drfrag666
912376f81f - Fixed stuck shotgun guy in Doom2's MAP02 and Quartz Flask outside of map in Heretic's E3M6.
- Changed missing textures for Doom2's MAP18 lines 451 and 459 to DOORSTOP.
2018-05-09 13:00:54 +02:00
alexey.lysiuk
2642cae3cd Fixed dangling links to garbage collected HUD message objects
https://forum.zdoom.org/viewtopic.php?t=60262
(cherry picked from commit 7a11be8615)
2018-05-09 12:31:39 +02:00
alexey.lysiuk
dac92c11cd Made 100% kills possible and unstuck imp on Valhalla map
https://www.doomworld.com/idgames/levels/doom2/Ports/m-o/ma_val
(cherry picked from commit df634539a0)
2018-05-09 12:31:38 +02:00
alexey.lysiuk
63514823e1 Added ability to set thing position in compatibility layer
(cherry picked from commit 87d164ee59)
2018-05-09 12:31:37 +02:00
Magnus Norddahl
3c382553ce - fix missing fuzz initialization in softpoly
(cherry picked from commit 4a3f7e8dd5)
2018-05-09 12:26:59 +02:00
Magnus Norddahl
153ce9e118 - fix softpoly portal crash and blinking translucent objects
(cherry picked from commit f5c2ffabc9)
2018-05-09 12:20:39 +02:00
drfrag666
8aa4e84b84 - add null pointer check on camera (patch by dpJudas) 2018-05-09 12:16:01 +02:00
alexey.lysiuk
f250bffbb4 Fixed missing textures on Valhalla with hardware renderer
It works fine with software renderer regardless of this compatibility entry because of texture bleeding
https://www.doomworld.com/idgames/levels/doom2/Ports/m-o/ma_val
-iwad doom2 -file ma_val.pk3 -nomonsters +map map01 "+warp -450 -2300"

(cherry picked from commit bb037635a8)
2018-05-09 12:00:44 +02:00
Magnus Norddahl
39194db54f - fix softpoly portal crash
(cherry picked from commit 61032cb6ae)
2018-05-09 11:46:26 +02:00
Christoph Oelckers
bfe87b75ad - the global portal data table also needs to be protected.
(cherry picked from commit 8b4c74fad8)
2018-05-09 11:45:21 +02:00
Christoph Oelckers
148353ab25 -protected critical portal data from getting written to by user code.
This data is game critical and may only be altered by code that knows what is allowed and what not. It must never be altered by any user code ever.
However, since the SkyViewpoint actors need to set up some relations between themselves and the default sky portals the previously purely internal 'internal' flag has been exported as a new keyword.

(cherry picked from commit cf8447d19c)
2018-05-09 11:45:20 +02:00
alexey.lysiuk
d03e966867 Fixed broken portals after loading saved game
Portals disabled initially and activated by scripting must be fully restored after loading of saved game

https://forum.zdoom.org/viewtopic.php?t=59999
(cherry picked from commit 4ea16acef5)

# Conflicts:
#	src/p_setup.cpp
2018-05-09 11:43:03 +02:00
Christoph Oelckers
40ac98fa21 - fixed: Rendering a translucent mid texture did not unset the render style for the following bottom texture.
With additive translucency and non-black fog this caused visual errors.

(cherry picked from commit 515323dcbd)
2018-05-09 11:37:35 +02:00
Magnus Norddahl
7a3433bb71 - disable software models
(cherry picked from commit ee443b6fb6)

# Conflicts:
#	src/polyrenderer/scene/poly_playersprite.cpp
2018-05-09 11:27:15 +02:00
Magnus Norddahl
8f930ee571 - Fix depth values when screenblocks less than 11
(cherry picked from commit 1a5f679d43)
2018-05-09 11:16:51 +02:00
Magnus Norddahl
8296b6ae81 - Fix model projection matrix
(cherry picked from commit b1355d472c)
2018-05-09 11:10:38 +02:00
Magnus Norddahl
1101253fc6 - Fix depth values written by sloped planes
(cherry picked from commit 7f25913b2d)
2018-05-09 11:10:37 +02:00
Magnus Norddahl
3da37a796b - Remove include that shouldn't be there (also caused macOS builds to fail)
(cherry picked from commit c15328de2f)
2018-05-09 11:04:06 +02:00
Magnus Norddahl
e519605c7d - Clean up PolyTriangleDrawer API so that it can better support both softpoly and the swrenderer
- Slightly improve how softpoly processes portals
- Pass the vertex transform matrix via a command rather than being part of the drawer args
- Improve zbuffer drawers in the software renderer
- Misc model rendering fixes

(cherry picked from commit 2d51fa5b43)
2018-05-09 10:47:22 +02:00
alexey.lysiuk
047ec41df9 Added activation type to WorldLine(Pre)Activated events
https://forum.zdoom.org/viewtopic.php?t=60232
(cherry picked from commit ba4cc1a6ca)
2018-05-09 10:34:12 +02:00
alexey.lysiuk
cfcf78269d Added names for arguments in DStaticEventHandler class definition
(cherry picked from commit 83c513b6c9)
2018-05-09 10:28:52 +02:00
Christoph Oelckers
0b6140b45c - added a compatibility handler for Kama Sutra MAP01's ending area.
(cherry picked from commit 13567f2505)
2018-05-09 10:24:26 +02:00
Christoph Oelckers
6c67470e4e - fixed last change of compatibility branch.
(cherry picked from commit ac98e5a4f8)
2018-05-09 10:24:25 +02:00
Christoph Oelckers
f05fe61369 - added missing validation to SetCameraToTexture ZScript function.
(cherry picked from commit 927b351174)
2018-05-09 10:08:33 +02:00
drfrag666
192101ac29 Merge remote-tracking branch 'remotes/gzdoom/ZCompat2' into g3.3mgw 2018-05-09 09:58:47 +02:00
Rachael Alexanderson
a82f428910 - remove TLS workaround and turn it into an actual error since it is required in order to even properly compile and not all systems properly detect this.
(cherry picked from commit a23259f26a)
2018-05-09 09:54:36 +02:00
drfrag666
be304a4929 - SSE2 instructions were always enabled for certain files. 2018-04-30 12:57:36 +02:00
drfrag666
a695491a1f - Restored DoBlending_MMX for non SSE2 cpus. 2018-04-28 20:36:54 +02:00
drfrag666
0c38c72ad7 - Some cleanup. 2018-04-27 22:00:31 +02:00
drfrag666
1acba42baa - Disabled position independent executable for MinGW
This broke MinGW-w64 but was ignored with tdm-gcc.
2018-04-26 12:59:34 +02:00
drfrag666
5a7192137d - Fixed usage of old _declspec. 2018-04-25 12:03:59 +02:00
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