Commit Graph

215 Commits

Author SHA1 Message Date
Henrik Rydgård 7d24fca4e2 Crashfix when switching buffered/non-buffered with the game running 2024-10-25 12:00:28 +02:00
Henrik Rydgård 3a4b27b086 Fix some more presentation issues 2024-10-22 12:29:32 +02:00
Henrik Rydgård 99f7946471 Vulkan GraphicsPipeline: Fix an old and likely very rare race condition. 2024-10-22 11:02:26 +02:00
Henrik Rydgård 4d6905672e Bunch more linting 2024-10-10 11:57:10 +02:00
Henrik Rydgård 144b3a8a98 Vulkan validation error cleanups 2024-07-28 08:08:48 -06:00
Henrik Rydgård e01ca5b057 Logging API change (refactor) (#19324)
* Rename LogType to Log

* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.

* Mac/ARM64 buildfix

* Do the same with the hle result log macros

* Rename the log names to mixed case while at it.

* iOS buildfix

* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Henrik Rydgård 87ead3f492 Fix bad framebuffer bind in Parappa The Rapper 2024-05-29 12:23:54 +02:00
Henrik Rydgård 47f12dfeec Make linking to MoltenVK work 2024-05-23 09:41:00 +02:00
Henrik Rydgård 3802d4ee16 Try to resolve another race condition. Improve an assert. 2024-02-03 10:54:16 +01:00
Henrik Rydgård 86ea5665f0 Show some more Vulkan extensions in sysinfo 2024-02-01 17:08:54 +01:00
Henrik Rydgård c7ed87b352 Assorted paranoia and improved checks 2024-01-31 10:22:03 +01:00
Henrik Rydgård 25a1e6aa14 Some renaming, add a bunch of sanity debug-asserts 2024-01-30 11:14:21 +01:00
Henrik Rydgård ea180e54c9 Fix some "double-binds" of the backbuffer.
These are already eliminated by the queuerunner, but better not to
generate them in the first place, for easier sanity checks.
2024-01-30 10:44:18 +01:00
Henrik Rydgård ee62ffdb02 Audit our use of condition variables, fix some minor issues 2024-01-29 11:09:08 +01:00
Henrik Rydgård 22e91c98db More asserts 2024-01-24 11:36:25 +01:00
Henrik Rydgård 39cf5b5c30 Add more asserts to check the state of the render manager 2024-01-24 09:46:55 +01:00
Henrik Rydgård 0d2e5c32ab More sanity checks 2024-01-24 00:50:32 +01:00
Henrik Rydgård d260cd0498 Some sanity checks. 2024-01-24 00:23:08 +01:00
Henrik Rydgård 622aeaab6d Hopefully robustify some logic in EmuScreen enough 2024-01-24 00:06:01 +01:00
Henrik Rydgård d502929cb2 Minor cleanup 2024-01-22 11:19:09 +01:00
Henrik Rydgård 0bf7a98aff Replace DrainAndBlockCompileThreads with StopThreads, and same for resuming. 2024-01-22 11:06:50 +01:00
Henrik Rydgård 0e708367b5 Remove compileBlocked_ flag 2024-01-22 10:52:01 +01:00
Henrik Rydgård 6b5a4e3ba9 VulkanRenderManager: Move and rename some stuff to make the next change clearer 2024-01-22 10:50:07 +01:00
Henrik Rydgård 74f5be02a1 GameInfo: Try to reduce the locking a bit. 2024-01-18 22:52:56 +01:00
Henrik Rydgård ce2163eb93 Vulkan MSAA: Avoid creating backbuffer renderpasses with the wrong sample count, oops 2024-01-17 21:41:04 +01:00
Henrik Rydgård cbb4236cd8 Vulkan: Attempt to fix some more shutdown race conditions, simplify. 2024-01-17 14:49:49 +01:00
Henrik Rydgård 2b6bb46a98 Vulkan: Minor descriptor write optimization, add some debug asserts 2024-01-17 11:08:16 +01:00
Henrik Rydgård 7b738edfc9 Try to eliminate another shutdown deadlock (drain shader compile queue)
See #18705
2024-01-15 23:36:47 +01:00
Henrik Rydgård c1a7235767 Fix another shutdown race condition in the Vulkan backend 2024-01-15 17:06:00 +01:00
Henrik Rydgård d0faf250b5 Remove unused async compute pipeline creation 2024-01-15 12:38:59 +01:00
Henrik Rydgård 56c797e7f6 Fix possible hangs in ManagedTexture destruction. Change a thread name. 2024-01-15 10:47:16 +01:00
Henrik Rydgård 52d05aaa27 GPU profiling: Count how many descriptors we manage to deduplicate. 2024-01-12 11:31:06 +01:00
Henrik Rydgård b4fe03de8b Better solution, still pretty much optimal. 2024-01-10 18:14:59 +01:00
Henrik Rydgård 6de05f13f1 More barrier batching 2023-12-30 10:41:59 +01:00
Henrik Rydgård 484fbeb4cb Add end-of-init barrier 2023-12-30 10:41:59 +01:00
Henrik Rydgård 28189dc738 Vulkan render queue runner: Count commands in debug builds, like the GL backend. 2023-12-20 15:26:41 +01:00
Henrik Rydgård ac93419331 Merge the 1.16.6 branch into master
Also deletes some unused code.
2023-10-13 11:00:11 +02:00
Henrik Rydgård 6357b95ff5 Better version. 2023-10-12 23:33:54 +02:00
Henrik Rydgård f301035ba0 Step 1 2023-10-12 23:28:44 +02:00
Henrik Rydgård a507563708 Remove the exit-game sync again.
It's not actually needed until some of the additions made on master, and
in that case, I'm going to change the solution again.
2023-10-12 10:14:19 +02:00
Henrik Rydgård 2c751d39f8 Vulkan: Add simple delete count to GPU profiler, to make sure we don't have more resource churn
Also fix the render pass type name lookup table.
2023-10-12 09:02:45 +02:00
Henrik Rydgård d60c9a015f Vulkan: Fix synchronization when shutting the GPU down in-game. 2023-10-11 12:49:33 +02:00
Henrik Rydgård f769b2c8a3 Remove unused functionality from descpool 2023-10-11 12:29:57 +02:00
Henrik Rydgård 0ad2827e14 Vulkan: Fix synchronization when shutting the GPU down in-game. 2023-10-11 12:27:39 +02:00
Henrik Rydgård 183d49329a Allow writing directly into the packed descriptor buffer, saving a memcpy. 2023-10-11 11:02:17 +02:00
Henrik Rydgård 8ebc08185b Allocate descriptors in blocks of 8 instead of individually, to reduce overhead. 2023-10-10 10:17:56 +02:00
Henrik Rydgård 3d949b080d Prepare VulkanDescSetPool for block allocation 2023-10-10 09:14:10 +02:00
Henrik Rydgård 9fdc7e2372 Address feedback 2023-10-10 09:02:35 +02:00
Henrik Rydgård b38b46df0f Update comments 2023-10-10 09:02:35 +02:00
Henrik Rydgård 2b0192d818 Have FrameData structs for each pipeline layout, instead of multiple arrays 2023-10-10 09:02:35 +02:00