Commit Graph
7271 Commits
Author SHA1 Message Date
Unknown W. Brackets c581a83896 GPU: Centralize SetDisplayFramebuffer(). 2022-08-23 19:29:06 -07:00
Unknown W. Brackets 86085335ca GE Debugger: Record 1 flip if no display calls.
Before we were waiting 4 flips before ending recording.
2022-08-23 19:20:14 -07: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 73c06bb776 Replacement: Be more consistent about base level. 2022-08-21 22:03:16 -07:00
Unknown W. Brackets 89a499b4d2 GLES: Correct preview of mip levels > 0.
Don't need to force level 0 anymore.  Software can show levels hardware
refuses to load.  This is consistent with other backends.
2022-08-21 16:47:46 -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 58adf3ee48 Merge pull request #15859 from hrydgard/depal-depth-565
Allow binding depth as 565 by going through depal
2022-08-21 19:54:02 +02:00
Henrik Rydgård 5f30c88e38 Merge pull request #15873 from unknownbrackets/softgpu-xfer-hazard
softgpu: Flush on transfer to pending tex read
2022-08-21 10:04:27 +02:00
Henrik Rydgård 5ad1301ee8 Merge pull request #15874 from unknownbrackets/softgpu-morph
softgpu: Correct morph weight updates
2022-08-21 10:03:47 +02: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
Unknown W. Brackets e14ca87900 softgpu: Correct morph weight updates.
Broke LittleBigPlanet character's face, for example.
2022-08-21 00:27:31 -07: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 88e8f95293 softgpu: Flush on transfer to pending tex read.
Potentially could use these for self-render, but so far we should be
detecting that so leaving it alone.
2022-08-20 23:22:21 -07:00
Unknown W. Brackets 3d52b445f1 softgpu: Restrict CLUT to proper size.
We had 15 KB more space than needed before.
2022-08-20 17:36:15 -07:00
Unknown W. Brackets 229c944208 GE Debugger: Include extended CLUT in frame dumps.
Not available on a real PSP, but used in an enhancement (see #15727.)
2022-08-20 17:35:06 -07: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
Unknown W. Brackets d61619db47 GPU: Dirty params when converting viewport state.
This flag will be false when we convert next time, so parameters won't get
updated as expected.
2022-08-20 14:03:24 -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