Commit graph

623 commits

Author SHA1 Message Date
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
7bdef7fe9a - cleaned the texture manager's method interface from FTexture references. 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
c178313da5 - got rid of the last remaining FMaterial references in the high level renderer. 2020-04-19 10:57:47 +02:00
Christoph Oelckers
4cbd20e822 - transitioned sky and decal code away from FMaterial. 2020-04-19 10:57:47 +02:00
Christoph Oelckers
cca3f878f5 - removed FMaterial references from other high level renderer data like HWFlat and HWSprite. 2020-04-19 10:57:47 +02:00
Christoph Oelckers
1146cf9e08 - use FGameTexture instead of FMaterial for texture tracking in HWWall.
The FMaterial object is only needed when finally binding the texture to the render state.
2020-04-19 10:57:47 +02:00
Christoph Oelckers
0ce0099e29 - moved the sprite positioning info out of FMaterial back into FTexture.
This cleans out half of FMaterial and brings it closer to being a texture binding descriptor, which is all it really should be.
2020-04-19 10:57:47 +02:00
Christoph Oelckers
9099bc8420 - reworking some lower level texture code. 2020-04-19 10:57:46 +02:00
Christoph Oelckers
72835c5462 - transitioned the GLDEFS parser to FGameTexture. 2020-04-19 10:57:46 +02:00
Christoph Oelckers
54f4267597 - use FGameTexture in the model rendering code. 2020-04-19 10:57:46 +02:00
Christoph Oelckers
b9b6a354c7 - changed all texture access in the play code to use FGameTexture and redid Hexen's front sky layer by adding a new texture instead of hacking the existing one. 2020-04-19 10:57:46 +02:00
Christoph Oelckers
9e7094848c - transitioned the 2D drawer to FGameTexture. 2020-04-19 10:57:45 +02:00
Christoph Oelckers
d9928b51a8 - eliminated all cases of calling DrawTexture with an FTexture.
Everything uses FGameTexture now.
2020-04-19 10:57:45 +02:00
Christoph Oelckers
c7db5b932e - switched the entire status bar code to use FGameTexture.
- scale the automap parchment to clean 320x200 dimensions.
2020-04-19 10:57:45 +02:00
Christoph Oelckers
9593cb56ae - decoupled the software renderer entirely from FTexture - it will only look at FSoftwareTexture now, all access to the texture manager has been wrapped. 2020-04-19 10:57:45 +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
e92be97f33 - let FSkybox inherit from FImageTexture to simplify the redirection of the base image for the software renderer. 2020-04-13 14:23:57 +02:00
alexey.lysiuk
9c23c0ac59 - fixed compilation with GCC 5 2020-04-12 11:50:11 +03:00
Christoph Oelckers
8f8aed5ee3 - moved bitmap.cpp to 'common' and remove the duplicate IceRemap. 2020-04-11 20:23:26 +02:00
Christoph Oelckers
9dce6d88fa - use 'override' qualifier. 2020-04-11 20:21:00 +02:00
Christoph Oelckers
0cb2a1b8e9 - moved gl_load to common. 2020-04-11 20:20:59 +02:00
Christoph Oelckers
295fa1e73f - header cleanup in gl_interface.cpp 2020-04-11 20:20:59 +02:00
Christoph Oelckers
1e40b745d5 - added some things from Raze to allow using the same code in both projects. 2020-04-11 20:20:59 +02:00
Christoph Oelckers
5fe22c70b5 - moved the 2D drawer to 'common'. 2020-04-11 20:20:59 +02:00
Christoph Oelckers
def123823b - cleanup of 2D code. 2020-04-11 20:20:58 +02:00
Christoph Oelckers
ce4c2be3c7 - use the 2d drawer's size where appropriate. 2020-04-11 20:20:58 +02:00
Christoph Oelckers
b18faacab0 - 2D drawer cleanup. 2020-04-11 20:20:58 +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
fa99fc5346 - added global variants of the main 2D-draw functions taking an F2DDrawer as their first parameter.
This is a preparation for refactoring the calls to these so that they no longer require a 'screen' parameter.
2020-04-11 20:20:57 +02:00
Christoph Oelckers
3bf7686cfb - moved v_text.cpp to 'common'. 2020-04-11 20:20:56 +02:00
Christoph Oelckers
f8ac9a2662 - moved DObject and core parts of the VM to 'common'.
# Conflicts:
#	src/common/objects/dobject.h
2020-04-11 20:20:51 +02:00
Christoph Oelckers
1a0ace4f88 - palette related fixes. 2020-04-11 20:20:40 +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
65f15e1147 - moved the material class to 'common' as well. 2020-04-11 20:20:38 +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
f8e9cb8fbc - major dependency reduction of the texture system. 2020-04-11 20:20:37 +02:00
Christoph Oelckers
721b857e5e - minor FTexture cleanup. 2020-04-11 20:19:53 +02:00
Christoph Oelckers
ac610d87e5 - merged FPalette and PaletteContainer. 2020-04-11 20:19:53 +02:00
Christoph Oelckers
7243495b16 - moved special color maps to utilities.
The default tables are needed by the texture compositor which should be universal, so this needs to be, too.
2020-04-11 20:19:52 +02:00
Christoph Oelckers
c3a381ed92 - moved most of the console code to 'common'.
The main console.cpp file cannot be done yet, but the rest is ready to go.
2020-04-11 20:19:51 +02:00
Christoph Oelckers
603ad755ab - separated the button code from c_dispatch.
Two separate features justify two separate files.
2020-04-11 20:19:24 +02:00