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
1346787e29
- moved 2 more modules to 'common'.
2020-04-26 21:38:34 +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
69d724ae73
- moved lightbuffers and flatvertices to 'common'.
2020-04-26 12:41:13 +02:00
Christoph Oelckers
cf41a0b1fb
- moved hw_cvars to 'common'.
2020-04-26 11:38:38 +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
0c63f5c832
- moved FRenderState to 'common' and removed some game-dependent parts from it.
2020-04-25 23:29:38 +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
Magnus Norddahl
ab16cbe298
Fix missing texture update
2020-04-24 13:08:22 +02:00
Christoph Oelckers
b2281c38e1
- fixed texture layer management so that each material layer can decide for itself if it wants to allow upscaling.
...
- rewrote the hardware texture precacher to use the new texture management to properly track the data to delete.
2020-04-19 10:57:56 +02:00
Christoph Oelckers
5a2a72fc95
- store the Vulkan descriptor sets in the material - where they belong!
...
Having them in the base texture object was a major maintenance issue.
2020-04-19 10:57:56 +02:00
Christoph Oelckers
8843761bf8
- moved most of the texture size maintenance to the FGameTexture class.
2020-04-19 10:57:53 +02:00
Christoph Oelckers
8505c7ee7d
- major refactor of texture upscaling control.
...
All decisions were done deep inside the texture creation code, leaving zero options to the higher level code for controlling the feature.
Changed this so that the option to upscale must be passed as a parameter to FRenderState::SetMaterial and extended all needed variables to manage the added texture variants.
Still not solved: Material layers need explicit control, not only for scaling but also for filtering.
2020-04-19 10:57:51 +02:00
Christoph Oelckers
662fa6e667
- removed the conversion helper code and fixed a few places where FMaterial was only used to access the hardware textures in the FTexture class.
2020-04-19 10:57:49 +02:00
Christoph Oelckers
83817080bb
- more texture cleanup.
...
It is now in a state where FTexture really needs to be separated from FGameTexture.
2020-04-19 10:57:48 +02:00
Christoph Oelckers
31035a6cea
- cleaned out the coordinate code in FMaterial.
2020-04-19 10:57:48 +02:00
Christoph Oelckers
aeba304715
- texture code refactoring to consolidate multiple textures referencing the same backing image.
2020-04-19 10:57:44 +02:00
Christoph Oelckers
3a47c5c7f7
- fixed Vulkan's uTextureMode setup. Also only mask out the flags we really do not want to avoid surprises in the future.
2020-04-19 10:57:44 +02:00
Magnus Norddahl
9ef6d8fd53
Always null textures for all slots because the vulkan target is an OpenGL emulator ;)
2020-04-19 10:57:44 +02:00
Christoph Oelckers
7c46dace03
- this still doesn't work on Vulkan. :(
2020-04-19 10:57:44 +02:00
Christoph Oelckers
8381092cce
- major shader rework
...
* handle brightmaps in the main shader instead of keeping separate instances around.
* added detail and glow layers from Raze.
* fixed material setup which could not guarantee that everything was initialized correctly.
* for warped textures, warp all layers. With this brightmaps finally work on warped textures.
Note: Vulkan reports a "device lost" error with this which still needs to be investigated.
2020-04-19 10:57:43 +02:00
Christoph Oelckers
5fe22c70b5
- moved the 2D drawer to 'common'.
2020-04-11 20:20:59 +02:00
Christoph Oelckers
ac1f4b8f11
- initialize native functions before the first query.
2020-04-11 20:20:57 +02:00
Christoph Oelckers
932f5c64c2
- moved stats.cpp to common.
2020-04-11 20:20:57 +02:00
Christoph Oelckers
d586ffa79c
- const-ified the palette pointers in the texture creation code.
...
- fixed includes.
2020-04-11 20:20:39 +02:00
Christoph Oelckers
580e463498
- moved texture code to 'common'.
2020-04-11 20:20:38 +02:00
Christoph Oelckers
2ff93b4635
- added the missing blend modes to FRenderStyle.
2020-04-11 20:20:37 +02:00
Christoph Oelckers
3e285d2261
- moved renderstyle and colortables code to 'common'.
2020-04-11 20:20:37 +02:00
Christoph Oelckers
721b857e5e
- minor FTexture cleanup.
2020-04-11 20:19:53 +02:00
Christoph Oelckers
05d8856fe0
- moved file system implementation to 'common'.
2020-04-11 14:00:20 +02:00
Christoph Oelckers
80c6d5b276
- renamed more stuff and also moved the Strife teaser voice handling out of the file system.
2020-04-11 14:00:19 +02:00
Christoph Oelckers
c1bb7de23a
- more file system refactoring.
...
* moved the sprite renaming out of the file system entirely into a caller-provided callback.
* renamed several functions to closer match the terms of a file system.
* moved the VM interface out of the implementation.
2020-04-11 14:00:19 +02:00
Christoph Oelckers
6bccde3b51
- renamed the file system related classes to actually use the term "FileSystem".
2020-04-11 14:00:18 +02:00
Christoph Oelckers
fb1a7679ec
- moved most basic utility code without any dependencies on the rest of the engine to 'common' directory.
...
Again the objective is easier sharing with Raze.
2020-04-11 14:00:13 +02:00
Christoph Oelckers
6996d54a23
- moved more code to 'common'.
...
This is all low level utilities with no dependencies on game logic. Having this in a separate directory makes sharing with Raze a lot easier.
2020-04-11 14:00:12 +02:00
Christoph Oelckers
cf757ba834
- made the translation container a class.
...
This also splits off some Doom-specific implementation details into higher level headers.
2020-04-11 14:00:11 +02:00
Christoph Oelckers
5490ffcd77
- removed the obsolete Doomsday 1.8-style texture pack support.
...
This poorly integrated into the texture system and wasn't compatible with modern texture packs anymore so its usefulness was questionable.
2020-04-04 12:55:24 +02:00
Rachael Alexanderson
7c9d8a0b99
- fix nullptr crash in player.camera reference when player.camera is nullptr
2020-03-26 17:53:32 +01:00
Christoph Oelckers
828cba13a1
- changed translation management so that the fonts also use translation IDs.
2020-03-16 17:23:30 +01:00
drfrag
68f338b134
- Fixed compilation with MinGW and did some cleanup.
2020-02-16 09:39:17 +02:00
Magnus Norddahl
08e86b5bcc
- fix vulkan crash when there are no textures in player's view
2020-02-15 10:42:46 +01:00
Magnus Norddahl
dd2d9f4182
- Fix vk_hdr looking for the wrong colorspace
2020-02-15 09:46:24 +01:00
Magnus Norddahl
fca3da8af4
Update and clarify the licenses for the postprocess, vulkan and softpoly parts
2020-01-03 05:52:01 +01:00