Henrik Rydgård
a7642bac15
Replace faulty layout transition deduplication algorithm.
2022-09-25 23:24:54 +02:00
Henrik Rydgård
894ab45677
Vulkan: Add debug names to our command buffers, so you can see which one errored in validation
2022-09-25 23:24:29 +02:00
Unknown W. Brackets
e6db0bef2d
Merge pull request #16099 from hrydgard/vulkan-dont-always-alloc-depth
...
Vulkan: Avoid allocating depth images for stuff like temp copies, depal buffers etc.
2022-09-25 08:05:50 -07:00
Henrik Rydgård
70c5ca62e6
Remove debug log. Add some new debug log though, unrelated to this PR, for fb clut + fb texture. Plus a couple asserts.
2022-09-25 09:56:39 +02:00
Henrik Rydgård
753fd13494
Vulkan: Avoid allocating depth images for stuff like temp copies, depal buffers etc.
...
Pretty small impact, but good to do.
An interesting extension of this would upconvert framebuffers in the
FramebufferManager to have a depth buffer the first time depth is used on them,
but this doesn't do that yet.
2022-09-24 23:21:48 +02:00
Henrik Rydgård
9f3dfe7ebe
Vulkan: Don't compile pipeline variants that don't make sense given their flags.
...
Ran into this with cache files from previous version of my change.
Also bumping the shader cache ID again to avoid this in other ways, but
good to be robust here.
2022-09-24 22:39:22 +02:00
Unknown W. Brackets
7b1ec28c30
Vulkan: Avoid crash on two backbuffer steps.
...
Happens when resuming from stepping, sometimes: first
EmuScreen_BackBuffer, which is done so UI is functional during stepping,
and then the actual blit.
Since this is an uncommon case, let's just allow it by reusing the
presentCmd instead of submitting it early. Otherwise it ends up in a
pending state.
2022-09-23 18:47:51 -07:00
Henrik Rydgård
1259283c2e
More tweaks, fix crash on exit (double-join thread)
2022-09-23 22:10:29 +02:00
Henrik Rydgård
df1297bccf
Small tweak
2022-09-23 20:51:46 +02:00
Henrik Rydgård
c671b3f413
Can't seem to get around this condition variable... Oh well.
2022-09-23 20:45:52 +02:00
Henrik Rydgård
f6c78584f6
Readback fix
2022-09-23 19:45:50 +02:00
Henrik Rydgård
ef7c8844f8
Greatly simplify the thread synchronization.
2022-09-23 19:40:50 +02:00
Henrik Rydgård
f784112814
Flatten the Run function, to make it easier to reorganize.
2022-09-23 19:40:50 +02:00
Henrik Rydgård
5e63cdbcc4
Make functions private that should be private
2022-09-23 19:40:50 +02:00
Henrik Rydgård
7bef90297c
Best practices layer warning: Don't pass in unused clear values. (probably zero impact, heh).
2022-09-23 13:54:14 +02:00
Henrik Rydgård
ac4ca592c3
Handle depth buffer write-after-write hazards in the queue runner
2022-09-23 13:47:11 +02:00
Henrik Rydgård
0acfa906b4
Fix leak of shader modules from thin3d.
2022-09-23 13:31:32 +02:00
Henrik Rydgård
ac7ca963db
Make valgrind happy
2022-09-23 12:24:43 +02:00
Henrik Rydgård
ac3eb876a8
Fix memory leak (of Promise objects) in VK pipeline wrappers
2022-09-23 10:56:46 +02:00
Henrik Rydgård
c76d7e844c
Fix Vulkan regression of #16075 due to silly typo.
2022-09-22 19:37:46 +02:00
Henrik Rydgård
11b807828f
Fix for render pass merge
2022-09-22 10:22:29 +02:00
Henrik Rydgård
6d2f29e7eb
If depth or stencil are cleared in a renderpass, set the pipeline flag.
2022-09-22 10:06:05 +02:00
Henrik Rydgård
8e30a7ccfc
Vulkan: Don't have renderpasses store/load depth buffers when we don't use them
2022-09-22 10:06:05 +02:00
Unknown W. Brackets
30454f8dc7
Vulkan: Avoid crash in headless on finish.
2022-09-21 00:09:34 -07:00
Henrik Rydgård
f6cb6c7695
Submit main command buffer before acquire. Fix sync bug.
2022-09-20 17:52:48 +02:00