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
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
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
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
e63c14b45a
More spongebob check tweaks, assert fix
2022-08-28 09:13:43 +02:00
Henrik Rydgård
39f6621442
Address additional feedback, thanks!
2022-08-28 07:31:50 +02:00
Henrik Rydgård
322f29ce80
Comments and fixes
2022-08-27 23:37:02 +02:00
Henrik Rydgård
6cedf34e9c
Block transfer bug fix
2022-08-27 23:20:26 +02:00
Henrik Rydgård
a74d2ec185
Comment fixes
2022-08-27 19:24:25 +02:00
Henrik Rydgård
8d1157e107
GL bugfix, log cleanup
2022-08-27 14:40:42 +02:00
Henrik Rydgård
92eaac0210
Fix problem matching framebuffers for reinterpret
2022-08-27 13:57:54 +02:00
Henrik Rydgård
c533ea4d93
Logging improvements
2022-08-27 13:57:36 +02:00
Henrik Rydgård
85f2a0f052
Remove some old logging that's not very interesting anymore
2022-08-27 13:57:08 +02:00
Henrik Rydgård
628bac056d
Log improvement
2022-08-27 11:31:17 +02:00
Henrik Rydgård
7be3063c96
When cloning framebuffers for reinterpret, adjust width according to bpp
2022-08-27 11:12:35 +02:00
Henrik Rydgård
693fd0870f
Bugfix, better logging
2022-08-26 23:26:44 +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
eeb784b417
Prepare for 16/32 reinterpret
2022-08-26 15:51:25 +02:00
Henrik Rydgård
9a82a7d659
Detect need for 16<->32-bit reinterprets
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
7cba231e58
Finish the depal refactoring.
...
Needed for an upcoming change (since this lets us use the Draw2D
uniform mechanism in depal shaders).
2022-08-26 15:47:29 +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
656932397b
Revert minimum stride
2022-08-25 18:56:04 +02:00
Henrik Rydgård
753062b2a1
More comment fixes, cleanups
2022-08-25 00:52:45 +02:00
Henrik Rydgård
272019f23a
Comments
2022-08-25 00:47:19 +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
9feb61e7fa
Additional renaming
2022-08-25 00:19:08 +02:00
Henrik Rydgård
d0713d7fff
Rename variables to make the two functions match
2022-08-25 00:17:01 +02:00
Henrik Rydgård
62a834d15e
Split up FindTransferFramebuffers
2022-08-25 00:12:31 +02:00
Henrik Rydgård
04740d069c
Tighten the check a bit more
2022-08-24 18:35:42 +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
048a556ada
Add floating point version of reinterpret shaders
2022-08-24 14:40:37 +02:00
Henrik Rydgård
99404f0a15
Fix BlueToAlpha together with reinterpret. Add back fake reinterpret for now.
2022-08-24 14:40:37 +02:00
Henrik Rydgård
c6f20bda18
Reimplement texture format reinterpretation
2022-08-24 14:40:37 +02:00
Henrik Rydgård
586da08820
Merge pull request #15895 from unknownbrackets/gpu-minor
...
GPU: Correct Draw2D::DeviceRestore()
2022-08-24 11:50:42 +02:00
Henrik Rydgård
5d50d02227
Merge pull request #15894 from unknownbrackets/debugger
...
GE Debugger: Record only one flip if display framebuf not changed, step on vsync
2022-08-24 06:27:31 +02:00
Unknown W. Brackets
7ec62a32b4
GPU: More consistently clear ptrs on DeviceLost().
...
Rather get a null pointer crash than confusing buggy use-after-free
excitement.
2022-08-23 20:15:30 -07:00
Unknown W. Brackets
a901fa4315
GE Debugger: Add separate step based on vsync.
...
I think there were some games where this would step in the middle of a
frame, but not seeing it commonly now. So make it the default, but allow
both methods in the menu.
Fixes #15893 .
2022-08-23 19:48:34 -07:00
Unknown W. Brackets
c581a83896
GPU: Centralize SetDisplayFramebuffer().
2022-08-23 19:29:06 -07:00
Henrik Rydgård
60e129d88e
Break out Draw2D in a class
2022-08-23 11:12:23 +02:00
Henrik Rydgård
83b7386f7d
Switch reinterpret shaders over to the Draw2D framework.
2022-08-23 11:12:23 +02:00
Henrik Rydgård
65e4e249ec
More Draw2D refactoring
2022-08-23 11:12:23 +02:00
Henrik Rydgård
5415da10bf
Rename VirtualFramebuffer->format to fb_format to line up with fb_address and fb_stride (fundamental parameters)
2022-08-23 08:37:44 +02:00
Henrik Rydgård
a0722af107
Rename fmt->fb_format
2022-08-23 08:37:44 +02:00
Henrik Rydgård
51686f4936
Copy color from overlapping framebuffers on bind, under certain conditions.
...
Leads to much faster performance in Juiced 2.
This will later be expanded to handle more things in a more elegant way,
like the framebuffer overlap in God of War for the shadows and
color reinterpretation in a generic way.
Fixes #15728
2022-08-22 16:06:55 +02:00
Henrik Rydgård
8e7cf596b6
Address more feedback, cleanup scale parameter
2022-08-21 09:58:58 +02:00