Commit Graph
27588 Commits
Author SHA1 Message Date
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
Henrik Rydgård 7a6489ebb4 Merge pull request #12905 from unknownbrackets/postshader
Allow chained post-processing shaders
2020-05-17 16:09:05 +02:00
Unknown W. Brackets f5d5f56044 Merge pull request #12918 from hrydgard/ui-minor
Some minor UI fixes (missing homebrew, etc).
2020-05-17 10:07:44 -04:00
Unknown W. Brackets 25e0164933 Merge pull request #12917 from hrydgard/remove-custom-atomic-code
Remove custom atomic code
2020-05-17 10:02:38 -04:00
Henrik Rydgård 9ed9468d72 Make the IsValidPBP DISC_ID check a bit more lenient. Fixes an issue where some homebrew would no longer show in the list. 2020-05-17 15:12:38 +02:00
Henrik Rydgård 7c8bcb2ee4 Fix homebrew store button to work even after changing grid layouts (it lost its click handler) 2020-05-17 14:57:12 +02:00
Henrik Rydgård 90071fd868 Fix a crash bug in homebrew store 2020-05-17 14:44:11 +02:00
Henrik Rydgård a9befb5496 Remove our custom atomics code entirely. 2020-05-17 13:11:36 +02:00
Henrik Rydgård af18532095 Convert atomic code in core and ConsoleListener to use C++ atomics 2020-05-17 13:04:34 +02:00
Henrik Rydgård dc0bc0033e Merge pull request #12916 from hrydgard/more-samplerate-fixes
More audio buffering fixes (primarily affects SDL)
2020-05-17 13:04:16 +02:00
Henrik Rydgård 8491a674e2 Merge pull request #12914 from unknownbrackets/arm64jit
Switch: Be more consistent about writable code pointers
2020-05-17 12:17:00 +02:00
Henrik Rydgård 3f74ffbdf5 Reduce the SDL audio buffer size, 2048 is a bit excessive. Port the changes to the Qt SDL code. 2020-05-17 11:50:34 +02:00
Henrik Rydgård 67334e4ae7 StereoResampler: Make sure the target buffer size is large enough, taking SYSPROP_AUDIO_FRAMES_PER_BUFFER into account. 2020-05-17 11:46:12 +02:00
Henrik Rydgård f81dfa0171 Rename things to make more sense. 2020-05-17 11:05:53 +02:00
Henrik Rydgård c46424afd6 StereoResampler: Use C++ atomics 2020-05-17 10:21:02 +02:00
Henrik Rydgård 8b5b7d2496 Add some vaguely interesting stats 2020-05-17 10:21:02 +02:00
Henrik Rydgård 06c22497b7 SDL: If we get an audio device with a different freq than 44100, that's actually OK. 2020-05-17 10:21:02 +02:00