Henrik Rydgård
1913930541
Careful with mipmaps on old OpenGL ES. Lost this check in the refactor, made it clearer than before at least.
...
Fixes Burnout rendering issue mentioned in #15818
2022-08-09 17:26:39 +02:00
Henrik Rydgård
ded8ba8806
More cleanup, fixes.
2022-08-06 18:27:04 +02:00
Henrik Rydgård
4e3c258140
Delete all the duplicate implementations of ApplyTextureFramebuffer
2022-08-06 18:27:03 +02:00
Henrik Rydgård
45def772ee
Move the depal cache instance ownership to TextureCacheCommon
2022-08-06 18:27:03 +02:00
Henrik Rydgård
e345a6ba3c
Works with D3D11, except the depth texturing case
2022-08-06 18:27:03 +02:00
Henrik Rydgård
ab560d9224
Move more stuff to Common
2022-08-06 18:27:03 +02:00
Henrik Rydgård
fafe727870
Fix corrupted colors when using software upscaling with OpenGL.
...
Fixes #15779
2022-08-06 18:04:45 +02:00
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