Commit Graph

388 Commits

Author SHA1 Message Date
Henrik Rydgård
1fbf685504 Avoid vertically merging the two main framebuffers, even if FramebufferAllowLargeVerticalOffset is on. 2024-02-04 11:26:20 +01:00
Henrik Rydgård
ea180e54c9 Fix some "double-binds" of the backbuffer.
These are already eliminated by the queuerunner, but better not to
generate them in the first place, for easier sanity checks.
2024-01-30 10:44:18 +01:00
Henrik Rydgård
51097279c9 Vulkan: Fix race condition when changing MSAA mode with the game running "behind" the menu. 2024-01-23 11:28:45 +01:00
Henrik Rydgård
a6f041568b Allow merging framebuffers vertically like the old Juiced 2 fix.
Fixes Tokimeki Memorial 4 rendering.

Fixes #6379, see comments.
2023-12-30 22:40:07 +01:00
Henrik Rydgård
437b292b7d Tactics Ogre: Remove a redundant readback operation it performs a lot. 2023-12-21 12:37:34 +01:00
Henrik Rydgård
748193f227 Fix issue with misdetection of framebuffer copies.
Fixes #18512
2023-12-14 23:16:21 +01:00
Henrik Rydgård
e62614498e Buildfix mac (name collision with NO...) 2023-12-13 16:48:07 +01:00
Henrik Rydgård
caec201c4d Make "Skip GPU readbacks" a multi-choice option, for easier experimentation by users 2023-12-13 16:18:44 +01:00
Henrik Rydgård
8d8ff5886b Fix issue where nothing had started a render pass when we wanted to clear the screen. 2023-12-11 13:06:15 +01:00
Henrik Rydgård
26a51191b3 Cleaner solution to previous commit 2023-12-06 09:54:03 +01:00
Henrik Rydgård
8588b11a6a Rename MayIntersectFramebuffer to MayInteresectFramebufferColor 2023-12-06 09:42:44 +01:00
Henrik Rydgård
88f2657bb1 Allow block transfers from RAM to depth buffers.
Reuses the existing compat flag BlockTransferDepth.

I do aim to remove that compat flag in the future, it's probably not
even necessary here, it's just that general depth block transfers were
already gated on it.

Fixes #17878
2023-12-06 00:29:09 +01:00
Henrik Rydgård
6b8ec972fb A couple of warning fixes (real issues though small) 2023-12-05 01:12:42 +01:00
Henrik Rydgård
d584162e06 Merge pull request #18462 from hrydgard/framebuffer-listing-overlay
Framebuffer listing overlay
2023-12-02 18:51:33 +01:00
Henrik Rydgård
6d977b4a12 Remove unnecessary struct FramebufferInfo 2023-12-02 13:56:18 +01:00
Henrik Rydgård
4ef54169af Add a compat.ini setting to allow delayed GPU readbacks, for experimentation. 2023-12-02 11:34:59 +01:00
Henrik Rydgård
b636356f36 copy: Reverse the order of the y and seq heuristics 2023-12-01 20:40:12 +01:00
Henrik Rydgård
cef17589d2 Move the oversize copy detection to a better location (less false positive) 2023-12-01 00:30:06 +01:00
Henrik Rydgård
d9365a6df1 FramebufferCopy: New framebuffer candidate sorting, similar to block transfer detection.
The previous attempt was simply flawed.
2023-12-01 00:10:16 +01:00
Henrik Rydgård
7920e86098 Add heuristic, fixing video flicker in Naruto UNH 2 caused by copy to wrong target. 2023-11-30 22:19:52 +01:00
Henrik Rydgård
dae758e5f4 Fix some bugs and mistakes found by Nemoumbra through static analysis 2023-11-26 13:43:11 +01:00
Henrik Rydgård
77825484a0 If available, use 16-bit texture formats for MakePixelTexture when appropriate.
Optimization for God of War on low-end platforms. Avoids calling a color
conversion function that's currently only SIMD-optimized on x86, so will
also benefit ARM a little bit.
2023-11-12 15:58:03 +01:00
Henrik Rydgård
49f5da370a Simplify the logic in MakePixelTexture a bit 2023-11-12 11:19:45 +01:00
Henrik Rydgård
cc6f9a73ca Oops, fix for previous commit. And minor optimization. 2023-11-12 01:32:02 +01:00
Henrik Rydgård
632fa1c9d6 Cache and hash data for DrawPixels.
We already had a cache to reuse texture objects so just
opportunistically reuse them when easy to do so.
2023-11-11 19:58:12 +01:00