lat9nq
c6c11c1553
vulkan_surface: Pass only window info for surface creation
We don't need the whole EmuWindow when creating a surface,
and it creates onerous requirements outside of typical usage for
creating a surface elsewhere.
3 years ago
Liam
e3fb9b5e00
vulkan: use plain fences when timeline semaphores are not available
3 years ago
Wollnashorn
fe91066f46
video_core: Enable ImageGather with subpixel offset on Intel
3 years ago
Wollnashorn
780240e697
shader_recompiler: Add subpixel offset for correct rounding at `ImageGather`
On AMD a subpixel offset of 1/512 of the texel size is applied to the texture coordinates at a ImageGather call to ensure the rounding at the texel centers is done the same way as in Maxwell or other Nvidia architectures.
See https://www.reedbeta.com/blog/texture-gathers-and-coordinate-precision/ for more details why this might be necessary.
This should fix shadow artifacts at object edges in Zelda: Breath of the Wild (#9957 , #6956 ).
3 years ago
Jan Beich
083d913eab
externals: update Vulkan-Headers to v1.3.246
3 years ago
Liam
da83afdeaf
vulkan: disable extendedDynamicState3ColorBlendEquation on radv
3 years ago
Liam
600f325d87
general: fix spelling mistakes
3 years ago
Liam
ec6ee04c64
vulkan_common: disable vertexInputDynamicState on unsupported driver
3 years ago
arades79
683019878f
remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistency
Signed-off-by: arades79 <scravers@protonmail.com>
3 years ago
arades79
45e13b03f3
add static lifetime to constexpr values to force compile time evaluation where possible
Signed-off-by: arades79 <scravers@protonmail.com>
3 years ago
Liam
c6eab71d5c
nsight_aftermath_tracker: update for latest Aftermath SDK
3 years ago
Liam
fa8581e900
vulkan_common: fix indirect draw with count
3 years ago
TellowKrinkle
eaf425bd32
MoltenVK: restrict number of vertex attributes/bindings to 16
3 years ago
Liam
279005448a
vulkan_device: refactor feature testing
3 years ago
Liam
444b25bae1
vulkan_device: avoid attempt to access empty optional
3 years ago
Liam
2e4dde12c7
renderer_vulkan: disable clock boost on unvalidated devices
3 years ago
Wollnashorn
16809c1fa7
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.
3 years ago
Liam
301e9bbc03
vulkan: implement 'turbo mode' clock booster
3 years ago
Liam
66ae79de13
renderer_vulkan: implement fallback path for null descriptors
3 years ago
Fernando Sahmkow
ddbf851ef6
Vulkan: Update blacklisting to latest driver versions.
3 years ago
Liam
f9c6d39a6c
vulkan_common: blacklist radv from extended_dynamic_state2 on drivers before 22.3.1
3 years ago
Liam
4814d87385
video_core: fix build
3 years ago
Fernando Sahmkow
d09aa0182f
MacroHLE: Final cleanup and fixes.
3 years ago
Fernando Sahmkow
d33251db93
Vulkan: Implement Dynamic State 3
3 years ago
Fernando Sahmkow
f800e485c9
Vulkan Implement Dynamic State 2 LogicOp and PatchVertices
3 years ago
Fernando Sahmkow
c897c55e3c
Vulkan: Implement Dynamic States 2
3 years ago
Fernando Sahmkow
0f89828073
MacroHLE: Implement DrawIndexedIndirect & DrawArraysIndirect.
4 years ago
Fernando Sahmkow
a5a94f52ff
MacroHLE: Add MultidrawIndirect HLE Macro.
4 years ago
Liam
aa13ee5c4a
vulkan_common: unify VK_EXT_debug_utils and selection of validation layer
3 years ago
Jan Beich
b60a93a936
externals: update Vulkan-Headers to v1.3.238
3 years ago
FernandoS27
0104e28fe4
Vulkan: Add support for VK_EXT_depth_clip_control.
4 years ago
Liam
4fce72c902
vulkan_common: declare storageBuffer8BitAccess
3 years ago
yzct12345
f6868ae4dd
Fix validation errors on less compatible Intel GPU
3 years ago
Liam
5b837157bd
video_core: Integrate SMAA
Co-authored-by: goldenx86 <goldenx86@users.noreply.github.com>
Co-authored-by: BreadFish64 <breadfish64@users.noreply.github.com>
3 years ago
Liam
7e7a23363a
vulkan_common: further initialization tweaks
3 years ago
Liam
157981cac5
vulkan_common: add feature test for shaderDrawParameters
3 years ago
Liam
18831e0933
vulkan_common: clean up extension usage
3 years ago
Liam
ea56d8f388
vulkan_common: correct usage of timeline semaphore fallbacks
3 years ago
Liam
f23f875dd8
vulkan_common: ensure all mandatory features are tested in feature report
3 years ago
Liam
06a67d2bbd
vulkan_common: unsuffix 16-bit storage feature test structure
3 years ago
Liam
bbc1809951
vulkan_common: unsuffix timeline semaphore feature test structure
3 years ago
Liam
a9633ba8b2
vulkan_common: add logicOp to feature report
3 years ago
Liam
7fc6514be1
vulkan_common: promote host query reset usage to core
3 years ago
Liam
e44a804ec7
vulkan_common: promote descriptor update template usage to core
3 years ago
Liam
a948ab3e48
vulkan_common: promote timeline semaphore usage to core
3 years ago
Liam
be05cb640c
vulkan_common: quiet some validation errors
3 years ago
Liam
2956a33463
Vulkan: update initialization
Co-authored-by: bylaws <bylaws@users.noreply.github.com>
3 years ago
Liam
9737615948
general: fix compile for Apple Clang
3 years ago
Byte
df6dffa30b
vulkan_blitter: Fix pool allocation double free.
4 years ago
Liam
c40cec5e58
renderer_vulkan: add format fallbacks for R16G16B16_SFLOAT, R16G16B16_SSCALED, R8G8B8_SSCALED
4 years ago