Commit Graph

27253 Commits

Author SHA1 Message Date
Henrik Rydgård
192164c5f8
Merge pull request #12939 from hrydgard/tag-renderpasses
Add a name tag for all render steps (GL/Vulkan).
2020-05-21 12:01:01 +02:00
Henrik Rydgård
7d10a0c609 Remove a redundant framebuffer bind in CopyDisplayToOutput 2020-05-21 11:54:08 +02:00
Henrik Rydgård
fabe987c8f Add a name tag for all render steps (GL/Vulkan). Helps with debugging and should be cheap enough (a single pointer per "step"). 2020-05-21 11:24:05 +02:00
Henrik Rydgård
e8b7372263
Merge pull request #12938 from hrydgard/toca-fix-attempt
Move the check from #12908 into the firmware version check.
2020-05-20 12:04:07 +02:00
Henrik Rydgård
52a3c2248d Move the check from #12908 into the firmware version check.
The original change took care of #11660, let's hope it stay fixed. This fixes
Toca (#12936).
2020-05-20 11:47:55 +02:00
Henrik Rydgård
5367cdfdc9
Merge pull request #12935 from unknownbrackets/vulkan-bugs
Cleanup some Vulkan bug checks
2020-05-20 09:13:02 +02:00
Unknown W. Brackets
86bbb447d3 Vulkan: Avoid stencilAction != depthAction.
This is the only place we do it, and apparently there can be bugs on some
drivers when you do that.  Let's not.
2020-05-19 22:14:47 -07:00
Unknown W. Brackets
8d900bb432 Vulkan: Check driver version for Adreno 5xx bug.
It's now fixed at least as of this version (possibly earlier.)
2020-05-19 22:13:15 -07:00
Unknown W. Brackets
2e05d22eb7 Vulkan: Move Harvest Moon fix to Draw::Bugs.
Also, make it so you can skip using ini settings.
2020-05-19 22:12:30 -07:00
Henrik Rydgård
79299e19f9
Merge pull request #12934 from hrydgard/mali-stencil-workaround
Vulkan: Stencil initialization: Use the adreno path for Mali as well.
2020-05-19 23:37:48 +02:00
Henrik Rydgård
3a5e07ad4f Vulkan: Stencil initialization: Use the adreno path for Mali as well.
Appears to fix the Star Ocean issue and maybe more reported in #12890.

Strange though...
2020-05-19 23:29:33 +02:00
Henrik Rydgård
b001ca1e06
Merge pull request #12933 from hrydgard/vulkan-32bit-fix
Fix a case of pointer truncation in Vulkan on 32-bit. Fixes #12932
2020-05-19 21:50:56 +02:00
Henrik Rydgård
e64fdfa0c3 Fix a case of pointer truncation in Vulkan on 32-bit. Fixes #12932 2020-05-19 20:53:51 +02:00
Henrik Rydgård
69c092dce1 Vulkan crashfix (pNext was uninitialized) 2020-05-19 20:52:47 +02:00
Henrik Rydgård
f1b9943947
Merge pull request #12930 from unknownbrackets/gpu-stencil
GPU: Avoid unnecessary clear on stencil upload
2020-05-19 09:05:58 +02:00
Henrik Rydgård
886fff0990
Merge pull request #12931 from unknownbrackets/vulkan-postshader
Vulkan: Create FB compatible pipelines in Draw
2020-05-19 09:03:41 +02:00
Unknown W. Brackets
966ac4458a Vulkan: Fix leak and remove extra allocator.
The leak was because we restored immediately after initializing, and
therefore leaked several pipelines.

This allocator isn't used right now, so just using up memory.
2020-05-18 23:07:44 -07:00
Unknown W. Brackets
cb23c0c01d Vulkan: Create FB compatible pipelines in Draw.
The easiest way is just to create both and support both.  Perhaps we could
optimize out the creation of the framebuffer one.

Fixes #12928.
2020-05-18 22:45:20 -07:00
Unknown W. Brackets
396bf1d1c7 Vulkan: Expand logging of render steps a bit. 2020-05-18 21:38:36 -07:00
Unknown W. Brackets
2a5b465c44 D3D9: Avoid clearing color on stencil upload.
This makes it match Direct3D 9.  We ideally want to clear alpha, but
certainly not RGB.
2020-05-18 21:36:14 -07:00
Unknown W. Brackets
4ef4325fdb GPU: Avoid unnecessary clear on stencil upload.
In this common case, we've typically just bound the buffer to upload a
texture to it.  No need to start a new render pass.

This dodges #12927 but doesn't really fix the underlying issue.
2020-05-18 21:36:06 -07:00
Henrik Rydgård
612fdb957e Revert "Experimental commit that effectively reverts the Vulkan part of #12882."
This reverts commit 29d1f97dd5.
2020-05-19 00:44:42 +02:00
Henrik Rydgård
29d1f97dd5 Experimental commit that effectively reverts the Vulkan part of #12882.
For the #12927 investigation.
2020-05-19 00:42:34 +02:00
Henrik Rydgård
4ffc73bf5b Fix the Windows 32-bit build.
(It was complaining about inline assembly in a lambda, I guess at some
point we moved a call to Crash into a lambda and it became unhappy).
2020-05-19 00:10:39 +02:00
Henrik Rydgård
d37893d1ac Track scissors like we track viewports (bugfix?). 2020-05-18 23:21:03 +02:00
Henrik Rydgård
4e00a20c1f Show "debug build" on the splash screen, in debug builds. 2020-05-18 23:16:00 +02:00
Henrik Rydgård
1e6cd11d4e Vulkan: Switch the framebuffer-rebind-to-clear on reformat to, well, a normal clear instead.
Who knows, might be related to #12927 (but in that case we also have more problems).
2020-05-18 22:01:56 +02:00
Henrik Rydgård
6593ff9ff3
Merge pull request #12923 from unknownbrackets/ui-reporting
Fix crash on report feedback screen
2020-05-18 09:11:07 +02:00
Unknown W. Brackets
7fffe1d885 Vulkan: Verify scissor as well.
Vulkan spec requires both are set - we do set both, so let's catch any
mistakes.
2020-05-17 21:23:32 -07:00
Unknown W. Brackets
d295feda82 Vulkan: Add asserts to catch no viewport render.
Also assert to prevent a sync outside a frame, which goes badly.

The curRenderStep_ reset on same fb made some debugging easier, but should
not actually be hit in any real case.
2020-05-17 21:01:08 -07:00
Unknown W. Brackets
dc7ee54110 UI: Take reporting screenshot at frame end.
If we do it mid frame, we need to rebind the backbuffer and reset
viewport/scissor.  Without viewport, Intel drivers crash.

Doing it at the end of the frame keeps the code simple, although we often
create views an extra time.

Fixes #12897.
2020-05-17 20:37:26 -07:00
Henrik Rydgård
e29d79a5ae
Merge pull request #12922 from unknownbrackets/gpu-centralize
Centralize a bit, track render pass dependencies better
2020-05-18 00:48:16 +02:00
Henrik Rydgård
e216295d32 Vulkan validation: Switch to the new Khronos validation layer shipping with recent SDKs. 2020-05-18 00:40:14 +02:00
Unknown W. Brackets
059e2e5e16 Vulkan: Stop merge at clear/touched read only.
Before we would merge on a future render after a clear, which can't be
good.  But we can safely ignore a draw to another FB that reads from a
touched FB.
2020-05-17 15:04:21 -07:00
Unknown W. Brackets
112a58cb1a Vulkan: Make merge pass a bit easier to read. 2020-05-17 14:53:37 -07:00
Unknown W. Brackets
cab31c0118
Merge pull request #12920 from hrydgard/remove-audio-resampling-setting
Remove the Audio Resampling setting (now always on).
2020-05-17 15:05:27 -04:00
Henrik Rydgård
2843b8ef5f
Merge pull request #12486 from iota97/dpad
Rebindable touch right analog
2020-05-17 20:51:40 +02:00
Unknown W. Brackets
caf9d39fec GLES: Fix invalidation of backbuffer.
And of the stencil buffer.
2020-05-17 11:06:39 -07:00
Unknown W. Brackets
47bc11a682 Vulkan: Generalize dependency tracking.
Might as well track on all steps.  We also can know if the dst was fully
written to here.
2020-05-17 11:06:39 -07:00
Unknown W. Brackets
a36239473d GLES: Add dependency tracking for render passes.
Let's try to invalidate when it's possible.  We move the invalidate to the
end of the render when detected.
2020-05-17 11:06:39 -07:00
Unknown W. Brackets
32a7e7345e GPU: Centralize framebuffer download.
And try not to use a potentially-null nvfb.  Primarily this can happen on
Direct3D backends.
2020-05-17 10:59:33 -07:00
Henrik Rydgård
5e27612efe Buildfix 2020-05-17 19:27:57 +02:00
iota97
6f59f02b38 Support chain 2020-05-17 19:06:23 +02:00
Henrik Rydgård
90fd2d9e33 Remove the Audio Resampling setting (now always on). Having it off is not useful because it'll never sync up perfectly over time. 2020-05-17 19:00:48 +02:00
Henrik Rydgård
2b605f1370
Merge pull request #11876 from AreaScout/master
Fix: touchscreen evens on upcomming SDL2 versions which includes the …
2020-05-17 18:35:39 +02:00
Henrik Rydgård
0692b6dca6 Revert the loop check in StereoResampler, new one could accidentally keep looping when underrun severely (like if emulation stopped). 2020-05-17 18:16:26 +02:00
iota97
c83e2fb070 Memory reading CWCheat 2020-05-17 18:07:30 +02:00
iota97
69d806a83a Add postprocessing CWCHEAT 2020-05-17 18:07:30 +02:00
Henrik Rydgård
fdd0b372ad
Merge pull request #12919 from sum2012/master
Add more debug info in scePsmfPlayerStart
2020-05-17 16:37:12 +02:00
sum2012
2c3833c28d Add more debug info in scePsmfPlayerStart 2020-05-17 22:31:37 +08:00