Commit Graph

11000 Commits

Author SHA1 Message Date
Christoph Oelckers 62ea83a35a - let the prediction code handle all 4 threaded lists an actor gets linked into.
This is mostly a straight refactoring of the existing code to work independently of specific member variables in the involved classes, using a bit of template magic to avoid redundancy and moving the work code into subfunctions.
It still needs some testing to see if it a) helps fix the crash issues and b) doesn't break anything-
2017-01-06 15:06:17 +01:00
Christoph Oelckers c52bc06e9b - use a memory arena to allocate msecnodes.
These are rather small and extremely frequently allocated, so they are prime candidates for memory arena, because it not only avoids fragmentation and internal overhead due to mass allocation of small memory blocks but it also makes it a lot faster to free the memory when finishing a level.
2017-01-06 13:09:58 +01:00
Christoph Oelckers ed25cf61c5 - moved the msecnode code to its own file.
Note that this originates from Boom so it needs to keep the Doom license.
2017-01-06 12:54:01 +01:00
Christoph Oelckers b11c8fef57 - renamed a few variables for clarity. 2017-01-06 11:56:17 +01:00
Christoph Oelckers 44ad55602d - got rid of uint32(-1) casts. 2017-01-06 11:43:27 +01:00
alexey.lysiuk b297047060 Removed useless integer type size expansion
Fixed Apple's Clang warnings:
absolute value function 'abs' given an argument of type 'long long' but has parameter of type 'int' which may cause truncation of value
2017-01-06 10:40:51 +01:00
alexey.lysiuk 1a0d8dffd9 Fixed harmless initialization order mismatch
No more 'field ... will be initialized after field ...' warnings reported by GCC/Clang
2017-01-06 10:40:51 +01:00
alexey.lysiuk 0e9f52f9e5 Added virtual destructor to FPresentShaderBase class
No more 'delete called on non-final class that has virtual functions but non-virtual destructor' warnings reported by GCC/Clang
2017-01-06 10:40:51 +01:00
alexey.lysiuk d77718d422 Fixed harmless uninitialized variables warnings
No more 'variable  is used uninitialized whenever switch default is taken' warnings reported by GCC/Clang
2017-01-06 10:40:51 +01:00
alexey.lysiuk 9ed2da176e Fixed signed/unsigned mismatch in comparisons
No more 'comparison of integers of different signs' warnings reported by GCC/Clang
2017-01-06 10:40:51 +01:00
Christoph Oelckers e0540c6b37 - fixed uninitialized variable warning in codegen.cpp 2017-01-06 10:33:58 +01:00
Rachael Alexanderson 3548f17f01 Merge https://github.com/coelckers/gzdoom 2017-01-05 10:38:14 -05:00
Christoph Oelckers fcb1c1edc4 - only print GL extensions to the log, but not to the console.
The list has become so long by now that it's more of a distraction than help. Besides, searching on-screen for specific extensions is futile anyway.
2017-01-05 12:01:00 +01:00
Christoph Oelckers c87836c3f3 - fixed check for Mesa driver. 2017-01-05 11:51:15 +01:00
Christoph Oelckers b74c374a66 - fixed: The CheckReturn check for FxSwitchStatement was not strict enough.
It may only return true if there is no default case because without that any non-matching value will go past the statement.
2017-01-05 11:39:29 +01:00
Christoph Oelckers e13627e9d8 - fixed: portal offsets at frame start were not applied to ViewActorPos. 2017-01-05 11:28:08 +01:00
Magnus Norddahl e806b9424c Move r_portal into a class 2017-01-05 04:55:26 +01:00
Rachael Alexanderson c2d01522f0 Merge https://github.com/coelckers/gzdoom 2017-01-04 21:55:01 -05:00
Christoph Oelckers 3b7eb849a7 - fixed: The default minimum and maximum distances for A_Teleport were swapped. 2017-01-04 23:56:41 +01:00
Rachael Alexanderson b934f69303 Merge https://github.com/coelckers/gzdoom 2017-01-04 17:49:09 -05:00
Rachael Alexanderson 0a581754bf - Made WadSmoosh detection a lot stricter. 2017-01-04 20:48:52 +01:00
Rachael Alexanderson 8651cbc75a - Wildweasel pointed out that WadSmoosh generates a "SMOOSHED" lump. http://forum.zdoom.org/viewtopic.php?p=967226#p967226 2017-01-04 20:48:52 +01:00
Rachael Alexanderson 4fe3f7611c - Made WadSmoosh detection more flexible (since it doesn't necessarily require MAP01 to be present). 2017-01-04 20:48:52 +01:00
Rachael Alexanderson eb7f1b87e5 - Added Wadsmoosh detection. 2017-01-04 20:48:52 +01:00
Magnus Norddahl 4bcc34f01c Move openings deinit to r_memory 2017-01-04 19:13:58 +01:00
Magnus Norddahl e0f1fc4066 Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom 2017-01-04 19:03:40 +01:00
Magnus Norddahl 47ca45bf18 Convert FakeSide to enum class 2017-01-04 19:03:33 +01:00
Rachael Alexanderson ac22d80170 Merge https://github.com/coelckers/gzdoom 2017-01-04 12:56:35 -05:00
Magnus Norddahl 5f8075f726 Convert r_3dfloors to a class 2017-01-04 18:54:14 +01:00
Magnus Norddahl 28732d63d2 Move r_bsp into a class 2017-01-04 15:39:47 +01:00
Christoph Oelckers 4be9222646 - fixed: Dehacked must flag all states it touched for use in weapons. 2017-01-04 11:13:19 +01:00
Magnus Norddahl c396e7f949 Make r_bsp and r_line stop sharing floorplane and ceiling plane variables 2017-01-04 05:10:16 +01:00
Magnus Norddahl 38280b9315 Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom 2017-01-04 04:50:25 +01:00
Magnus Norddahl 5caea5a256 Fix clipping regression caused by splitting clip handling from line rendering 2017-01-04 04:49:10 +01:00
Rachael Alexanderson 13972eed2b Merge https://github.com/coelckers/gzdoom 2017-01-03 21:31:55 -05:00
Magnus Norddahl dba81db198 Move material multiplication out of inner light loop 2017-01-03 21:16:21 +01:00
Christoph Oelckers b132782c49 - scriptified PowerBuddha and PowerFrightener. 2017-01-03 21:03:05 +01:00
Magnus Norddahl b3cee51fd0 Fixed clang errors about the gotos leaving certain variables uninitialized 2017-01-03 20:53:40 +01:00
Christoph Oelckers 15f30886cd - scriptified the TimeFreezer powerup. 2017-01-03 20:06:20 +01:00
Rachael Alexanderson f523193121 Merge https://github.com/coelckers/gzdoom 2017-01-03 13:59:18 -05:00
Christoph Oelckers 3fec305ca2 - completed attenuation for Heretic. A few items were intentionally left unattenuated. 2017-01-03 13:59:09 -05:00
Christoph Oelckers 105f877e67 - fixed a few Freedoom light definitions. 2017-01-03 13:59:09 -05:00
Christoph Oelckers 37dab4a12c - fixed: 'out' parameters must always allocate an address register, regardless of type. 2017-01-03 13:59:09 -05:00
Christoph Oelckers f30b2ca80d - disabled OpenGL 3.0 on the Open Source Mesa driver for Linux because it appears to be broken. 2017-01-03 13:59:09 -05:00
alexey.lysiuk ca9523acef Fixed compilation with GCC/Clang
Fixes #175
2017-01-03 13:59:09 -05:00
Magnus Norddahl abdc7f9ff1 Move WindowLeft, WindowRight, MirrorFlags to r_portal 2017-01-03 19:25:00 +01:00
Magnus Norddahl e25645df46 Move r_fogboundary to line folder 2017-01-03 19:16:37 +01:00
Magnus Norddahl 863f17ada9 Fix function names 2017-01-03 19:08:02 +01:00
Magnus Norddahl a4c0e29913 Moved r_line into a class and implemented proper parameter passing between r_line and r_bsp, r_walldraw, r_wallsetup, r_decal, r_wallsprite, r_fogboundary, r_portal and r_playersprite 2017-01-03 18:57:48 +01:00
Magnus Norddahl aa11534033 Remove unused (and broken in swrenderer) back boolean from FakeFlat interface 2017-01-03 18:55:12 +01:00