Commit graph

42 commits

Author SHA1 Message Date
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
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
4afe2d4218 - moved OwnedStates and NumOwnedStates out of PClassActor. 2017-04-11 22:44:35 +02:00
Magnus Norddahl
11e5759913 - detached the poly renderer from the software renderer 2017-03-20 08:28:16 +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
Christoph Oelckers
2b2c986bd0 - cleanup of GL renderer interface and improper header use in software renderer. 2017-03-16 21:34:03 +01:00
Christoph Oelckers
91da8aecdb - fixed fog init for SW Truecolor. 2017-03-15 23:38:12 +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
439e4f9f94 Merge remote-tracking branch 'remotes/origin/3.0_work' 2017-03-13 00:02:16 +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
00f6ed45a2 Make LightVisibility thread local 2017-03-12 20:40:00 +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
5fdbbc4f9e Remove usage of r_viewpoint and r_viewwindow globals from software renderer and poly renderer 2017-03-12 18:54:39 +01: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
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
Magnus Norddahl
56045c1293 Remove r_drawers.h and move softpoly drawer related stuff out of the swrenderer 2017-02-23 09:02:13 +01:00
Magnus Norddahl
5a85fabfa6 Add true color support to voxel renderer 2017-02-12 01:27:26 +01:00
Magnus Norddahl
5bae06a3c6 Make RenderScene the work dispatching class 2017-02-04 14:00:21 +01:00
Magnus Norddahl
627a388d57 Move renderer singletons into a RenderThread class 2017-02-04 00:25:37 +01:00
Magnus Norddahl
e90b73539e Move viewport drawing to its own folder 2017-02-02 15:10:06 +01:00
Magnus Norddahl
93166fa150 Remove r_swtruecolor variable as it is redundant 2017-02-01 21:42:08 +01:00
Magnus Norddahl
e78e76a593 Move r_viewport variables into a class 2017-02-01 16:02:21 +01:00
Magnus Norddahl
ed05a2edd3 Create CameraLight class 2017-01-26 10:22:54 +01:00
Magnus Norddahl
ba6094be2e Detach player sprites from VisibleSprite 2017-01-24 04:15:54 +01:00
Magnus Norddahl
42535b17f1 Rename FRenderer::ClearBuffer to SetClearColor 2017-01-15 03:21:35 +01:00
Magnus Norddahl
f9175561bb Change RenderTarget global to be an internal swrenderer variable 2017-01-15 03:19:03 +01:00
Magnus Norddahl
4c12ba740f Remove SetWindow from FRenderer interface 2017-01-15 02:46:43 +01:00
Magnus Norddahl
1e7015643d Remove ErrorCleanup from FRenderer interface 2017-01-15 02:04:49 +01:00
Magnus Norddahl
3093aaadc9 Remove SetupFrame and CopyStackedViewParameters from FRenderer interface 2017-01-15 01:54:25 +01:00
Magnus Norddahl
1b043bb46c Minor cleanup in r_swrenderer 2017-01-15 01:36:57 +01:00
Magnus Norddahl
5ea28897af Move r_scene into a class 2017-01-14 02:25:02 +01:00
Magnus Norddahl
80e1844d6c Split r_main into r_viewport, r_scene and r_light 2017-01-12 16:21:46 +01:00
Magnus Norddahl
3f8e5d26b8 Rename RenderBSP to RenderOpaquePass and RenderTranslucent to RenderTranslucentPass 2017-01-11 20:42:39 +01:00
Magnus Norddahl
48b4915f5b Convert r_playersprite to a class 2017-01-11 18:35:20 +01:00
Magnus Norddahl
e806b9424c Move r_portal into a class 2017-01-05 04:55:26 +01: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
Magnus Norddahl
aa11534033 Remove unused (and broken in swrenderer) back boolean from FakeFlat interface 2017-01-03 18:55:12 +01:00
Magnus Norddahl
ad15d56a81 Move files into additional folders 2016-12-31 12:45:07 +01:00
Magnus Norddahl
98026c5711 Move player sprite handling to r_playersprite 2016-12-30 07:51:39 +01:00
Magnus Norddahl
db53d9c706 Remove r_local header 2016-12-28 01:56:37 +01:00
Magnus Norddahl
2659090e1c Move renders into folders 2016-12-27 06:31:55 +01:00
Renamed from src/r_swrenderer.cpp (Browse further)