Commit Graph

11361 Commits

Author SHA1 Message Date
Magnus Norddahl e90b73539e Move viewport drawing to its own folder 2017-02-02 15:10:06 +01:00
Magnus Norddahl d8c6f9acfd Limit access to sprite drawer variables 2017-02-02 13:51:41 +01:00
Magnus Norddahl f3d968cf41 Move wall drawer args into functions 2017-02-02 11:16:18 +01:00
Rachael Alexanderson 226e5238fc Merge https://github.com/coelckers/gzdoom 2017-02-01 21:57:37 -05:00
Magnus Norddahl 69b7312099 Add some transform helpers on RenderViewport 2017-02-01 23:23:10 +01:00
Magnus Norddahl d91e6ccece Remove dc_destorg and ylookup 2017-02-01 22:24:34 +01:00
Magnus Norddahl ca93d7456a Change redundant bRenderingToCanvas into a helper function 2017-02-01 21:59:48 +01:00
Magnus Norddahl bb0a223b80 Remove unused dc_destheight 2017-02-01 21:55:55 +01:00
Magnus Norddahl 7b578bbb53 Remove redundant dc_pitch 2017-02-01 21:52:29 +01:00
Magnus Norddahl 93166fa150 Remove r_swtruecolor variable as it is redundant 2017-02-01 21:42:08 +01:00
Christoph Oelckers becc00a8be - added a check to P_VerifyBlockmap to discard all blockmap with blocks whose first entry is not 0.
Seems someone has written a node builder which violates this long-standing assumption (https://www.doomworld.com/vb/source-ports/92468-introducing-zokumbsp/)
However, rather than second-guessing the format's correctness it's more advisable to just discard such blockmaps to avoid some less obvious issues that may creep up.
2017-02-01 21:40:47 +01:00
Christoph Oelckers d663f31e77 - removed the annoying assert in the dynamic light code.
I don't think that any of the remaining situations are a genuine problem, so let's just set the radius to the larger value.
2017-02-01 19:24:05 +01:00
Christoph Oelckers a59a9e7420 - missed one. 2017-02-01 19:17:56 +01:00
Christoph Oelckers 6bfbff2a69 - renamed RF_INTERPOLATE to RF_INTERPOLATEANGLES to avoid confusion about its meaning. 2017-02-01 19:11:14 +01:00
Major Cooke d55f1d3f6f - Adopted Nash's code for handling models with INTERPOLATE. 2017-02-01 19:09:18 +01:00
Major Cooke 39fcea9176 Added INTERPOLATE actor flag, allowing the previously reverted interpolation code to be toggleable. 2017-02-01 19:09:18 +01:00
Christoph Oelckers 04988a331b - fixed warning. 2017-02-01 19:07:41 +01:00
Magnus Norddahl e78e76a593 Move r_viewport variables into a class 2017-02-01 16:02:21 +01:00
Christoph Oelckers b77a0eb7cf - let D_PageDrawer always clear the background.
The math in DCanvas::FillBorder does not always work out so better clean the entire screen before drawing a fullscreen image to ensure that the menu blend is always drawn over something valid.
2017-02-01 11:44:13 +01:00
Christoph Oelckers bc29f61bfd - set the default for menu mouse input to 'touchscreen-like' because there's too much hardware out there which doesn't play nice with mouse input events. 2017-02-01 11:25:28 +01:00
Christoph Oelckers 6d28aa3541 - do not use strtol for parsing critical values that can get large.
This function will truncate everything that is larger than LONG_MAX or smaller than LONG_MIN to fit into a long variable, but longs are 32 bit on Windows and 64 bit elsewhere, so to ensure consistency and the ability to parse larger values better use strtoll which does not truncate 32 bit values.
2017-02-01 11:19:55 +01:00
alexey.lysiuk 1fd37ff2ff Removed unused input from fog boundary fragment program
This should fix https://mantis.zdoom.org/view.php?id=151
2017-02-01 10:05:38 +02:00
Rachael Alexanderson 4e45ea2300 Merge https://github.com/coelckers/gzdoom 2017-01-31 23:04:56 -05:00
Christoph Oelckers 90ee22b760 - don't let monsters without a See state disappear if they try to enter it. 2017-02-01 01:13:26 +01:00
Christoph Oelckers ccacc23905 - fixed division by 0 in ActorMover code. 2017-02-01 00:21:30 +01:00
alexey.lysiuk 3d147a032c Proper RDTSC implementation for x86_64 targets
Higher 32 bits of Time Stamp Counter were ignored in non-MSVC Windows and macOS builds
2017-01-31 17:51:12 +02:00
alexey.lysiuk 47faaa87fc Fixed deprecation warning reported by Clang
warning: 'register' storage class specifier is deprecated and incompatible with C++1z [-Wdeprecated-register]
2017-01-31 17:41:44 +02:00
alexey.lysiuk b12c8a8f79 RDTSC-based glcycle_t for macOS
Time profiler implementation is now closer to Windows version
2017-01-31 16:00:14 +02:00
alexey.lysiuk 1cdfcb4935 RDTSC-based cycle_t for macOS
Windows and macOS now share most of related code
Old implementation using mach_absolute_time() was more precise (at least in theory) but too costly
2017-01-31 15:57:47 +02:00
alexey.lysiuk 6225f60eb2 Added cheat flag for console variables
CVAR with this flag can be set in console or from command line when sv_cheats is enabled
There is no such restriction for changing its value from ACS, via SetCVar() and related functions
'cheat' modifier can be used in CVARINFO lump to create variable of this kind
2017-01-31 14:08:09 +01:00
Christoph Oelckers 94d5d6848e - moved all code that deletes some data from P_SetupLevel to P_FreeLevelData so that P_Shutdown can also call it.
This is particularly important for camera textures which otherwise would not be taken down before a restart.
2017-01-31 13:46:35 +01:00
Christoph Oelckers 3131c08640 - fixed: the restart CCMD must clear out all statically stored pointers to VM functions because they do not survive the shutdown that is needed before loading new data. 2017-01-31 13:41:23 +01:00
Magnus Norddahl 4fdacfe96e Fix crash in palette mode 2017-01-31 13:26:06 +01:00
Christoph Oelckers f0a325a904 - fixed: The restart CCMD needs to clear the global FraggleScript before taking down the class system.
This is a soft root and would never be deleted otherwise.
2017-01-31 13:22:05 +01:00
Christoph Oelckers a188a8839a - fixed a typo in Hexen's light definitions. 2017-01-31 10:09:44 +01:00
Rachael Alexanderson e715e53c1d Merge https://github.com/coelckers/gzdoom 2017-01-30 17:16:01 -05:00
Christoph Oelckers 0e5aee48aa - clamp MAPINFO provided fog density values to a valid range because negative values can trigger undefined shader behavior. 2017-01-30 22:23:36 +01:00
Magnus Norddahl eadeccd709 Fix typo 2017-01-30 20:23:50 +01:00
Magnus Norddahl 0c61b56655 Clean up SkyDrawerArgs interface 2017-01-30 20:21:18 +01:00
Christoph Oelckers 7c5e3fb677 - disabled angular interpolation again.
This can only be used if the entirety of the game code is aware and dealing with this properly. However, that isn't the case so the amount of glitches this causes far exceeds the number of desired interpolations.
2017-01-30 14:19:50 +01:00
Magnus Norddahl 98fa2976fa Clean up the SpanDrawerArgs interface a bit 2017-01-30 12:46:17 +01:00
Magnus Norddahl c574b0ad3f Remove R_InitColumnDrawers and only allow DrawerArgs classes to call drawers 2017-01-30 11:53:11 +01:00
Magnus Norddahl c486892c4a Make colfunc, wallfunc, spanfunc private and remove the rest 2017-01-30 11:43:15 +01:00
Magnus Norddahl 2f365e7d2b Rename ColumnDrawerArgs to SpriteDrawerArgs 2017-01-30 11:27:58 +01:00
Magnus Norddahl e17c8c1678 Split wall drawer selection from sprite 2017-01-30 11:25:25 +01:00
Magnus Norddahl 36a23d60b8 Make spanfunc private and local to SpanDrawerArgs 2017-01-30 05:26:57 +01:00
Magnus Norddahl 81a20213a7 Force colormap/light selection to go through function calls 2017-01-30 05:07:07 +01:00
Magnus Norddahl fd459b1f13 Remove redundant span drawer args 2017-01-30 04:35:28 +01:00
Christoph Oelckers ba629379ca - fixed: for levels with 0-length lines the allocation size of the lines array was too large because it didn't subtract those deleted lines. 2017-01-30 00:25:40 +01:00
Rachael Alexanderson 0af86efb17 Merge https://github.com/coelckers/gzdoom 2017-01-29 18:17:09 -05:00