Henrik Rydgård
176b460d76
Quick attempt at fixing the Macross glitch
2022-07-31 10:43:48 +02:00
Henrik Rydgård
f061eadc04
Initial implementation of 3D texturing through equal-size mips (see #6357 )
...
Vulkan-only currently, though all the other backends except ES 2.0
without GL_OES_texture_3d can support it with some work.
2022-07-31 10:43:47 +02:00
Henrik Rydgård
6a5a232777
Unify the GLES LoadTextureLevel with the D3D ones.
2022-07-30 19:07:21 +02:00
Henrik Rydgård
c6d7423368
Prepare to convert the GLES functions too
2022-07-30 18:37:48 +02:00
Henrik Rydgård
dea979433c
Share LoadTextureLevel between the two D3D backends.
2022-07-30 17:00:34 +02:00
Henrik Rydgård
063cd18254
Simplify CPU upscaling code
...
Use the existing expandTo32bit mode in the texture decoder instead of
the backend-specific switches and stuff.
Just gets rid of a bunch of redundant code and makes further changes
easier.
2022-07-30 15:06:25 +02:00
Henrik Rydgård
9f1fdc6c02
Use PrepareBuildTexture from the Vulkan backend too
2022-07-30 10:45:03 +02: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
1e9d85cda1
Define texture loading plan semantics better, pre-port some from Vulkan
2022-07-30 10:44:28 +02:00
Henrik Rydgård
6220068fb1
Update PrepareBuildTexture
2022-07-30 10:44:28 +02:00
Henrik Rydgård
043989ca8a
Use PrepareBuildTexture from D3D11 backend
2022-07-30 10:44:27 +02:00
Henrik Rydgård
167b837ed3
Break out the preparation part of BuildTexture from GLES
2022-07-30 10:44:27 +02:00
Henrik Rydgård
6f484d0aee
Remove unused useBGRA parameter
2022-07-30 08:52:24 +02:00
Henrik Rydgård
04a85b1da0
Allows "merging" render targets that overlap on the Y access. Fixes #7295 (Juiced 2)
...
To be safe, gating this behind the related AllowLargeFBTextureOffsets,
which is also required for the effect to work.
Additionally, fixes the offset check for X offsets, which I guess is a
very small risk.
2022-07-24 11:58:07 +02:00
Unknown W. Brackets
8779421a3e
GLES: Reverse alphamask when comparing to CLUT.
...
The CLUT is already reversed.
2022-04-25 08:54:02 -07: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
9f7e0978a9
AND together colors while decoding, and then check against fullAlphaMask.
2022-04-15 00:56:25 +02:00
Henrik Rydgård
f54ed3757c
Always use the stable quick tex hash. Doesn't actually make a difference except on new CPU archs.
2022-04-13 11:18:18 +02: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
2356280a9c
Replacement: Add structure for delayed loading.
2021-10-21 17:05:38 -07:00
Henrik Rydgård
95dc7bb185
Minor cleanup
2021-07-10 20:00:50 +02:00
Unknown W. Brackets
82a7a26409
GPU: Look up replaced filtering options.
2021-02-27 17:17:21 -08:00
Unknown W. Brackets
fb3ad1df4b
Replacement: Read in texture filtering overrides.
...
If you're replacing, you can know more information about linear safety for
tests.
2021-02-27 17:16:16 -08: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
Unknown W. Brackets
ae474f5f18
GPU: Correct some field shadowing.
2021-02-15 12:00:29 -08: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
Henrik Rydgård
32eb882bc6
Clarify some logic, improve framebuffer names
2020-11-02 10:02:49 +01:00
Henrik Rydgård
277333682f
GPU debug stats: Show how many bytes of texture data we hash per frame
2020-09-20 22:09:29 +02:00
Henrik Rydgård
f288e64679
Simplify NotifyFrameBuffer - only needs one call for both "channels" now.
2020-09-20 22:09:29 +02:00
Henrik Rydgård
707e9cf7ac
Remove some unnecessary function parameters, improve some comments.
2020-09-20 20:44:18 +02:00
Henrik Rydgård
7630fae4b9
Fix bug in new framebuffer code, reducing unnecessary texture invalidations.
...
Improves the performance issue in #13431
2020-09-16 01:03:56 +02:00
Henrik Rydgård
a222b2017e
Switch to a returned value and rename these functions.
2020-09-14 00:04:39 +02:00
Henrik Rydgård
5190f85c8e
Unify/centralize SetFramebufferSamplingParams. Some include cleanup.
2020-09-14 00:04:39 +02:00
Henrik Rydgård
a4c071261b
TextureCacheCommon::UpdateSamplingParams no longer takes a TexCacheEntry
2020-09-13 16:40:37 +02:00
Henrik Rydgård
cea35007ae
Always use a linear filter for video, unless forcing NEAREST filtering.
2020-09-13 16:40:37 +02:00
Henrik Rydgård
a28954d311
Further simplify framebuffer matching.
2020-09-13 09:03:31 +02:00
Henrik Rydgård
41eee6a1a4
Decouple framebuffers from texcache entries entirely.
2020-09-12 14:25:50 +02:00
Henrik Rydgård
c7a5f45f81
Remove fbCache_ from TextureCacheCommon.cpp.
2020-09-12 12:37:05 +02:00
Unknown W. Brackets
ee6fbd9a0b
TexCache: Rename "Invalid" attach to "Inexact".
...
The name has seemed confusing to me for a while.
2020-09-06 23:04:52 -07:00
Henrik Rydgård
4252036d89
Apply the scoring model when creating/updating framebuffers too.
...
Reuses the same mechanism.
This is the second part of the Test Drive fix.
2020-08-30 16:21:56 +02:00
Henrik Rydgård
e9ff037e91
Extract AttachFramebufferToEntry function
2020-08-30 16:21:56 +02:00
Henrik Rydgård
41fe6f9e12
Delete an unused buffer, saving 0.5MB of RAM.
2020-08-28 10:38:00 +02:00
Henrik Rydgård and GitHub
13552550bc
Merge pull request #13330 from unknownbrackets/gpu-clear
...
TexCache: Force recreate texture on detach
2020-08-24 07:24:04 +02:00
Unknown W. Brackets
f44717c4f5
TexCache: Force recreate texture on detach.
...
We could have multiple detaches, and we delete the texture on attach, so
we really must make sure we recreate.
Fixes #13320 .
2020-08-23 21:29:53 -07:00
Henrik Rydgård
055588c1a1
Framebuffer manager refactor step 1: Split ApplyFramebuffer into Match and Apply steps.
...
This should have no change in behavior, but prepares the ground for the
next steps. Want this merged separately.
2020-08-24 00:01:02 +02:00
Henrik Rydgård
ba0d04a142
Vulkan: Implement depth texturing through depal.
2020-08-09 20:31:04 +02:00
Henrik Rydgård
cf122e9333
Vulkan/generic: Initial prep for depth texturing
2020-08-09 19:47:15 +02:00