Commit graph

190 commits

Author SHA1 Message Date
Liam fb2af6a41e vulkan: use plain fences when timeline semaphores are not available 2023-04-14 22:53:37 -04:00
Jan Beich 604f887377 externals: update Vulkan-Headers to v1.3.246 2023-04-01 05:38:54 +00:00
Liam 09a866fe79 vulkan: disable extendedDynamicState3ColorBlendEquation on radv 2023-03-15 15:55:07 -04:00
Liam 5be8a74b0c general: fix spelling mistakes 2023-03-12 11:33:01 -04:00
Liam cd7e0b03b7 vulkan_common: disable vertexInputDynamicState on unsupported driver 2023-03-01 22:48:12 -05:00
Liam 77d98593dc nsight_aftermath_tracker: update for latest Aftermath SDK 2023-01-21 13:01:19 -05:00
Morph bd62fdca7a Merge pull request #9596 from liamwhite/mvk
MoltenVK: restrict number of vertex attributes/bindings to 16
2023-01-10 18:11:44 -05:00
Liam 73c62bbc7a vulkan_common: fix indirect draw with count 2023-01-10 09:43:36 -05:00
TellowKrinkle 6e8caa48e7 MoltenVK: restrict number of vertex attributes/bindings to 16 2023-01-09 19:01:09 -05:00
Liam 8157a52821 vulkan_device: refactor feature testing 2023-01-09 16:12:16 -05:00
Narr the Reg a445e93e52 Merge pull request #9570 from liamwhite/less-clock-boost
renderer_vulkan: disable clock boost on unvalidated devices
2023-01-07 10:41:37 -06:00
Liam f82c3649c3 vulkan_device: avoid attempt to access empty optional 2023-01-06 21:23:21 -05:00
Liam 652b95d1b8 renderer_vulkan: disable clock boost on unvalidated devices 2023-01-06 19:07:47 -05:00
liamwhite 41958ff4ae Merge pull request #9552 from liamwhite/turbo
vulkan: implement 'turbo mode' clock booster
2023-01-06 09:59:59 -05:00
liamwhite 7ad49399b3 Merge pull request #9528 from liamwhite/mvk-nulldesc
renderer_vulkan: implement fallback path for null buffer descriptors
2023-01-05 18:31:55 -05:00
liamwhite 075f942d5d Merge pull request #9536 from liamwhite/debug-utils
vulkan_common: unify VK_EXT_debug_utils and selection of validation layer
2023-01-05 18:31:45 -05:00
Wollnashorn ef0b585b0b video_core/vulkan: Added VkPipelineCache to store Vulkan pipelines
As an optional feature which can be enabled in the advanced graphics configuration, all pipelines that get built at the initial shader loading are stored in a VkPipelineCache object and are dumped to the disk.

These vendor specific pipeline cache files are located at `/shader/GAME_ID/vulkan_pipelines.bin`. This feature was mainly added because of an issue with the AMD driver (see yuzu-emu#8507) causing invalidation of the cache files the driver builds automatically.
2023-01-05 21:02:44 +01:00
Liam 1a32e03a0f vulkan: implement 'turbo mode' clock booster 2023-01-04 22:22:01 -05:00
Liam 2e1c5b8310 renderer_vulkan: implement fallback path for null descriptors 2023-01-04 22:14:01 -05:00
Fernando Sahmkow 98b7ebe02d Vulkan: Update blacklisting to latest driver versions. 2023-01-03 21:16:43 -05:00
Liam 527c844a44 vulkan_common: blacklist radv from extended_dynamic_state2 on drivers before 22.3.1 2023-01-01 16:43:58 -05:00
Liam af9b730db8 video_core: fix build 2023-01-01 16:43:58 -05:00
Fernando Sahmkow e6e49e584f MacroHLE: Final cleanup and fixes. 2023-01-01 16:43:58 -05:00
Fernando Sahmkow 67a706d812 Vulkan: Implement Dynamic State 3 2023-01-01 16:43:58 -05:00
Fernando Sahmkow af68dc011b Vulkan Implement Dynamic State 2 LogicOp and PatchVertices 2023-01-01 16:43:58 -05:00
Fernando Sahmkow dc0f7dea8f Vulkan: Implement Dynamic States 2 2023-01-01 16:43:57 -05:00
Fernando Sahmkow b5b0ec9429 MacroHLE: Implement DrawIndexedIndirect & DrawArraysIndirect. 2023-01-01 16:43:57 -05:00
Fernando Sahmkow f2f2784817 MacroHLE: Add MultidrawIndirect HLE Macro. 2023-01-01 16:43:57 -05:00
Liam 86854a2384 vulkan_common: unify VK_EXT_debug_utils and selection of validation layer 2023-01-01 11:59:47 -05:00
Jan Beich f3412998f0 externals: update Vulkan-Headers to v1.3.238 2022-12-19 17:14:29 +00:00
liamwhite db106151d7 Merge pull request #7450 from FernandoS27/ndc-vulkan
Vulkan: Add support for VK_EXT_depth_clip_control.
2022-12-17 16:08:10 -05:00
Narr the Reg 016590e25d Merge pull request #9431 from liamwhite/sixty-five-oh-two
vulkan_common: declare storageBuffer8BitAccess
2022-12-15 17:52:16 -06:00
FernandoS27 11f29ec173 Vulkan: Add support for VK_EXT_depth_clip_control. 2022-12-13 21:39:18 -05:00
Liam aec084e315 vulkan_common: declare storageBuffer8BitAccess 2022-12-13 18:28:50 -05:00
yzct12345 462220fe15 Fix validation errors on less compatible Intel GPU 2022-12-12 20:53:05 -05:00
Liam 292cc68b75 video_core: Integrate SMAA
Co-authored-by: goldenx86 <goldenx86@users.noreply.github.com>
Co-authored-by: BreadFish64 <breadfish64@users.noreply.github.com>
2022-12-08 17:17:45 -05:00
Morph 5a607ba49f Merge pull request #9365 from liamwhite/val
vulkan_common: quiet some validation errors
2022-12-06 21:08:14 -05:00
Liam d50abc6a9c vulkan_common: further initialization tweaks 2022-12-05 22:06:35 -05:00
Liam ee4e09128f vulkan_common: add feature test for shaderDrawParameters 2022-12-04 10:55:13 -05:00
Liam 88ee9ef9ba vulkan_common: clean up extension usage 2022-12-04 10:55:13 -05:00
Liam b656f90c11 vulkan_common: correct usage of timeline semaphore fallbacks 2022-12-04 10:55:13 -05:00
Liam f848103437 vulkan_common: ensure all mandatory features are tested in feature report 2022-12-04 10:55:13 -05:00
Liam 8db4f8593c vulkan_common: unsuffix 16-bit storage feature test structure 2022-12-04 10:55:13 -05:00
Liam d2299ce7d8 vulkan_common: unsuffix timeline semaphore feature test structure 2022-12-04 10:55:13 -05:00
Liam e46525c84f vulkan_common: add logicOp to feature report 2022-12-04 10:55:13 -05:00
Liam 540a841351 vulkan_common: promote host query reset usage to core 2022-12-04 10:55:13 -05:00
Liam f165ae4daf vulkan_common: promote descriptor update template usage to core 2022-12-04 10:55:13 -05:00
Liam 63b830fd41 vulkan_common: promote timeline semaphore usage to core 2022-12-04 10:55:13 -05:00
liamwhite e20c5a0b7f Merge pull request #9289 from liamwhite/fruit-company
general: fix compile for Apple Clang
2022-12-03 12:09:21 -05:00
Liam 44db218c6d vulkan_common: quiet some validation errors 2022-11-30 19:18:05 -05:00