Commit Graph

531 Commits

Author SHA1 Message Date
Henrik Rydgård c52a5e9e25 Fix checks for the "fake mipmap" situation.
Fixes #15492
2022-04-22 22:59:20 +02:00
Henrik Rydgård 3a09c85fb1 Fix hang when choosing "Skip" in first-time init. Warning fix, comment add.
Fixes #15011
2022-04-17 23:02:37 +02:00
Henrik Rydgård a31608e557 Crashfix 2022-04-15 19:59:24 +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
Henrik Rydgård a5ee1884c1 Address feedback 2022-04-15 01:08:14 +02:00
Henrik Rydgård a3d650d3e9 One more NEON optimization 2022-04-15 01:03:55 +02:00
Henrik Rydgård ffcfef6031 Quick NEON optimization of CheckMask32 2022-04-15 00:56:26 +02:00
Henrik Rydgård 8bc2d1a653 SSE optimize a common case for video 2022-04-15 00:56:26 +02:00
Henrik Rydgård a0ca968b1e Bugfixes, handle the rest of the cases 2022-04-15 00:56:25 +02:00
Henrik Rydgård 42cd937de2 Simplification and some cleanup 2022-04-15 00:56:25 +02:00
Henrik Rydgård 613df29467 Remove redundant line 2022-04-15 00:56:25 +02:00
Henrik Rydgård 35e0bfeacc Fix DeIndexTexture 2022-04-15 00:56:25 +02:00
Henrik Rydgård e6df3ab23a Comments 2022-04-15 00:56:25 +02:00
Henrik Rydgård 9f7e0978a9 AND together colors while decoding, and then check against fullAlphaMask. 2022-04-15 00:56:25 +02:00
Henrik Rydgård 7cab540fca Short circuit the texture replacement code 2022-03-08 19:56:06 +01:00
Unknown W. Brackets 2479d52202 Global: Reduce includes of common headers.
In many places, string, map, or Common.h were included but not needed.
2022-01-30 16:35:33 -08:00
Henrik Rydgård 80ae4b039c Vulkan: Be more restrictive about texture upscaling on "slow" devices.
Applies the same rules as for software upscaling in this case.

Should fix the stutters seen in #15109
2021-12-16 21:00:49 +01:00
Unknown W. Brackets 09f0578a64 Replacement: Use a thread to load tex replacements. 2021-10-21 17:05:39 -07:00
Unknown W. Brackets ee882d1861 Replacement: Avoid rebuild until ready. 2021-10-21 17:05:38 -07:00
Unknown W. Brackets 0721405628 Replacement: Avoid clash with X define. 2021-10-21 17:05:38 -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 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 887f6101d5 Remove the "Auto" texture scale factor. It's a performance trap and not really useful. 2021-10-05 20:41:40 +02:00
Unknown W. Brackets 2d9719ed26 TexCache: Avoid hashing videos at all in lazy mode. 2021-09-19 07:35:25 -07:00
Unknown W. Brackets e2c7366c92 TexCache: Prevent lazy cache on video textures. 2021-09-19 07:31:31 -07:00
Henrik Rydgård 6b76bcf070 Add new texture filtering "Auto Max Quality" that tweaks texture filtering for best quality.
It does this by enforcing mipmapping and minification filters, and
always autogenerates mipmaps and enforces anisotropic filtering for all
modes (if that's separately enabled).

This looks nice and flicker free in most games without any additional
tweaking, including GTA and Burnout which have long been painfully
flickery in the distance due to undersampling.

Needs a bit more testing before merge, maybe.

Fixes #13888
2021-09-03 00:14:58 +02:00
Henrik Rydgård 95dc7bb185 Minor cleanup 2021-07-10 20:00:50 +02:00
Unknown W. Brackets 1f6860d6c1 GPU: Clamp DXT texture memory bound.
See #13109.  This should handle any texture read that starts near a VRAM
or RAM boundary without crashing.
2021-06-06 11:52:26 -07:00
Unknown W. Brackets 8a8328c431 Common: Move ColorConv to a more appropriate place. 2021-05-01 11:20:05 -07:00
Henrik Rydgård 4e1bc2b3e0 Further std::string removal 2021-03-13 17:55:07 +01:00
Henrik Rydgård 409a2b5e28 Work around crash in texture replacement. See #14252 2021-03-08 00:55:17 +01:00
Unknown W. Brackets d010f07529 GPU: Ignore replacements for framebufs.
Since these don't specify the texture hash/etc. info.
More importantly, prevents a crash.
2021-03-02 23:54:35 -08:00
Unknown W. Brackets 82a7a26409 GPU: Look up replaced filtering options. 2021-02-27 17:17:21 -08:00
Henrik Rydgård 2f3bc2d373 Merge pull request #14056 from unknownbrackets/debugger-mem
Track memory allocations and writes for debug info
2021-02-21 10:18:11 +01:00
Unknown W. Brackets 557bf0d963 TexCache: Check for videos rendered as slices.
In a few places, we were checking only the start address of the video.
2021-02-20 20:59:04 -08:00
Henrik Rydgård aec37e8bb4 Only consider the actual PPGe texture in kernel ram reliable.
It seems some Chinese patches like to allocate kernel space for
textures.

(On that note, we should probably allocate our texture elsewhere... in
case it takes up too much space).
2021-02-19 09:53:55 +01:00
Unknown W. Brackets 10a77d29ab Debugger: Track texture usage too. 2021-02-15 15:01:23 -08:00
Unknown W. Brackets ae474f5f18 GPU: Correct some field shadowing. 2021-02-15 12:00:29 -08:00
Unknown W. Brackets f32f89dd90 Global: Remove some unused variables. 2021-02-15 11:59:45 -08:00
Henrik Rydgård 6df37b86bc Merge pull request #14076 from unknownbrackets/zhp-map
GPU: Force texture invalidation for ZHP minimap
2021-02-15 11:33:32 +01:00
Unknown W. Brackets abfeacef61 GPU: Fix a type comparison warning. 2021-02-14 10:30:10 -08:00
Unknown W. Brackets ec3bfe08ae GPU: Force texture invalidation for ZHP minimap.
See #14069, our texture hash misses this change.
2021-02-07 09:02:28 -08:00
Henrik Rydgård 559ccd9f33 Minor cleanups 2020-12-14 20:06:06 +01:00
Henrik Rydgård 7061993c8f VK: Restore the ARM Mali Z hack that got lost in the refactor somehow.
Warning fixes.
2020-12-14 19:54:39 +01:00
Henrik Rydgård 0c66f6c6d0 Assorted drive-by code cleanup 2020-12-13 00:20:47 +01:00
Henrik Rydgård 575ae376a9 Don't try to texture from depth if not supported by backend. Works around #13621 2020-11-10 23:36:33 +01:00
Henrik Rydgård 9105249901 Add compat flag for reinterpret shader, also disable on platforms that can't support it yet 2020-11-08 11:32:55 +01:00
Henrik Rydgård 981d0a2abe Reinterpret the data when binding a framebuffer with a different 16-bit format.
Car reflections in Outrun are better (see #11358) but have some
blue/yellow color garbage that will need a different fix.
2020-11-08 11:32:55 +01:00
Henrik Rydgård 3e6d121016 Partially revert "Clarify some logic, improve framebuffer names"
I screwed up a couple things.

Fixes #13619

This reverts commit 32eb882bc6.
2020-11-03 11:39:12 +01:00