gdk
0860e208b2
Add missing clear layer parameter after rebase
2022-06-17 22:47:05 +01:00
gdk
8cac0e2b51
Fix error due to missing subpass dependency when Attachment Write -> Shader Read barriers are added
2022-06-17 22:47:05 +01:00
gdk
572759a4ac
Combine non-buffer with buffer image descriptor sets
2022-06-17 22:47:03 +01:00
riperiperi
2000070330
Flush queries on attachment change rather than program change
...
Occlusion queries are usually used in a depth only pass so the attachments changing is a better indication of the query block ending.
Write mask changes are also considered since some games do depth only pass by setting 0 write mask on all the colour targets.
2022-06-17 22:47:03 +01:00
gdk
1fac9dc29b
If MultiViewport is not supported, do not try to set more than one viewport/scissor
2022-06-17 22:47:02 +01:00
riperiperi
884ee76d7c
Update guest cache to v1.1 (due to specialization state changes)
...
This will explode your shader cache from earlier vulkan build, but it must be done. 😔
2022-06-17 22:47:00 +01:00
gdk
7838a45772
Add barrier before use of some modified images
2022-06-17 22:46:56 +01:00
gdk
2713703d45
Do not clear unbound framebuffer color attachments
2022-06-17 22:46:05 +01:00
gdk
fd2e53fdc6
Raise textures limit to 64 on Vulkan
2022-06-17 22:46:05 +01:00
gdk
7c32e4a3fe
Add missing barriers around CmdFillBuffer (fixes Monster Hunter Rise flickering on NVIDIA)
2022-06-17 22:42:58 +01:00
gdk
80d72504d4
Take componentMask and scissor into account when clearing framebuffer attachments
2022-06-17 22:42:58 +01:00
gdk
746eded2cf
Use explicit subgroup size if we can (might fix some block flickering on AMD)
2022-06-17 22:42:57 +01:00
riperiperi
eda65c8dd3
Copy query results after RP ends, rather than ending to copy
...
We need to end the render pass to get the data (submit command buffer) anyways...
Reduces render passes created in games that use queries.
2022-06-17 22:42:51 +01:00
riperiperi
d45b28f6b7
Cleanup for merge (note: disables spir-v)
2022-06-17 22:42:50 +01:00
riperiperi
f6196fe07b
Multithreaded Pipeline Compilation
2022-06-17 22:42:49 +01:00
gdk
6810796638
Multisampling support
2022-06-17 22:42:46 +01:00
gdk
9b779adf57
Better workaround for AMD vertex buffer size alignment issue
2022-06-17 22:42:39 +01:00
gdk
522e7933e8
Workaround for wrong last attribute on AMD (affects FFVII, STRIKERS1945, probably more)
2022-06-17 22:42:39 +01:00
gdk
36b3ab0741
Fix draw outside of render pass and missing capability
2022-06-17 22:42:39 +01:00
gdk
5a3695c968
Don't pause transform feedback for multi draw
2022-06-17 22:42:39 +01:00
gdk
52249e50dd
Fix transform feedback on Intel, gl_Position feedback and clears to inexistent depth buffers
2022-06-17 22:42:38 +01:00
riperiperi
d14dbb0cff
Use SupportBufferUpdater, add single layer flush
2022-06-17 22:42:38 +01:00
gdk
f6a4fe8f5f
Fix some validation errors around extended dynamic state
2022-06-17 22:42:37 +01:00
riperiperi
4994e50d1c
Device local mapping for all buffers
...
May avoid issues with drivers with NVIDIA on linux/older gpus on windows when using large buffers (?)
Also some performance things and fixes issues with opengl games loading textures weird.
2022-06-17 22:42:36 +01:00
gdk
5fbfa9a9bd
DrawTexture support
2022-06-17 22:42:32 +01:00
riperiperi
e0edaa177e
Allow multithreading shaderc and vkCreateShaderModule
...
You'll only really see the benefit here with threaded-gal or parallel shader cache compile.
Fix shaderc multithreaded changes
Thread safety for shaderc Options constructor
Dunno how they managed to make a constructor not thread safe, but you do you. May avoid some freezes.
2022-06-17 22:42:31 +01:00
gdkchan
4513e8b226
WIP Vulkan implementation
2022-06-17 22:42:30 +01:00