Commit Graph

30 Commits

Author SHA1 Message Date
ChrisF ca8736fc6a Adds one more image size (128x128) option for DXT1 block skipping in texture replacement 2026-03-06 14:07:03 -05:00
Henrik Rydgård 58dd4677e3 Fix issue with toggling texture saving via shortcut.
Fixes #20581
2025-07-08 13:51:09 +02:00
Henrik Rydgård ec19c47b89 Add special texture hashing mode solving the Tag Force problem.
Don't want to build some complicated rule-based thing until we have more
use cases, so this is quite specialized.

See #19714
2024-12-10 19:24:20 +01:00
Henrik Rydgård 61d2459e94 Minor code cleanup 2024-12-10 19:24:02 +01:00
Henrik Rydgård c9df030703 TextureReplacer: Improve ini file loading error reporting 2024-11-30 13:52:08 +01:00
Herman Semenov b57dab2812 [GPU] Make static and const methods if possible 2024-04-05 17:04:31 +03:00
Henrik Rydgård 768520dd0e Separate out the checks for save vs replace textures more, fixing some issues 2024-01-23 01:07:31 +01:00
Henrik Rydgård 126d70cf9d Improve handling of texture packs without .ini files (not recommended, but exists) 2023-12-25 13:25:28 +01:00
Henrik Rydgård 849000a958 Texture replacer: Break out two functions from LoadIniValues 2023-12-25 13:25:27 +01:00
Henrik Rydgård 877324c978 Add comment about swizzling to the texture replacer hash 2023-12-07 11:01:51 +01:00
Henrik Rydgård dc96374eb2 Merge pull request #17380 from hrydgard/replacement-find-files
Pre-scan the root of texture packs for hash-named files.
2023-05-02 21:40:05 +02:00
Henrik Rydgård bdd0eeb7c3 Avoid double texture cache load.
Texture packs are loaded from NotifyConfigChanged which is called
anyway.

Fixes #17381
2023-05-01 23:52:39 +02:00
Henrik Rydgård d10fae7274 Scan the root of loaded texture packs to find all the hash-named files. 2023-05-01 23:23:37 +02:00
Henrik Rydgård 4e41233bb7 Replacement: Save textures even if already replaced, if the png is missing.
Fixes #17182

Not exactly sure what behavior we really want, but I think this one is
OK, and at least more similar to the old one. Now we save
already-replaced textures if the named replacement texture is missing, and there
isn't already a hash-named one in new or the "root".
2023-03-27 15:43:18 +02:00
Henrik Rydgård 0580b09eeb Improve default replacer ini. Various cleanup 2023-03-19 00:00:59 +01:00
Henrik Rydgård 3302e6a76b Lookup filtering overrides at texture load time instead of at runtime. 2023-03-18 13:03:05 +01:00
Henrik Rydgård df41a5cebd Improve default ini, logging fixes 2023-03-17 13:59:57 +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 c58ceb5160 Mini refactor: Separate input and output arguments for LookupHashRange 2023-03-16 09:55:49 +01:00
Henrik Rydgård a4b5641f11 Add compressed texture format support checks 2023-03-12 16:18:46 +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 9e8e2e41fa Move most of Populate to ReplacedTexture, although not the cpp 2023-03-10 17:43:12 +01:00
Henrik Rydgård 96111537e2 Move PopulateLevel to the texture 2023-03-10 17:26:41 +01:00
Henrik Rydgård 207e2259e7 Cleanup texture saving a bit 2023-03-10 15:39:45 +01:00
Henrik Rydgård f459a8f71a Fix ini-less texture replacement 2023-03-10 14:58:44 +01:00
Henrik Rydgård 53791b1816 Restore functionality of the allowVideo flag, while preserving the early-out. 2023-03-10 14:18:42 +01:00
Henrik Rydgård 06b83115a5 Replacer: Avoid tracking video textures 2023-03-10 12:20:55 +01:00
Henrik Rydgård 654f4bff40 Split out ReplacedTexture into its own file. 2023-03-09 21:19:20 +01:00
Henrik Rydgård cb10862510 Move texture replacer to GPU/Common.
Add new files ReplacedTexture.cpp/h too.
2023-03-09 21:11:53 +01:00