Commit Graph

18604 Commits

Author SHA1 Message Date
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 5d8adb90c4 - made 'supportRemap0' an image property so that later the handling for this can be taken out of the actual texture class by just providing a replacement texture for the skies. 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 73b4fbe861 - FGameTexture conversion in am_map.cpp 2020-04-19 10:57:44 +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 dd5de4ce51 - removed test code that forced all textures being warped. 2020-04-19 10:57:43 +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
alexey.lysiuk b5c88957f0 - fixed detection of standalone IWADs
https://forum.zdoom.org/viewtopic.php?t=68218
2020-04-17 12:29:46 +03:00
Rachael Alexanderson c1421b70cf Revert "- fixed: player spawn code should now always use defaults for the currently selected player class, not current flags"
This reverts commit 8dda7c02c9.
2020-04-15 07:02:58 -04:00
Rachael Alexanderson 8dda7c02c9 - fixed: player spawn code should now always use defaults for the currently selected player class, not current flags 2020-04-15 06:58:27 -04:00
Christoph Oelckers 3e02121822 - fixed setup of content ID in CreateTexBuffer. 2020-04-13 14:55:16 +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
Christoph Oelckers 9a3b663e04 - fixed text size calculations in the status bar.
To avoid errors, all spacing calculations have been added to FFont::StringWidth which already performs proper escape filtering.
2020-04-13 12:11:14 +02:00
Christoph Oelckers 17df95d69e - fixed startup-time setup of serverinfo CVARs.
Looks I completely forgot this part when refactoring the interface - it must account for the callbacks not doing anything due to the network code not being operational yet.
2020-04-13 11:53:08 +02:00
Christoph Oelckers 6722b64ac0 - fixed: Setting 'noallies' on the level cleared the player's friendly flag.
The check was for mobj->player, which at this point wasn't set yet so the check failed.
2020-04-13 10:54:40 +02:00
Christoph Oelckers 4b5c74f856 - reactivated saving of sounds by name, not by index. 2020-04-13 10:32:46 +02:00
alexey.lysiuk d29c6a55eb - fix autoseg registration by moving start/end files back to src directory
Link order was wrong when building via Xcode project because CMake generator sorts files by paths
This made most of classes missing from corresponding segments, and the game crashes right after launch
2020-04-13 10:14:07 +03:00
Major Cooke a56177f178 Begin TICRATE conversion.
- Moved TICRATE from Thinker to Object in ZScript so status bars have access to it.
2020-04-12 22:43:33 +02:00
alexey.lysiuk 10628e60cb - extend continuous integration workflow 2020-04-12 11:51:23 +03:00
alexey.lysiuk 9c23c0ac59 - fixed compilation with GCC 5 2020-04-12 11:50:11 +03:00
alexey.lysiuk 5a56f209d3 - fixed conditions with SND_PlayerReserve flag
src/sound/s_advsound.cpp:953:9: warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses]
src/sound/s_advsound.cpp:1264:20: warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses]
src/sound/s_advsound.cpp:1426:6: warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses]
2020-04-12 11:49:47 +03:00
alexey.lysiuk 72c8df530f - fixed compilation of optimized GCC and Clang targets 2020-04-12 11:03:25 +03:00
alexey.lysiuk f0ca7fb213 - fixed compilation of Linux targets 2020-04-12 11:03:01 +03:00
alexey.lysiuk 91914b728b - fixed compilation of Cocoa backend 2020-04-12 11:02:28 +03:00
alexey.lysiuk 2b1ef5f4f2 - common fixes for compilation with GCC and Clang 2020-04-12 11:02:05 +03:00
alexey.lysiuk f5a98ed7fa - fixed CMake configuration
CMake Error at src/CMakeLists.txt:1188 (add_executable): Cannot find source file: gamedata/textures/bitmap.cpp
2020-04-12 10:59:09 +03:00
Christoph Oelckers ab8d2ef62d - fixed serializer.
All includes of RapidJSON *must*(!!!) have the same #defines, otherwise incompatible code will be generated without any hint of a warning.
2020-04-11 22:53:26 +02:00
Christoph Oelckers 07e303f99b - fixed compilation. 2020-04-11 22:23:09 +02: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