Henrik Rydgård
d1336fe15f
Small Draw2D refactor
2022-08-23 08:37:44 +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
8fdd00db8c
Merge pull request #15888 from hrydgard/copy-color-on-bind
...
Copy color from overlapping framebuffers on bind, under certain conditions
2022-08-23 08:37:33 +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
e3943f6d0d
Implement smoothed depal for the "old" depal path as well.
2022-08-22 15:34:26 +02:00
Henrik Rydgård
2a6015c1e3
Better checks for smoothed depal
2022-08-22 15:25:28 +02:00
Henrik Rydgård
6558bde0f6
Remove SmoothedDepal compat setting, instead detect the ramp directly.
2022-08-22 15:24:41 +02:00
Henrik Rydgård
f5e6754ac0
Special case depal lookups for Test Drive's strange usage.
...
This implements the hack I suggested in #13355 , where instead of first
reducing the color to RGB565 as the real game does, we just take each
channel at full precision and do the lookup according to the mask,
linearly filtering the palette.
This makes the game look a lot nicer and is also a small optimization,
but the hack is very specific so kinda ugly in a way.
2022-08-22 15:19:38 +02:00
Henrik Rydgård
b39b74e602
More renaming. Fix shader view for Vulkan
2022-08-22 12:30:51 +02:00
Henrik Rydgård
82a6c42e17
DepalettizeCommon -> TextureShaderCommon. Simplifications.
2022-08-22 12:21:20 +02:00
Henrik Rydgård
58a6fd3395
Convert TextureShaderApplier to a member function in DepalCache.
2022-08-22 11:45:52 +02:00
Henrik Rydgård
383adcb870
Simplify depal shader apply code a bit.
2022-08-22 11:31:27 +02:00
Henrik Rydgård
3c307c9857
Merge pull request #15884 from unknownbrackets/texreplace-io-async
...
Replacement: Read files only within time budget
2022-08-22 11:10:16 +02:00
Unknown W. Brackets
e473eb9f5e
Replacement: Read files only within time budget.
...
When delayed texture load is enabled. Intended to reduce IO delays on
Android.
2022-08-21 22:07:05 -07:00
Unknown W. Brackets
afc9a14b37
GPU: Share CLUTs if no extended CLUT.
...
Oops, this was backwards. See #15878 .
2022-08-21 16:46:51 -07:00
Henrik Rydgård
a11e7e167b
More D3D9 work on depth textures. Something still missing.
2022-08-21 09:58:58 +02:00
Henrik Rydgård
8e7cf596b6
Address more feedback, cleanup scale parameter
2022-08-21 09:58:58 +02:00
Henrik Rydgård
80772dd18e
Remove leftover resolutionScale depal config parameter
2022-08-21 09:58:58 +02:00
Henrik Rydgård
668de1f544
Compatibility check
2022-08-21 09:58:58 +02:00
Henrik Rydgård
9cc8cfaa08
Use a DX9-compatible method to pass texwidth and height. the effect doesn't work on DX9 yet though.
2022-08-21 09:58:58 +02:00
Henrik Rydgård
ca24f1b9aa
Fixes for D3D11
2022-08-21 09:58:58 +02:00
Henrik Rydgård
e2707d3ab3
Remove debug code, cleanup
2022-08-21 09:58:58 +02:00
Henrik Rydgård
412d44dc92
Fix glitch when changing render resolution
2022-08-21 09:58:58 +02:00
Henrik Rydgård
89c96142a1
Really not sure how we can detect whether a depth deswizzle is needed :( Hopefully temporary flag...
2022-08-21 09:58:58 +02:00
Henrik Rydgård
f3496d34c8
Texture bind channel fix. Still need to figure out a way to decide to swizzle or not.
2022-08-21 09:58:58 +02:00
Henrik Rydgård
e6b60026d1
Fix graphics in Ratchet & Clank. WIP
2022-08-21 09:58:58 +02:00
Henrik Rydgård
346a252593
Fix naming of temp fbos to be in PSP pixels
2022-08-21 09:58:58 +02:00
Henrik Rydgård
5a7bddbfa6
Allow binding depth as 565 by going through depal.
...
This is a partial fix for #6105 (Ratchet & Clank particles visible
through things), but there's still weird glitchiness. There's a pass
during rendering that scrambles the mini depth buffer by using a
triangle mesh. I wonder if it's trying to simulate the swizzle? But it
doesn't really look like it...
2022-08-21 09:58:58 +02:00
Henrik Rydgård
5097a6a8fb
Merge pull request #15872 from unknownbrackets/tex-3d
...
GPU: Restrict mip CLUT enhancement a bit
2022-08-21 08:45:08 +02:00
Unknown W. Brackets
e374ea6b21
GPU: Restrict mip CLUT enhancement a bit.
...
Can't replicate this behavior on a real PSP.
In case a game sets the separate CLUT flag by accident, ignore except
in a safe case that occurs in Misshitsu no Sacrifice. See #15727 .
2022-08-20 17:32:45 -07:00
Henrik Rydgård
669ce4b99d
Merge pull request #15870 from unknownbrackets/gpu-viewport-state
...
GPU: Dirty params when converting viewport state for sw transform
2022-08-21 02:22:26 +02:00
Unknown W. Brackets
5d46948eca
GPU: Correct depal CLUT texture for 5551/565.
...
See #15823 .
2022-08-20 15:36:13 -07:00
Unknown W. Brackets
b5a4843c1f
GPU: Purify ConvertViewportAndScissor().
...
This makes it harder to misuse. See #15856 .
2022-08-20 14:21:11 -07:00
Henrik Rydgård
5046cbd015
Address feedback to PR #15858
2022-08-20 17:23:51 +02:00
Henrik Rydgård
29ea3ffe0c
Restore the clearing optimization, avoiding unnecessary depth copies
2022-08-20 09:46:15 +02:00
Henrik Rydgård
12db0e52d4
Fix deferred-depth for bezier/spline. Move updating of last_frame_depth_render to GPUCommon.
2022-08-20 08:29:33 +02:00
Henrik Rydgård
97dbba0ec3
Minor fixes. Everything seems fine now.
2022-08-20 08:29:33 +02:00
Henrik Rydgård
5d8fe4c2a8
Implement copying color to depth on load. However, weird stuff is happening..
2022-08-20 08:29:33 +02:00
Henrik Rydgård
94ade8c751
Extract depth copies to CopyToDepthFromOverlappingFramebuffers
2022-08-20 08:29:33 +02:00
Henrik Rydgård
886679c7ec
Remove the color-to-depth mode
2022-08-20 08:29:33 +02:00
Henrik Rydgård
a0ac2dffc7
Defer depth copies until depth buffer is actually used.
...
Fixes
2022-08-20 08:29:33 +02:00
Henrik Rydgård
68480c548d
Texture bind channel fix
2022-08-20 08:07:11 +02:00
Henrik Rydgård
295f5f391e
More consistent handling of lack of depth texture support. Small log improvement.
2022-08-20 08:05:53 +02:00
Henrik Rydgård
bd3d97b17b
Fix bug in framebuffer matching where the wrong format was checked for depth matching. Fixes #15867
2022-08-20 07:59:11 +02:00
Henrik Rydgård
76333f90fe
Bias towards the most recently written framebuffer
2022-08-17 23:51:05 +02:00
Henrik Rydgård
fde369332b
Remove restrictions on VRAM addresses for depth and color
2022-08-17 23:46:38 +02:00
Henrik Rydgård
31773b42ba
Always attempt to match both depth and color
2022-08-17 23:35:36 +02:00
Henrik Rydgård
b5f0e26c24
Pre-reject DXT formats, Misc
2022-08-17 23:31:36 +02:00
Henrik Rydgård
705b34d868
Show seqCount in candidate list
2022-08-17 23:25:07 +02:00