Henrik Rydgård
0fe064d970
Small steps
2022-09-02 22:43:58 +02:00
Henrik Rydgård
de712b7804
More renaming
2022-09-02 22:20:11 +02:00
Henrik Rydgård
b84cda2876
Plumb the computed pipeline state into ComputeFragmentShaderID.
2022-09-02 22:16:57 +02:00
Henrik Rydgård
c784c0e94b
Some renaming. Store the BlendState/MaskState.
2022-09-02 21:07:29 +02:00
Unknown W. Brackets
470d2f0f4e
vertexjit: Remove unused ReadUV() cases.
2022-09-01 23:33:52 -07:00
Unknown W. Brackets
f2d5d668a5
vertexjit: Remove unused ReadPos() cases.
2022-09-01 23:33:52 -07:00
Unknown W. Brackets
9f48ddb18c
vertexjit: Clamp through float pos during decode.
...
Rather than decoding it on read, better to decode it right away.
2022-09-01 23:33:52 -07: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
Lubos
00aaf9e1a6
Merge branch 'master' into feature_openxr_stereo
2022-09-01 18:09:21 +02:00
Henrik Rydgård
2bf0c86ac7
Fix image format when dumping textures.
...
Fixes #15831
2022-09-01 15:04:59 +02:00
Henrik Rydgård
c9048c3748
Shrink the DeferredDrawcall struct, because why not. Assorted cleanup
2022-09-01 11:59:33 +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 and GitHub
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
a8a9fb4206
Much faster framebuffer matching (no more ToString every time there's more than 1 candidate, etc).
2022-08-31 14:23:56 +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
437d6d30a0
KillZone: Fix margin detection on the title screen, fixing some glitches. Need more fixes though to fix the shimmer effect.
...
See #6207 comments
2022-08-31 11:40:42 +02:00
Henrik Rydgård
0928d9d285
Extract the split code to a function
2022-08-31 09:12:52 +02:00
Henrik Rydgård
d99e4b6714
Quicker way to update the through projection matrix with the split framebuffer offset
2022-08-31 08:44:15 +02:00
Henrik Rydgård
95b299766e
Cleanup (more to do, though)
2022-08-31 01:53:13 +02:00
Henrik Rydgård
7186fc2c17
Offset the draws properly. Now just some texel clamping left to fix
2022-08-31 01:40:53 +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 and GitHub
59813fff6d
Merge pull request #15929 from hrydgard/fix-tex-replace-race
...
Fix race condition in replacement texture loading
2022-08-30 13:17:19 +02:00
Henrik Rydgård
340c75a2d9
Remove "DisableReadbacks" compat flag. MotoGP no longer needs it after BlockTransferAllowCreateFB was added.
2022-08-30 13:16:36 +02:00
Henrik Rydgård and GitHub
ead833561b
Merge pull request #15926 from hrydgard/fix-framebuffer-read-dx9
...
Implement shader blending for D3D9
2022-08-30 13:01:04 +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
4da2ca0935
Implement shader blending for D3D9
...
This was easy, dunno why I never got around to it before..
I guess I didn't know about VPOS.
This does raise our minimum shader model requirement to ps_3_0.
2022-08-30 12:19:56 +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
44d822be3b
Address feedback
2022-08-30 06:41:37 +02:00
Henrik Rydgård
670c31e746
Add support for reading depth buffers to the PackFramebufferSync function.
...
Also adds D16 conversion code (though, could probably get away with just
creating a 16-bit depth buffer on the GPU and blit to it, where depth
blit is available).
Not yet used, just getting it in separately.
2022-08-30 00:00:59 +02:00
Lubos
94968c3075
Merge branch 'master' into feature_openxr_stereo
2022-08-29 21:32:59 +02:00
Henrik Rydgård
847e05140b
Add another stat, for self-tex
2022-08-29 17:41:29 +02:00
Henrik Rydgård
333df62691
Remove the reinterpret compat flag, now always on
...
Remove ini entries
2022-08-29 17:41:29 +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
cd37bffdaa
Better framebuffer checks, remove all ways that framebuffer formats can change.
2022-08-29 11:06:45 +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
Lubos
2adc7269a3
Merge branch 'master' into feature_openxr_stereo
2022-08-28 21:55:15 +02:00
Unknown W. Brackets
f5efc1aa56
GPU: Make Spongebob hack checks more readable.
...
Multiline clauses are just a lie programmers tell themselves to make them
think they've written readable code, just because it's better than a
single line.
Also add comments while there, in case this causes problems.
2022-08-28 08:50:16 -07:00
Unknown W. Brackets
18e1efece1
GPU: Add a way to defer dirty rechecks.
...
These are situations where we have temporary state which will require
recalc again later.
2022-08-28 08:34:48 -07:00
Unknown W. Brackets
77c834ba5c
GPU: Fix possible shift truncation.
...
Also, add algorithm for std::max.
2022-08-28 08:32:00 -07:00
Henrik Rydgård
c75b0235e1
Update the Spongebob workaround check to work with MX vs ATV: Reflex. See #15907
...
Not ideal to not check the verts :(
2022-08-28 15:09:58 +02:00
Lubos
4bd5a28604
OpenXR - Flag to easily disable multiview shaders added
2022-08-28 14:49:27 +02:00
Lubos
ca92f80bd8
Merge branch 'master' into feature_openxr_stereo
2022-08-28 14:22:18 +02:00
Henrik Rydgård
e63c14b45a
More spongebob check tweaks, assert fix
2022-08-28 09:13:43 +02:00
Henrik Rydgård
98f2e2a370
Remove irrelevant stencil state checks
2022-08-28 07:35:26 +02:00