Commit Graph

98 Commits

Author SHA1 Message Date
Unknown W. Brackets
a1efed31b9 GPU: Use flags to fix triggered upload/download.
No longer using mirror hacks.
2022-10-03 20:17:25 -07:00
Unknown W. Brackets
58a4376998 GPU: Normalize framebuf addresses.
In VRAM, always store without mirror.  In RAM, always store without
cache/kernel bits.
2022-10-02 21:28:53 -07:00
Henrik Rydgård
94ae0fabfa CLUTs can be loaded from small rectangular textures. Need to linearize.
Fixes #8406, although technically, we should wrap by bufw, not the
texture width.
2022-09-21 18:33:15 +02:00
Unknown W. Brackets
bf86f00df8 GPU: Correct display framebuffer reading.
The displayFramebuf_ might not be set yet, but that doesn't mean we want
an INVALID format and zero stride.  We might also be rendering to a
different target, but still want the display.
2022-09-20 14:01:36 -07:00
Henrik Rydgård
662126a0a1 Small simplification 2022-09-15 16:57:03 +02:00
Henrik Rydgård
9907957242 Start implementing ApplyTextureDepal 2022-09-14 22:18:35 +02:00
Henrik Rydgård
a52e62a187 Enable depth uploads on render-to-clut-buffer. Esoteric but needed for #11100. Compat flag for now. 2022-09-14 22:18:34 +02:00
Henrik Rydgård
4803825f83 Buffer copy matching workaround 2022-09-14 22:18:34 +02:00
Henrik Rydgård
39890f7d6f Extract function GetReinterpretPipeline 2022-09-13 11:46:47 +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
3787b43b7a Fix "Lower resolution for effects" in Ratchet & Clank. Bad option for this game though. 2022-09-04 23:28:55 +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
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
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
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
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
3c5ec25f61 Initial implementation of 32/16-bit color reinterpret blits. 2022-08-26 15:51:25 +02:00
Henrik Rydgård
cd0a31a3cd Work in bytes in the framebuffer matching algorithm for block copies, avoid margins 2022-08-26 15:51:25 +02:00
Henrik Rydgård
e6bb512a39 Remove support for framebuffers changing stride (already unreachable).
Also fixes a compiler warning
2022-08-25 19:07:07 +02:00
Henrik Rydgård
f79acd651d Comment updates 2022-08-25 00:29:44 +02:00
Henrik Rydgård
bbd92e6345 Merge the two find FindTransferFramebuffer* methods 2022-08-25 00:22:33 +02:00
Henrik Rydgård
62a834d15e Split up FindTransferFramebuffers 2022-08-25 00:12:31 +02:00
Henrik Rydgård
1feae894d3 Reorder some parameters. Detect buffers in stride gaps. 2022-08-24 18:31:10 +02:00
Henrik Rydgård
d0a3b9886f Remove unused function decl 2022-08-24 18:25:45 +02:00