Commit Graph

18705 Commits

Author SHA1 Message Date
Christoph Oelckers fde9172ea3 - moved shadowmap to 'common'. 2020-04-26 20:28:43 +02:00
Christoph Oelckers c30165db0d - removed the remaining dependencies of the shadowmap code on game data.
Everything is handled with callbacks now.
2020-04-26 19:58:17 +02:00
Christoph Oelckers ba0b42465d - changed shadowmap setup so that the AABB tree is owned and controlled by the map, not the renderer.
Needed to properly separate game logic from backend implementation, the shadowmap had both in the same object thanks to the old setup.
2020-04-26 18:54:43 +02:00
Christoph Oelckers 0a3e9a49f8 - changed the light parameter of ShadowTest to a position vector.
This was one of two places where game state leaked into the shadowmap implementation.
2020-04-26 14:53:26 +02:00
Christoph Oelckers 02832297ff - moved most of the OpenGL backend to 'common'.
A few things are yet to do, because they still need some changes.
2020-04-26 14:44:19 +02:00
Christoph Oelckers 763e9e0f35 - fixed texture scaling setup in a few places. 2020-04-26 13:48:51 +02:00
Christoph Oelckers 5611fe0f41 - cleaned up the dependencies in the model rendering code and separated it into game-independent and game-dependent parts. 2020-04-26 13:19:57 +02:00
Christoph Oelckers 69d724ae73 - moved lightbuffers and flatvertices to 'common'. 2020-04-26 12:41:13 +02:00
Christoph Oelckers c5dca89e66 - clean separation of vertex creation from map data and the buffer object.
This was yet another object with too broad scope, the vertex creation has been offloaded into out-of-class functions now.
2020-04-26 12:12:07 +02:00
Christoph Oelckers cf41a0b1fb - moved hw_cvars to 'common'. 2020-04-26 11:38:38 +02:00
Christoph Oelckers 61c94c25ed - more hw_cvars cleanup.
Copied several range checks from Raze, moved vid_gamma to hw_cvars.cpp and removed some old and no longer necessary gamma setup code.
2020-04-26 10:58:44 +02:00
Christoph Oelckers 1ad2f30e0d - moved sprite CVARs out of the global CVAR storage file.
They are local to hw_sprites.cpp now, as they aren't used anywhere else.
2020-04-26 10:47:57 +02:00
Christoph Oelckers 686aa9779d - moved VR code and IntRect to 'common' 2020-04-26 10:26:29 +02:00
Christoph Oelckers 4b56714199 - made hw_postprocess.cpp compatible.
The shadowmap is not universal, it depends on Doom's map format.
2020-04-26 00:03:08 +02:00
Christoph Oelckers 0c63f5c832 - moved FRenderState to 'common' and removed some game-dependent parts from it. 2020-04-25 23:29:38 +02:00
Christoph Oelckers 21f32834b2 - moved the postprocessing code to 'common', except for the game-dependent script exports. 2020-04-25 22:37:27 +02:00
Christoph Oelckers b6cc31eb0d - moved around a few more files. 2020-04-25 22:17:41 +02:00
Christoph Oelckers b9e3c9681b - moved a few files from 'rendering' to 'common'. 2020-04-25 21:52:21 +02:00
Christoph Oelckers 59360f2d77 - started cleanup of dependencies of the framebuffer class.
* made the portal state global, outside the framebuffer, because it is pure logic state without dependencies on the backend.
* took the setup functions out of FDynLightData - there is no need to have them as members and they age game dependent.
2020-04-25 21:08:07 +02:00
Christoph Oelckers 9872065fc6 - moved file to its proper place. 2020-04-25 18:38:17 +02:00
Christoph Oelckers 10bc37b37e - moved RenderView out of the framebuffer classes to complete the consolidation of the renderer's entry points. 2020-04-25 17:58:26 +02:00
Christoph Oelckers 9dceedd3b0 - cleanup 2020-04-25 14:15:15 +02:00
Christoph Oelckers 730d07fbf7 - reworked canvas texture updater to avoid passing game data to the render backends.
These are now handled one level above using a callback to perform the actual rendering.
2020-04-25 14:13:36 +02:00
Christoph Oelckers 44d39ef63e - consolidated the savegame picture code. 2020-04-25 13:18:57 +02:00
Christoph Oelckers 6177ed153d - consolidated the 3 RenderViewpoint variants and took the function out of the framebuffer class. 2020-04-25 10:51:45 +02:00
Christoph Oelckers c203df5edb - consolidated the 3 virtually identical instances of DrawScene and moved the function to HWDrawInfo.
The only backend dependent call in there, ambient occlusion, has been made a virtual of DFrameBuffer.
2020-04-24 21:47:18 +02:00
Christoph Oelckers 90585c4931 - added a RenderState virtual to the FrameBuffer class. 2020-04-24 16:15:18 +02:00
Christoph Oelckers 70d30feb4c - moved the render interface functions out of FGLRenderer into OpenGLFrameBuffer.
These need some consolidation among the backends, and the additional indirection in the OpenGL backend made it harder than necessary.
2020-04-24 15:52:31 +02:00
Magnus Norddahl ab16cbe298 Fix missing texture update 2020-04-24 13:08:22 +02:00
Christoph Oelckers 72533e2f8a - redirect ST_Sound to a callback because the sound code is game specific 2020-04-23 22:33:43 +02:00
Christoph Oelckers f8e23500c7 - moved Windows platform code as well. 2020-04-23 22:26:30 +02:00
Christoph Oelckers 0b544f2956 - moved the Posix platform files to 'common' after making sure that Raze can compiled with them as-is.
No content changes.
2020-04-23 21:48:50 +02:00
Christoph Oelckers 612bf20809 - moved game state connections of the startup screen out of the backend code. 2020-04-23 00:02:34 +02:00
Christoph Oelckers ea30707c41 - added missing include. 2020-04-22 23:48:20 +02:00
Christoph Oelckers d19ac5b260 - separated the game specific Steam code from the pure backend. 2020-04-22 22:56:15 +02:00
Christoph Oelckers 8473be2a0c - some final cleanup. 2020-04-22 22:35:28 +02:00
Christoph Oelckers 3961f708fe - moved refreshfreq variable to a common place. 2020-04-22 22:32:24 +02:00
Christoph Oelckers 6934aebbe6 - fixed typo in HAVE_SOFTPOLY. 2020-04-22 21:57:59 +02:00
Christoph Oelckers 7f83b190cc - a few more fixes. 2020-04-22 21:46:22 +02:00
Christoph Oelckers 4da2351671 - fixed compile errors in POSIX platform code. 2020-04-22 20:42:13 +02:00
Christoph Oelckers 12e69adec3 - system backend cleanup.
This is mainly for running CI on Linux and macOS. Windws is already working.
2020-04-22 19:57:14 +02:00
Christoph Oelckers a40578a0a4 - changed more license headers to BSD. 2020-04-21 22:11:59 +02:00
Christoph Oelckers f17617706d - moved the scale overrider to v_draw.h. 2020-04-21 21:23:04 +02:00
Christoph Oelckers ce95d7379f - swapped out the license in two files.
BSD is preferred over LGPL
2020-04-21 21:06:11 +02:00
Christoph Oelckers 5d49faf190 Merge branch 'master' into texture_rework 2020-04-19 21:15:28 +02:00
Christoph Oelckers f296660266 - set all texture IDs after finishing the initial texture manager initialization.
As it turned out, not all textures have a valid ID at that point so it needs to be redone.
2020-04-19 21:15:01 +02:00
Christoph Oelckers 4fb6b7c7d4 - block off the Substitute function by making it private to the 3 classes that really need it. 2020-04-19 21:08:24 +02:00
Christoph Oelckers bd3f4e7347 - relax pointer substitution restriction for morphed monsters. 2020-04-19 21:08:23 +02:00
Christoph Oelckers b7ea483323 - fixed checkForHacks placement. 2020-04-19 19:52:03 +02:00
Christoph Oelckers 8dbc727178 - fixed compile errors pointed out by CI 2020-04-19 19:05:50 +02:00