Henrik Rydgård
e34a5a68de
Remove some locking
2023-03-16 12:04:14 +01:00
Henrik Rydgård
725d4195df
Small cleanup of purging code
2023-03-16 11:53:39 +01:00
Henrik Rydgård
35f46ec161
Rework the replacement cache. No more duplicate ReplacedTexture objects.
2023-03-16 11:46:05 +01:00
Henrik Rydgård
cf6cce0744
Remove scaleFactor from struct ReplacedTextureDecodeInfo, instead pass in both unscaled and scaled dimensions
2023-03-16 10:21:57 +01:00
Henrik Rydgård
f2a5a5abe7
Avoid input/output arguments in the texture scaler too
2023-03-16 10:14:41 +01:00
Henrik Rydgård
c58ceb5160
Mini refactor: Separate input and output arguments for LookupHashRange
2023-03-16 09:55:49 +01:00
Henrik Rydgård
c45376ddc7
Typo fix, thanks iota97
2023-03-15 20:31:27 +01:00
Henrik Rydgård
0fb7ff488e
Add a convenient define to experiment with parallel copy
2023-03-15 14:48:32 +01:00
Henrik Rydgård
87a16b0386
Fix the stats
2023-03-15 10:19:00 +01:00
Henrik Rydgård
089b63c22f
Address feedback, except the stats.
2023-03-15 10:09:39 +01:00
Henrik Rydgård
2ac74e3d37
Remove the PushBufferType enum
2023-03-15 09:59:00 +01:00
Henrik Rydgård
181ddf8266
Change the API of the old VulkanPushBuffer to match VulkanPushPool.
2023-03-15 09:56:32 +01:00
Henrik Rydgård
6d3a25e81f
Tweak some sizes.
2023-03-15 01:25:03 +01:00
Henrik Rydgård
c8b25e50b0
Better debug vis for push pools
2023-03-15 01:25:03 +01:00
Henrik Rydgård
9fcd6d6612
Use thin3d's push pool in the draw engine too.
2023-03-15 01:25:03 +01:00
Henrik Rydgård
700b1cd6a7
More conversion to pushPool
2023-03-15 01:25:03 +01:00
Henrik Rydgård
3d372400e1
Start converting over to it
2023-03-15 01:25:03 +01:00
Henrik Rydgård
56d792f422
Sketch the new VulkanPushPool
2023-03-15 01:25:00 +01:00
Henrik Rydgård
c31b4be690
Crashfix in ReplacedTexture. Thought I fixed this one before, hm.
2023-03-15 01:23:32 +01:00
Henrik Rydgård
effbe6376a
Remove an unused VulkanPushBuffer.
...
Saves about 0.75MB of VRAM, but mainly just to clean things up.
I think I meant to use this one instead of grabbing the one from
DrawEngine in the TextureCache.
2023-03-14 23:39:47 +01:00
Henrik Rydgård
13e63c109f
If the target compression format is not supported, just transcode to RGBA8888.
2023-03-14 18:52:42 +01:00
Henrik Rydgård
b45f1db005
Correct some error reporting
2023-03-14 18:34:22 +01:00
Henrik Rydgård
d8c3269cc6
Fix zipped texture packs (it didn't load the ini from the zip, the rest worked).
...
Plus a few other things.
2023-03-14 17:53:01 +01:00
Henrik Rydgård
21a0a91818
Remove a misplaced ForgetLastTexture.
...
Fixes #17115
2023-03-14 15:49:35 +01:00
Henrik Rydgård
4bbc4c258a
Remove sketch of Basis container format support (we go with KTX2 instead as the container)
2023-03-14 14:09:47 +01:00
Henrik Rydgård
6d520d6d6b
Vulkan: Enable mobile compressed formats too (oops)
2023-03-14 11:55:21 +01:00
Henrik Rydgård
91900eda7e
Don't try to generate mips for compressed replacement images
2023-03-14 11:55:21 +01:00
Henrik Rydgård
93bf82a906
Add KTX2 basis/UASTC texture transcoding support
2023-03-14 11:55:21 +01:00
Henrik Rydgård
0fd58d80d5
Detect BASIS files. Doesn't do much with them yet.
2023-03-14 11:55:21 +01:00
Henrik Rydgård
2b1e87792f
Vulkan: During texture upload, batch the buffer->image copies to do all the mips at once.
2023-03-14 10:11:19 +01:00
Henrik Rydgård
32e8ab3b5d
Import all of basisu_transcoder, set up build
2023-03-13 12:37:43 +01:00
Henrik Rydgård
7df51c3d06
Merge pull request #17103 from hrydgard/replacement-dds-mipmaps
...
Texture replacement: Load DDS mipmaps
2023-03-13 09:58:32 +01:00
Unknown W. Brackets
2a20c5757f
Build: Fix build on Visual Studio 2019.
2023-03-12 16:46:19 -07:00
Henrik Rydgård
c32e3f89f1
D3D11 mipmap stride fix
2023-03-12 23:31:51 +01:00
Henrik Rydgård
1860a73d58
Address feedback from previous PR
2023-03-12 23:15:09 +01:00
Henrik Rydgård
f88633b696
Add support for loading multiple mipmaps from DDS files.
2023-03-12 23:05:45 +01:00
Henrik Rydgård
b1b8fc65cf
Error handling fixes (close the file).
2023-03-12 23:05:45 +01:00
Henrik Rydgård
b595a1dc4d
Prepare LoadLevelData for loading multiple mips.
2023-03-12 16:18:49 +01:00
Henrik Rydgård
aaa83897fe
Some code moving, tweaks
2023-03-12 16:18:49 +01:00
Henrik Rydgård
a4b5641f11
Add compressed texture format support checks
2023-03-12 16:18:46 +01:00
Henrik Rydgård
b44e879d21
Support DXT1/3/5 (BC1,2,3) in D3D9
2023-03-12 11:37:17 +01:00
Henrik Rydgård
f2673c8f7b
Change BGRA to be a texture-specific flag. Fixes R/B swap in DDS textures in D3D11.
2023-03-12 10:19:12 +01:00
Henrik Rydgård
b687f1bba8
Implement basic block compression support for OpenGL (without feature checks so far)
2023-03-12 00:14:06 +01:00
Henrik Rydgård
7e4dc23bcc
Fix BC textures in D3D11 - except that they're red/blue swapped. Ugh.
2023-03-11 23:55:43 +01:00
Henrik Rydgård
d95cd73c2c
Address a round of feedback
2023-03-11 21:46:01 +01:00
Henrik Rydgård
996b685294
Fix BC7 textures
2023-03-11 12:34:08 +01:00
Henrik Rydgård
6a84d96a3c
Add actual support for DDS textures to the replacer. Vulkan only.
2023-03-11 11:34:28 +01:00
Henrik Rydgård
f936a6e9ce
Structs and enums and build files
2023-03-11 11:19:33 +01:00
Henrik Rydgård
8e3428438e
Replacement: Fix mip level loading. Fix bug if LoadIni gets rerun for some reason.
2023-03-10 23:58:15 +01:00
Henrik Rydgård
3dc2463b55
Simplify, avoid opening file twice (still rewinding!)
2023-03-10 23:36:00 +01:00