summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/Vulkan
AgeCommit message (Collapse)Author
2023-01-27VideoBackends: add a way to load data into a specific level AND layer, ↵iwubcode
default to layer 0
2023-01-27VideoBackends: update Vulkan's 'CopyRectangleFromTexture' to copy one layer, ↵iwubcode
copying more than one layer doesn't make sense given that we provide both the source/destination layer
2022-12-29VideoCommon: De-globalize GeometryShaderManager class.Admiral H. Curtiss
2022-12-29Merge pull request #11388 from AdmiralCurtiss/globals-vertexshadermanagerMai
VideoCommon: De-globalize VertexShaderManager class.
2022-12-28Merge pull request #11219 from K0bin/android-vk-alidationJMC47
VideoBackends:Vulkan: Migrate to VK_EXT_debug_utils
2022-12-28VideoCommon: De-globalize VertexShaderManager class.Admiral H. Curtiss
2022-12-27VideoCommon: De-globalize PixelShaderManager class.Admiral H. Curtiss
2022-12-27VideoBackends:Vulkan: Replace debug_report with debug_utilsRobin Kertels
The former is deprecated and pretty much all modern drivers support VK_EXT_debug_utils. Android drivers dont support it. On those drivers, we use the implementation provided by the validation layers.
2022-12-22Follow-up on a four-year-old Android NDK workaroundMinty-Meeo
Surely this is fixed by now.
2022-12-19Merge pull request #11286 from K0bin/vk-query-fixJMC47
VideoBackends: Query fixes and cleanups
2022-12-04Merge pull request #11262 from K0bin/present-syncAdmiral H. Curtiss
VideoBackends:Vulkan: Synchronize presentation
2022-11-29VideoBackends: Rename query_type to query_groupRobin Kertels
2022-11-29VideoBackends:Vulkan: Fix incorrect barriers in StagingBufferRobin Kertels
HOST barriers need to be issued regardless of whether the memory type is coherent and we need to properly synchronize writes to the buffer.
2022-11-29VideoBackends:Vulkan: Fix queriesRobin Kertels
Fixes both checking whether queries are done and actually resets query pools.
2022-11-23Fix build errors related to formatting non-scoped enumsPokechu22
2022-11-07VideoBackends:Vulkan: Synchronize presentationRobin Kertels
Synchronize with the submission thread if the last present is not done yet.
2022-10-31VideoBackends:Vulkan: Fix 0 size descriptor poolsRobin Kertels
[ VUID-VkDescriptorPoolCreateInfo-maxSets-00301 ] Object 0: handle = 0x7f1,b8d,3cd,e70, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xa1,70e,236 | vkCreateDescriptorPool(): pCreateInfo->maxSets is not greater than 0. The Vulkan spec states: maxSets must be greater than 0
2022-10-25Merge pull request #10977 from tellowkrinkle/FixBackendMultithreadingJMC47
VideoBackends:Vulkan: Improve backend multithreading
2022-10-24Merge pull request #11028 from tellowkrinkle/MetalFixesJMC47
Various Metal renderer improvements
2022-10-23Merge pull request #10890 from tellowkrinkle/VertexLineExpandJMC47
VideoCommon: Add vertex shader point/line expansion
2022-10-23VideoBackends:Vulkan: Clean up unused memory allocation codeRobin Kertels
2022-10-23VideoBackends:Vulkan: Use VMA for stream bufferRobin Kertels
2022-10-23VideoBackends:Vulkan: Use VMA for bounding boxRobin Kertels
2022-10-23VideoBackends:Vulkan: Use VMA for staging buffersRobin Kertels
2022-10-22VideoBackends:Vulkan: Add support for vertex shader point and line expansionTellowKrinkle
2022-10-23VideoBackends:Vulkan: Set up VMARobin Kertels
Co-authored-by: iwubcode <iwubcode@users.noreply.github.com>
2022-10-17VideoBackends:Vulkan: Improve backend multithreadingTellowKrinkle
Makes the multiple threads actually able to run at the same time
2022-10-17Merge pull request #11122 from K0bin/descriptor-overhaulAdmiral H. Curtiss
VideoBackends:Vulkan: Allocate descriptor pools as needed
2022-10-16VideoBackends:Vulkan: Allocate descriptor pools as neededRobin Kertels
2022-10-12Remove varargs support from LOG_VULKAN_ERRORPokechu22
Nothing currently uses it. It could theoretically be replaced with fmt support, but I don't think the LOG_VULKAN_ERROR macro is that useful and it'd be better to replace it with regular logging instead.
2022-10-08VideoBackends:Vulkan: Fix command buffer cleanupRobin Kertels
2022-10-08VideoBackends:Multiple: More GPUs with broken subgroup opsTellowKrinkle
2022-10-04Vulkan/CommandBufferManager: Show error code in PanicAlerts.Admiral H. Curtiss
2022-09-30Merge pull request #11090 from K0bin/submit-reworkJMC47
Vulkan: Raise number of command buffers
2022-10-01VideoBackends:Vulkan: Raise number of command buffersRobin Kertels
Avoid waiting for earlier submissions when we flush more often. The vertex manager will flush more often if the game accesses the EFB on the CPU, to give the GPU a head start.
2022-10-01VideoBackends:Vulkan: Associate descriptor pool with frame rather than ↵Robin Kertels
command buffer
2022-10-01VideoBackends:Vulkan: Decouple available command buffers from frames in flightRobin Kertels
2022-10-01VideoBackends:Vulkan: Only synchronize with submission thread when necessaryRobin Kertels
We only need to synchronize with the submission thread when submitting on the GPU thread or when waiting for a command buffer.
2022-10-01VideoBackends:Vulkan: Fix validation error around surface_capabilities2Robin Kertels
2022-09-30VideoBackends:Vulkan: Workaround slow vkCmdCopyImageToBuffer on QCom driverRobin Kertels
2022-09-19VideoBackends:Vulkan: Make dynamic vertex loader optionalTellowKrinkle
Makes it easier to disable in the future if support for VK_EXT_vertex_input_dynamic_state is added
2022-09-19VideoBackends:Vulkan: Dynamic vertex loader supportTellowKrinkle
2022-09-19VideoCommon: Add separate pipeline usage for UberShadersTellowKrinkle
2022-09-19VideoCommon: Add dynamic vertex loader to ubershadersTellowKrinkle
2022-08-23Use `__VA_OPT__(, ) __VA_ARGS__` instead of `##__VA_ARGS__`Pokechu22
Per https://en.cppreference.com/w/cpp/preprocessor/replace#.23_and_.23.23_operators the `##` behavior is a nonstandard extension; this extension seems to be supported by all compilers we care about, but IntelliSense in visual studio doesn't correctly handle it, resulting in false errors in the IDE (but not when compiling). Per https://en.cppreference.com/w/cpp/preprocessor/replace#Function-like_macros C++20 introduced a workaround, where `__VA_OPT__(, )` generates a comma if and only if `__VA_ARGS__` is non-empty. This PR replaces all occurrences, with the exception of Externals, DSPSpy (which is not likely to be edited in MSVC and does not target C++20 currently), and JitArm64_Integer.cpp (which uses `Function(__VA_ARGS__)`, and thus does not ever need a comma).
2022-08-17Vulkan: Remove unused swap chain functionsPokechu22
These were added in 5e29508b8f4747e92e8de68b75971f26e4a78cd4 and 1f2d43c8709e5fab2f8c3c7de81bdf160b5f6363, but were replaced with CONFIG_CHANGE_BIT_VSYNC and CONFIG_CHANGE_BIT_STEREO_MODE in e4b205c76937d379cd9043939e2cef1651b1a21b.
2022-07-21VideoBackends:Multiple: Grammar fixesTellowKrinkle
2022-07-21VideoBackends:Metal: MSAA supportTellowKrinkle
2022-07-21VideoBackends: Add Metal rendererTellowKrinkle
2022-07-13VideoCommon: Better driver bug handlingTellowKrinkle
Adds a pass to process driver deficiencies between UID caching and use, allowing a full view of the whole pipeline, since some bugs/workarounds involve interactions between blend modes and the pixel shader