Henrik Rydgård
1860a73d58
Address feedback from previous PR
2023-03-12 23:15:09 +01:00
Henrik Rydgård
f2673c8f7b
Change BGRA to be a texture-specific flag. Fixes R/B swap in DDS textures in D3D11.
2023-03-12 10:19:12 +01:00
Henrik Rydgård
d95cd73c2c
Address a round of feedback
2023-03-11 21:46:01 +01:00
Henrik Rydgård
f936a6e9ce
Structs and enums and build files
2023-03-11 11:19:33 +01:00
Henrik Rydgård
8e3428438e
Replacement: Fix mip level loading. Fix bug if LoadIni gets rerun for some reason.
2023-03-10 23:58:15 +01:00
Henrik Rydgård
36f78a46c1
Rename PREPARED->POPULATED
2023-03-10 17:21:23 +01:00
Henrik Rydgård
f459a8f71a
Fix ini-less texture replacement
2023-03-10 14:58:44 +01:00
Henrik Rydgård
53791b1816
Restore functionality of the allowVideo flag, while preserving the early-out.
2023-03-10 14:18:42 +01:00
Henrik Rydgård
07fc551e4e
State fixes, disable logspam
2023-03-10 14:16:14 +01:00
Henrik Rydgård
9f45271730
Tex replacer state machine instead of flags
2023-03-10 13:43:48 +01:00
Henrik Rydgård
06b83115a5
Replacer: Avoid tracking video textures
2023-03-10 12:20:55 +01:00
Henrik Rydgård
b253225815
Fix another replacer lifecycle issue, causing unnecessary texture invalidation.
2023-03-09 15:03:17 +01:00
Henrik Rydgård
44c4e63753
Simplifies and speeds up D3D11 texture uploads. Also, fixes a bug with replacement off
2023-03-09 14:43:59 +01:00
Henrik Rydgård
092bbf5eaa
Fix saving of textures
2023-03-09 10:51:15 +01:00
Henrik Rydgård
bda09be109
Texture color format doesn't belong as a per-level property, that's not supported.
...
All levels of a texture must have the same format.
2023-03-09 00:10:46 +01:00
Henrik Rydgård
4ba2001479
Replacer: Make the cache data model texture-centric instead of level-centric
2023-03-09 00:10:46 +01:00
Henrik Rydgård
226197f30f
Replace "none_" with nullptr.
2023-03-08 13:17:10 +01:00
Henrik Rydgård
3dc47c7fef
Unify TextureCache ::StartFrame as much as possible.
...
Tiny optimization avoiding a Vulkan pool reset on most frames.
2023-02-25 23:20:41 +01:00
Henrik Rydgård
c74f5b2189
Prepare for unifying more stuff
2023-02-25 16:01:32 +01:00
Henrik Rydgård
49e5460c9c
Remove count parameter from SetViewports. No use foreseen.
2023-02-25 07:12:53 +01:00
Henrik Rydgård
1b5148bb6c
Remove kinda-duplicate function.
2023-02-24 23:54:04 +01:00
Henrik Rydgård
63c43b90f8
Remove a level of indentation in LoadCLUT
2023-02-05 13:59:16 +01:00
Henrik Rydgård
4427cb4fc3
Add parameter to thin3d::CopyFramebufferToMemory to specify blocking mode. Not yet implemented.
2023-02-04 23:40:36 +01:00
Henrik Rydgård
62484f01ed
Make ReadbackFramebufferSync able to use the stretch ability of ReadbackDepthbufferSync
2023-02-04 12:05:50 +01:00
Unknown W. Brackets
0f92afb0c1
Replacement: Check replaceValid before load.
2023-01-08 10:20:52 -08:00
Unknown W. Brackets
e5d67119a8
GPU: Avoid bloom hack on buffers used for depth.
...
If a buffer even has depth transferred to it, let's avoid lowering its
resolution.
2023-01-05 18:00:43 -08:00
Unknown W. Brackets
0b6635c2dc
GLES: Avoid switch-case on older glsl.
2023-01-02 14:57:06 -08:00
Unknown W. Brackets
49f6c461ad
Reporting: Fix some header includes.
...
Particularly in Common, avoid including Core/Reporting.h.
2022-12-27 14:58:20 -08:00
Unknown W. Brackets
b0f93ed8d6
Merge pull request #16535 from hrydgard/minor-fixes
...
Some minor initialization fixes, and fix for a potential crash found by static analysis
2022-12-10 07:09:58 -08:00
Henrik Rydgård
59ab1374f2
Fix regression in Tactics Ogre - the mipmap level hack broke
...
It broke when we introduced the 3D texture support, in #15727
Fixes #16354
2022-12-10 11:41:12 +01:00
Henrik Rydgård
4ec1e2a175
Some minor initialization fixes, and one potential crash found by static analysis
2022-12-10 11:28:19 +01:00
Henrik Rydgård
3b5770da9b
DXT5 fix
2022-12-09 23:47:42 +01:00
Henrik Rydgård
e59b734b27
Fix case where we could write off the end of a buffer if texture width == 1 and 4-bit color.
2022-12-09 23:47:39 +01:00
Henrik Rydgård
7aab096791
LittleBigPlanet: Compat flag to work around smoke rendering problem
...
See #16030
Hopefully just for the release. There might be a tweak of our heuristics
that can fix it too, but much riskier at this point.
2022-12-07 13:29:47 +01:00
Henrik Rydgård
a8939f456a
Remove dead code, validation fix in GE debugger
...
See #16490
2022-12-04 00:49:48 +01:00
Henrik Rydgård
02b8bf33fb
Merge pull request #16458 from hrydgard/desktop-friendly-msaa
...
Implement MSAA support for desktop GPUs in Vulkan
2022-12-03 11:22:41 +01:00
Lubos
b41a782fcd
Revert "Centralize ClearCacheNextFrame"
...
This reverts commit cbfa4bfc8e
.
2022-12-02 14:32:27 +01:00
Henrik Rydgård
e3679df6cf
Fix switching between MSAA levels
2022-12-01 22:49:00 +01:00
Henrik Rydgård
06af304c8d
Multisampling groundwork
2022-12-01 22:49:00 +01:00
Henrik Rydgård
331d024a8c
Add a flags parameter to InvalidateCachedState and rename it Invalidate.
...
Also rename the old InvalidationFlags enum to InvalidateCallbackFlags.
2022-12-01 19:15:38 +01:00
Unknown W. Brackets
9425d0670a
GPU: Prevent decimating CLUT framebuffers.
...
Fixes color changing after a few moments in Kurohyo.
2022-11-27 21:24:02 -08:00
Unknown W. Brackets
a7c4258e9f
GPU: Support framebuf depal from rendered CLUT.
...
Using a temporary always for simplicity.
2022-11-27 21:16:24 -08:00
Unknown W. Brackets
194c4b0286
TexCache: Support offset in rendered CLUTs.
...
We already copy to a temp, so just use that copy to normalize out the
offset. Should even get RECT2LIN correct, but most cases are 1 pixel high
anyway.
2022-11-27 21:15:15 -08:00
Henrik Rydgård
7b154d6895
Don't forget to rebind the framebuffer after copying a framebuffer to CLUT.
2022-11-24 10:12:12 +01:00
Henrik Rydgård
cbfa4bfc8e
Centralize ClearCacheNextFrame
2022-11-21 18:13:13 +01:00
Unknown W. Brackets
585569c2c2
TexCache: Cleanup BGRA flag dirtying.
2022-11-08 20:01:14 -08:00
Unknown W. Brackets
bc53a0d7c4
TexCache: Correct 16->32 for CLUT4 with shift.
2022-11-07 18:41:47 -08:00
Unknown W. Brackets
17f6c00c3c
TexCache: Fix 16->32 colors with CLUT start pos.
2022-11-07 18:34:10 -08:00
Unknown W. Brackets
04cd6c4f7d
TexCache: Align expandClut buffer, cleanup sizes.
...
We shouldn't need larger than 2 KB CLUT buffers, since it's actually only
1 KB. We have a hack that allows 2 KB for separate mip map levels.
2022-11-07 18:18:02 -08:00
Henrik Rydgård
95cb358fbf
Change the "Retain changed textures" option into a compat.ini option.
...
This option benefits so few games and can hurt others, so that it's
better that we specifically enable it for known cases like Popolocrois.
2022-11-06 17:28:50 +01:00