Commit graph

18746 commits

Author SHA1 Message Date
Christoph Oelckers
652712d970 - moved Vulkan and Softpoly backends to 'common'. 2020-04-29 22:17:35 +02:00
Christoph Oelckers
bc8335de3b - Vulkan backend dependency cleanup. 2020-04-29 18:52:08 +02:00
Christoph Oelckers
68630d6782 - sanitized dependencies of the softpoly render backend.
This included half the game state and lots of unneeded parts of the software renderer.
The two modules that are shared between softpoly and the classic software renderer have been moved to a neutral place.
2020-04-29 18:48:15 +02:00
Christoph Oelckers
8cce6207c7 - sanitized includes in a few files. 2020-04-29 18:15:56 +02:00
Christoph Oelckers
e3fdf2194e - moved a few leftover utility classes to 'common'. 2020-04-29 17:51:04 +02:00
Christoph Oelckers
808a7d28cf - moved benchmark fps output to the custom part of it because it depends on game data. 2020-04-29 17:44:43 +02:00
Christoph Oelckers
5d10d6c448 - directory structure cleanup.
The hwrenderer folder did not contain sufficient files anymore for such extensive subgrouping.
2020-04-29 17:36:58 +02:00
Christoph Oelckers
6cf91d3941 - moved the remaining core parts of the GL renderer to 'common'. 2020-04-29 17:19:17 +02:00
Christoph Oelckers
9be63a5093 Merge branch 'master' into texture_rework 2020-04-29 08:04:15 +02:00
Christoph Oelckers
c996600de7 - gl_renderer.cpp include cleanup 2020-04-29 08:01:29 +02:00
Christoph Oelckers
2adf1c6a6b - fixed ZScript compiler crash with dereferencing null pointers 2020-04-29 07:59:06 +02:00
Christoph Oelckers
64e301130b - moved low level sky rendering to 'common' 2020-04-29 00:21:30 +02:00
Christoph Oelckers
4b8fb7d48b - moved around some sky rendering code so that the game independent parts are grouped together. 2020-04-29 00:14:42 +02:00
Christoph Oelckers
b1dd1eff50 - moved video files to 'common'. 2020-04-28 23:08:27 +02:00
Christoph Oelckers
ddef3f7b98 - made video base code game independent 2020-04-28 22:54:53 +02:00
Christoph Oelckers
2196b4fb04 - moved the frame rate drawer out of DFrameBuffer.
Too much of this is not shareable and all it consists of are drawing operations on the 2D drawer.
2020-04-27 23:53:26 +02:00
Christoph Oelckers
5f3e4a5d0e - did a bit of cleanup on DFrameBuffer, most notably taking GetCaps out of it.
With the old softpoly renderer and OpenGL 2.x being gone there is no more need for such complex handling, it is now a single function in d_main.cpp.
2020-04-27 22:24:41 +02:00
Christoph Oelckers
3ee1aa76c3 - moved model code to 'common'. 2020-04-27 20:50:46 +02:00
PaulyB
66bac45615 Properly namespaced UDMF flag 2020-04-27 20:30:37 +02:00
PaulyB
8d1451689b Exposed MTF_NOCOUNT to UDMF 2020-04-27 20:30:37 +02:00
Skepticist
3377486b8e Added a number of maps that can make use of the MTF_NOCOUNT flag
All but the Hell Revealed case are thanks to Skepticist from Doomworld
2020-04-27 20:30:37 +02:00
PaulyB
573b2958c6 Added MTF_NOCOUNT to spawn flags 2020-04-27 20:30:37 +02:00
Christoph Oelckers
d434ce32c8 - split voxels.cpp into a backend and a game dependent part. 2020-04-27 19:46:27 +02:00
Christoph Oelckers
b79230da9b - added missing include to macOS code. 2020-04-27 19:46:13 +02:00
Christoph Oelckers
d6dca40cb7 - separated models.cpp as well into engine and game parts. 2020-04-27 01:29:25 +02:00
Christoph Oelckers
46d263b5a8 - header separation of model code. 2020-04-27 01:16:17 +02:00
Christoph Oelckers
8ea0a0c5f8 - took the game dependent model render functions out of the FModelRenderer class.
This makes FModelRenderer game independent - the 3 functions in question may just be global functions instead.
2020-04-27 00:25:53 +02:00
Christoph Oelckers
6afa73bdcd - moved m_bbox to 'common' 2020-04-27 00:07:17 +02:00
Christoph Oelckers
67a50d084a - started cleanup of model code.
* refactored FBoundingBox so that the game dependent members are global functions now.
* changed some methods of the model renderer to take a render style parameter instead of a full actor.
2020-04-27 00:03:23 +02:00
Christoph Oelckers
b58e3172fc - need hw_viewpointuniforms.h as well in 'common', after decoupling it from game data. 2020-04-26 23:02:16 +02:00
Christoph Oelckers
cb1e8a177f - moved gl_shader.cpp to 'common'. 2020-04-26 22:24:27 +02:00
Christoph Oelckers
1346787e29 - moved 2 more modules to 'common'. 2020-04-26 21:38:34 +02:00
Christoph Oelckers
f8dcb09ff0 - moved postprocessing shaders to their own folder. 2020-04-26 21:22:57 +02:00
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