Henrik Rydgård
d6d7a15d25
Get depal-from-dynamic-CLUT working
2022-09-14 22:18:35 +02:00
Henrik Rydgård
51c97c7a7f
Set texcache entry status flag if CLUT needs to be dynamic
2022-09-14 22:18:35 +02:00
Henrik Rydgård
abd58199ce
Add way to bind cached textures to a DrawContext
2022-09-14 22:18:35 +02:00
Henrik Rydgård
f745e94899
Allow binding "native" texture objects to thin3d
2022-09-14 22:18:35 +02:00
Henrik Rydgård
9907957242
Start implementing ApplyTextureDepal
2022-09-14 22:18:35 +02:00
Henrik Rydgård
8d00df12a4
Detect the CLUT8/8888 situation
...
Implement CLUT8 depal from 8888 textures. Hard to tell if working
2022-09-14 22:18:34 +02:00
Henrik Rydgård
0ed1f3d461
Switch multiple bools as parameters to DecodeTextureLevel to a flags enum.
2022-09-14 18:40:08 +02:00
Henrik Rydgård
75efcd9dfd
Merge pull request #16000 from unknownbrackets/gedebugger
...
Cleanup some crashes in GE debugger or with large textures
2022-09-11 19:41:11 +02:00
Henrik Rydgård
cf959a8467
Remove CLUT matching case that shouldn't be there yet.
2022-09-11 19:33:31 +02:00
Henrik Rydgård
a30896e21f
Switch more texture matching calculations to use bytes for matching.
2022-09-11 16:52:30 +02:00
Henrik Rydgård
4491c480a6
Texture/framebuffer matching: Do margin check in bytes.
2022-09-11 16:18:04 +02:00
Henrik Rydgård
694dbe1271
Add ShaderDepalMode enum, use in shader ID. Replaces smoothed bit.
2022-09-11 14:40:01 +02:00
Henrik Rydgård
9bd8b11bf8
Implement shader depal for D3D11.
2022-09-11 13:41:17 +02:00
Henrik Rydgård
33a93e238a
CLUT download: Replace the broken block transfer check with a new compat flag.
...
This compat flag should be temporary until we've implemented
a readback-free path for CLUTs from framebuffers, both when texturing
from static textures and other framebuffers.
2022-09-11 10:27:21 +02:00
Unknown W. Brackets
3242bb8d66
TexCache: Allow valid bufw sizes.
...
These don't cause crashes anymore.
2022-09-10 20:15:43 -07:00
Henrik Rydgård
a2ca85bc87
Add logging for LoadCLUT from framebuffer. See #15923 . Logs nicely in Burnout Dominator.
2022-09-10 19:32:39 +02:00
Henrik Rydgård
befcfb470c
Fix shader caching.
2022-09-08 00:38:32 +02:00
Unknown W. Brackets
7c8f8817b8
GPU: Fix CanDepalettize() missing false paths.
...
Mismatched texformats didn't have a return.
2022-09-06 18:52:20 -07:00
Henrik Rydgård
9a6c1d84c2
Remove impossible check
2022-09-06 00:39:10 +02:00
Henrik Rydgård
e69bb4f616
Buildfix, warn fixes while at it
2022-09-05 23:40:43 +02:00
Henrik Rydgård
16212cae73
NFS speed effect: Improve framebuffer choice logging, tighten up stride checks.
2022-09-05 23:31:30 +02:00
Henrik Rydgård
40f8f21836
Water effect fix #2 : If ForceLowerResolutionForEffects, don't upscale textures participating in small-resolution passes.
2022-09-04 23:43:01 +02:00
Unknown W. Brackets
c5fbb400de
Replacement: Detect OOM even with replacements.
...
Also allow saving video textures if so configured.
2022-09-01 19:05:20 -07:00
Henrik Rydgård
2bf0c86ac7
Fix image format when dumping textures.
...
Fixes #15831
2022-09-01 15:04:59 +02:00
Henrik Rydgård
a854fbbe76
fbtex matching: Shrink the matching struct, use TinySet instead of vector to avoid an allocation.
2022-09-01 10:24:52 +02:00
Henrik Rydgård
608710f9f5
Merge pull request #15936 from hrydgard/framebuffer-cleanups
...
Framebuffer settings and block transfer speedup
2022-09-01 10:04:31 +02:00
Henrik Rydgård
1c9ec36fd8
Stricter checks for negative framebuffer offsets. Fixes #15937
2022-09-01 08:26:23 +02:00
Henrik Rydgård
470efac7d8
Merge GetFramebufferCandidates and GetBestCandidateIndex into one function.
2022-09-01 00:35:43 +02:00
Henrik Rydgård
67d6549afd
Rename Slow Framebuf effects to Shader Blending (might remove). Reassign readbacks to BlockTransferGPU.
2022-08-31 14:23:33 +02:00
Henrik Rydgård
70f7f74a05
Check X coordinate of through-mode drawcalls to figure out which of the splits to render to
2022-08-31 01:09:23 +02:00
Henrik Rydgård
1b3b1acefa
Tweak ForceMax60Fps to work for Killzone
2022-08-30 20:10:44 +02:00
Henrik Rydgård
987bfc79ef
Split the framebuffer in Killzone, with a compatibility flag.
...
Greatly improves performance.
See issue #6207
2022-08-30 20:05:56 +02:00
Henrik Rydgård
daa62beb39
Small tweak in texture matching. Fixes #15927
2022-08-30 16:14:47 +02:00
Henrik Rydgård
08eaf7665c
Fix race condition in replacement texture loading
...
The texture could become valid during the load, causing an inconsistent
state within the texture loading. So can only check for valid-ness once.
2022-08-30 12:52:31 +02:00
Henrik Rydgård
6f2966f502
Clean up mip size calculations
...
Calculating the same thing in multiple places is a recipe for bugs, so
let's not.
2022-08-30 12:05:57 +02:00
Henrik Rydgård
f228de76ef
Fix OpenGL bug when framebuffer fetch is available. Add two new stats.
2022-08-29 15:39:29 +02:00
Henrik Rydgård
b447092742
Some Vulkan renderpass load/store optimizations.
2022-08-28 23:16:48 +02:00
Henrik Rydgård
9b4e94c4ae
Depal: Set scissor tightly around processed area.
2022-08-28 23:14:30 +02:00
Henrik Rydgård
322f29ce80
Comments and fixes
2022-08-27 23:37:02 +02:00
Henrik Rydgård
8d1157e107
GL bugfix, log cleanup
2022-08-27 14:40:42 +02:00
Henrik Rydgård
cb8497731d
Framebuffer texture matching: Remove heuristics other than seqCount
2022-08-27 11:01:54 +02:00
Henrik Rydgård
769f3d1466
Accept color textures as reinterpretable between 32 and 16-bit formats
2022-08-27 10:59:37 +02:00
Henrik Rydgård
6781dd5fe8
Fix Katamari
2022-08-26 23:47:22 +02:00
Henrik Rydgård
39690a95be
Quick hack to widen the depal texture if 0x200000 swizzle is needed
2022-08-26 17:09:22 +02:00
Henrik Rydgård
7cba231e58
Finish the depal refactoring.
...
Needed for an upcoming change (since this lets us use the Draw2D
uniform mechanism in depal shaders).
2022-08-26 15:47:29 +02:00
Henrik Rydgård
c6f20bda18
Reimplement texture format reinterpretation
2022-08-24 14:40:37 +02:00
Henrik Rydgård
b529d26f3a
Fix smoothed depal on GLES. Don't enable filtering if not using.
2022-08-24 13:43:41 +02:00
Henrik Rydgård
d459eac891
Fix checks for depth texture support, GLES syntax errors
2022-08-24 11:26:07 +02:00
Henrik Rydgård
bd674c47b6
OpenGL: Fix regular depal (shader depal still worked) that broke recently
2022-08-24 11:01:57 +02:00
Henrik Rydgård
5084743bbb
Use Draw2D for depal shaders (except the actual blit, for now)
2022-08-23 11:21:40 +02:00