123 Commits

Author SHA1 Message Date
Unknown W. Brackets
15645ca480 Replacement: Avoid issues with c++14 data(). 2022-10-31 20:17:18 -07:00
Unknown W. Brackets
a1a484163f Replacement: Don't double count memory usage. 2022-10-30 10:57:41 -07:00
Unknown W. Brackets
c89823ce92 Replacement: Allow use of textures.zip for Android.
Will work on all platforms, but intended for situations like Android where
random access to files on storage is horribly slow.
2022-10-30 10:57:41 -07:00
Unknown W. Brackets
b1a087345a Replacement: Lock around shared data access. 2022-10-30 10:39:50 -07:00
Unknown W. Brackets
0048dc2bb8 Replacement: Cache file data across cache keys. 2022-10-30 09:02:08 -07:00
Unknown W. Brackets
b78c310b47 Replacement: Log only missing explicit filenames. 2022-10-30 09:02:08 -07:00
Unknown W. Brackets
0db48c956c Replacement: Decimate aggressively with high usage. 2022-10-30 08:15:37 -07:00
Unknown W. Brackets
11d0be1fd2 Replacement: Reduce IO checks on startup. 2022-10-30 07:56:35 -07:00
Unknown W. Brackets
e504f0db8f Replacement: Avoid needless exists check per tex. 2022-10-30 07:55:05 -07:00
Unknown W. Brackets
cbeb6c1477 Replacement: Fix reload of replaced textures.
Were showing as ready before they were ready after decimate, causing
flickering.
2022-09-01 19:17:04 -07:00
Henrik Rydgård
f2e0f7611c Display paths with backslashes on Windows. Show texture path when saving. 2022-09-01 15:04:59 +02:00
Unknown W. Brackets
e473eb9f5e Replacement: Read files only within time budget.
When delayed texture load is enabled.  Intended to reduce IO delays on
Android.
2022-08-21 22:07:05 -07:00
Henrik Rydgård
d0d53091a8 Change from maxLevel to levelsToLoad, for better readability. Cleanup. 2022-07-30 10:45:02 +02:00
Henrik Rydgård
c41b780c8c Remove the ReplacedTextureFormat enum 2022-07-30 08:52:24 +02:00
Henrik Rydgård
ef4a6cf873 Remove support for 16-bit replacement texture formats 2022-07-30 08:52:24 +02:00
Unknown W. Brackets
3e0b324e58 Replacement: Cleanup leak on replacement reload.
If it was previously lazy-loaded and purged, we might leak a waitable.
2022-07-27 20:29:24 -07:00
Unknown W. Brackets
acc248164f Replacement: Clear cache on disable.
When lazy loading, let's clear cached replacement data on disable.
This is purges memory immediately, and also allows force-reloading
textures by toggling the setting.
2022-07-27 20:27:56 -07:00
Henrik Rydgård
18f828d74b Some zero init, add a null check in TextureReplacer. See #15730 2022-07-26 23:48:39 +02:00
Henrik Rydgård
a831cab14c
Remove unmotivated check preventing texture ini creation on mobile. (#15647)
* Remove unmotivated check preventing  texture ini creation on mobile.

Fixes #15644

* Show a "toast" message on platforms that don't support opening a text editor, when you try to create/open a texture ini file.

* Avoid the need to ifdef around calls to SystemToast

* UWP buildfix (and some warning fixes).

And possibly libretro fix

* Rename for a bit more consistency
2022-07-10 22:34:44 +02:00
Henrik Rydgård
73452b4743 Minor cleanups 2022-04-23 22:52:28 +02:00
Unknown W. Brackets
34d0acac4e Vulkan: Save textures using a memory copy. 2022-04-17 20:55:39 -07:00
Unknown W. Brackets
cc119c923c Replacement: Avoid recheck saving within 5s.
This does mean an actively saved texture won't recheck, but it's close to
the old behavior where you could delete a new texture and it'd soon be
resaved.  This was convenient sometimes.
2022-04-17 20:52:26 -07:00
Unknown W. Brackets
e0e3223c19 Replacement: Move IO checks to saving thread.
This will spin up more threads that might not actually save, but it will
remember this in savedCache.
2022-04-17 20:25:41 -07:00
Henrik Rydgård
b1af940d8e Save textures on background tasks when texture dumping is enabled.
Should help #15478, at least a bit.
2022-04-18 00:26:35 +02:00
Henrik Rydgård
c4dfbf4f1a Delete a lot of specialized alpha checking code.
This was now only used to check alpha in CLUTs, and the generic functions will not actually be any slower.
2022-04-15 12:34:50 +02:00
Unknown W. Brackets
3c3e397215 Replacement: Avoid potential destructor crash. 2022-04-09 09:41:49 -07:00
Henrik Rydgård
5b20ace502 OK, this does crash 2022-04-08 12:04:34 +02:00
Unknown W. Brackets
8b5173350f ThreadManager: Make TaskType a property of a Task. 2021-12-05 21:01:49 -08:00
Unknown W. Brackets
76186d1919 Replacement: Allow starting a texture at budget. 2021-10-23 22:42:57 -07:00
Unknown W. Brackets
abc80f1015 Replacement: Correct budget on later frames. 2021-10-23 22:00:51 -07:00
Unknown W. Brackets
fa0e19471c Replacement: Add ini setting to disable pop-in. 2021-10-23 20:56:19 -07:00
Unknown W. Brackets
4c1b5564d2 Replacement: Tweak some thread safety. 2021-10-23 19:58:23 -07:00
Unknown W. Brackets
c0054dc6cf Replacement: Ensurely orderly stop on reset.
If the texture is being loaded and we stop or reset, make sure it stops to
avoid any crash or hang.
2021-10-23 08:06:55 -07:00
Unknown W. Brackets
09f0578a64 Replacement: Use a thread to load tex replacements. 2021-10-21 17:05:39 -07:00
Unknown W. Brackets
83b7b33cfd Replacement: Centralize lookup logic.
And make sure we don't change our minds about using a replacement during a
draw.
2021-10-21 17:05:38 -07:00
Unknown W. Brackets
045d902525 Replacement: Delay load texture data. 2021-10-21 17:05:38 -07:00
Unknown W. Brackets
36fc2c2628 Replacement: Purge old cached decoded textures.
Not actually decoding into the cache, just setup.
2021-10-21 17:05:38 -07:00
Unknown W. Brackets
2356280a9c Replacement: Add structure for delayed loading. 2021-10-21 17:05:38 -07:00
Henrik Rydgård
ddc0f0829b Replaced textures: Don't leak handles on failure, check allocation success 2021-10-08 19:09:43 +02:00
Unknown W. Brackets
ff22dbc16c Replacement: Fix a mistake in ZIM texture loading.
Fixes #14877.
2021-09-18 14:52:19 -07:00
Unknown W. Brackets
3ac669f80b Core: Fix some minor gcc warnings. 2021-09-13 08:13:14 -07:00
Henrik Rydgård
3be5c7bd9a Make the minimum items per thread explicit. Found some bugs, optional arguments are evil. 2021-06-12 21:21:28 +02:00
Henrik Rydgård
73871b9b7e Implement new thread manager, port stuff to it. 2021-06-12 13:03:53 +02:00
Unknown W. Brackets
cedf196d8f Replacement: Validate ZIMs are 8888. 2021-05-16 09:48:28 -07:00
Unknown W. Brackets
a0f79ed624 Replacement: Allow loading ZIMs for replacements.
Larger, but can be ZSTD compressed and load much faster.
2021-05-16 09:30:33 -07:00
Unknown W. Brackets
d376e67f87 Common: Cleanup some Path constructions. 2021-05-14 22:48:04 -07:00
Henrik Rydgård
47039b4bcd Address all the easy feedback. Some is left. 2021-05-13 10:39:17 +02:00
Henrik Rydgård
ae06499a0c Change Copy, Rename to use Path. Remove std::string version of Exists().
Buildfixes

Buildfix
2021-05-13 10:39:16 +02:00
Henrik Rydgård
025bcb1673 Introduce Path, start using it all over the place.
Still lots left to convert!

Convert GetSysDirectory to return Path.

More buildfixing

Remove unnecessary Path( constructors
2021-05-13 10:39:16 +02:00
Henrik Rydgård
2999e1cb86 Core: Remove some uses of OpenCPPFile. 2021-05-09 17:00:48 -07:00