Henrik Rydgård
b592473416
Vulkan: Add a missing barrier that got lost in the refactor
2024-04-08 09:00:44 +02:00
Henrik Rydgård
036c386b35
More barrier optimizations
2024-04-07 22:20:37 +02:00
Henrik Rydgård
60f350056c
Vulkan: Optimize away a barrier in case of no depth buffer
2024-04-07 21:43:06 +02:00
Henrik Rydgård
78c0be3d8a
Delete now-unused code
2024-04-07 21:25:04 +02:00
Henrik Rydgård
d949331f67
More use of the auto image layout transition functions
2024-04-07 21:24:25 +02:00
Henrik Rydgård
7769bf06f1
Add a simplified wrapper for Transition*ImageAuto that takes a VKRImage
2024-04-07 21:14:45 +02:00
Henrik Rydgård
3e91095313
Replace the "FromOptimal" layout transitions with auto. This fixes some rendering errors on NV.
2024-04-07 21:14:45 +02:00
Henrik Rydgård
9c4dd32db0
Replace the "ToOptimal" layout transitions with the auto ones
2024-04-07 21:14:45 +02:00
Henrik Rydgård
58fea04b8a
Split the auto image layout transition function (color/depth-stencil)
2024-04-07 21:14:45 +02:00
Henrik Rydgård
6ac5a21846
Update the layout from within TransitionImageAuto
2024-04-07 21:14:45 +02:00
Henrik Rydgård
0bdbffd12f
Revert minor optimization that needs some more work first
2024-04-07 21:14:45 +02:00
Henrik Rydgård
a3d0cb1f12
Switch away from TransitionImageLayout2
2024-04-06 17:12:32 +02:00
Henrik Rydgård
e00f1f10a3
More barrier code simplification
2024-04-06 17:03:44 +02:00
Henrik Rydgård
4a5eb4bdfb
More cleanup
2024-04-06 17:03:40 +02:00
Henrik Rydgård
d28e9dc006
Minor cleanup
2024-04-06 17:03:40 +02:00
Henrik Rydgård
4ea58b64d4
Merge our two different Vulkan barrier batch implementations
2024-04-04 15:32:48 +02: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
d260cd0498
Some sanity checks.
2024-01-24 00:23:08 +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
6de05f13f1
More barrier batching
2023-12-30 10:41:59 +01:00
Henrik Rydgård
126d88ecfc
Back out clearly inconsequential/useless .reserve() calls
2023-12-29 08:27:56 +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
Herman Semenov
b8748ae9e5
[Common/File/GPU/Render/Input] Using reserve if possible
2023-12-15 14:00:51 +03:00
Henrik Rydgård
dd032dc533
Delete two unused structs
2023-11-11 10:55:54 +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
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
0ad2827e14
Vulkan: Fix synchronization when shutting the GPU down in-game.
2023-10-11 12:27:39 +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
3b22d1248e
Fix for Vulkan on 32-bit devices, oops.
2023-10-10 10:10:12 +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
Henrik Rydgård
397745ce14
Remove unused code
2023-10-10 09:02:35 +02:00
Henrik Rydgård
f0ee3b8daa
Fill in descriptors on the render thread in the PPSSPP UI.
2023-10-10 09:00:29 +02:00
Henrik Rydgård
dbe395dd00
Add a wrapper around VKRPipelineLayout / descsetlayout
2023-10-08 12:39:18 +02:00
Henrik Rydgård
5711259b86
Declare the back depth buffer as "transient". Allows allocating no memory for it on tiled GPUs.
...
We can't do the same for other depth buffers as we often need to
preserve them between passes.
2023-10-06 15:40:13 +02:00
Henrik Rydgård
ca4ee83038
Vulkan: Add debug names to renderpasses
2023-09-27 16:56:57 +02:00
Henrik Rydgård
2e171b22ec
Vulkan: Remove an assert that didn't give much actionable information. Replace with reporting.
2023-09-20 22:50:38 +02:00
Henrik Rydgård
10f93875c6
Fix the semantics of DenseHashMap to be consistent even when inserting nulls
2023-09-11 12:07:18 +02:00
Henrik Rydgård
ae29fd2951
Vulkan profiler: Show CPU command buffer recording timing even if GPU timing is unavailable
2023-06-14 09:15:29 +02:00
Henrik Rydgård
6d8069dfd1
Vulkan: Remove the remains of the input attachment experiment
...
Haven't been using these for a while.
I've come to the conclusion here that I think it's better to try to
deal with the issues using safe workarounds like copies, instead of
relying on features with somewhat iffy driver support that are not
universal across APIs anyway.
2023-06-13 20:46:27 +02:00
Henrik Rydgård
f54f905be5
Vulkan: Remove support for other index types than 16-bit.
...
We don't have any use for them anyway.
2023-05-30 10:15:34 +02:00
Henrik Rydgård
234c1f05b8
Apply the same optimizations to the Vulkan backend. Smaller effect than for OpenGL.
2023-05-23 08:54:41 +02:00
Henrik Rydgård
0b9dfac844
Make sure VKRRenderThreadTask isn't copied.
2023-05-23 08:54:41 +02:00
Henrik Rydgård
cf9a628a2e
AndroidContentURI: Move code from the header to cpp. Some assorted cleanup, add a unit test for Download paths
2023-05-16 16:08:51 +02:00
Henrik Rydgård
885415949e
Vulkan: Fix ordering of debug labels, fixing a new validation error.
2023-04-01 23:29:30 +02:00
Henrik Rydgård
b3e6b81e43
Implement delayed depth readbacks for Vulkan only
2023-02-07 23:13:36 +01:00
Henrik Rydgård
937975000b
Add a ReadbackMode parameter to more functions in the FramebufferManager
2023-02-05 13:57:45 +01:00
Henrik Rydgård
31df6bf0fe
Move some code around, get rid of some unnecessary fences
2023-02-05 00:35:30 +01:00
Henrik Rydgård
7b5def9ff6
Use VMA to manage readback memory
2023-02-04 23:52:38 +01:00
Henrik Rydgård
a67604d003
Tighten up shader compilation logging
2023-02-01 11:42:25 +01:00