liushuyu
44a629e584
video_core: fix clang-format errors
2023-06-03 00:05:33 -07:00
bunnei
ea54161dbf
video_core: vulkan_device: Correct error message for unsuitable driver.
2023-06-03 00:05:32 -07:00
bunnei
27250ee9ad
android: vulkan: Implement adrenotools turbo mode.
2023-06-03 00:05:32 -07:00
bunnei
6ae51eff8a
android: vulkan_device: Disable VK_EXT_extended_dynamic_state2 on Qualcomm.
...
- Newer drivers report this as supported, but it is broken.
2023-06-03 00:05:32 -07:00
bunnei
74e76421e6
android: native: Add support for custom Vulkan driver loading.
2023-06-03 00:05:31 -07:00
Billy Laws
2beb3051c1
Implement scaled vertex buffer format emulation
...
These formats are unsupported by mobile GPUs so they need to be emulated in shaders instead.
2023-06-03 00:05:31 -07:00
Billy Laws
58d420937c
Disable push descriptors on adreno drivers
...
Regular descriptors are around 1.5x faster to update.
2023-06-03 00:05:31 -07:00
Billy Laws
ca2c3a6d5a
Disable VK_EXT_extended_dynamic_state on mali
2023-06-03 00:05:31 -07:00
Liam
46927d217c
externals: add adrenotools for bcenabler
2023-06-03 00:05:28 -07:00
bunnei
b3a74d7f73
video_core: vulkan_device: Device initialization for Adreno.
2023-06-03 00:05:28 -07:00
Matías Locatti
ebcfe440ba
Merge pull request #10414 from liamwhite/anv-push-descriptor
...
vulkan_device: Enable VK_KHR_push_descriptor on newer ANV
2023-05-26 17:36:37 -03:00
Fernando S
178e8a6b0e
Merge pull request #10398 from liamwhite/bcn
...
video_core: add ASTC recompression
2023-05-24 03:55:45 +02:00
Liam
011dfe1db7
textures: add BC1 and BC3 compressors and recompression setting
2023-05-23 12:54:40 -04:00
Liam
cdd20c6231
vulkan_device: Enable VK_KHR_push_descriptor on newer ANV
2023-05-22 19:53:20 -04:00
scorpion81
9c33fade59
Limit the device access memory to 4 GB
...
Hardly limiting the device access memory to 4 GB for integrated vulkan devices here. This works for the Steam Deck in order not to go above 4 GB VRAM usage any more (above this value the likelihood to crash when the RAM exceeds 12 GB as well raises).
But there will be perhaps a detection mechanism necessary for detecting the real memory limit for integrated vulkan devices. Those likely might have small limits anyway, but what about integrated GPUs on machines with > 16 GB RAM, aka larger amounts ?
2023-05-22 16:48:55 +02:00
lat9nq
6597d2a5d3
vulkan_device: Disable VK_KHR_push_descriptor on ANV
...
Mesa commit ff91c5ca42bc80aa411cb3fd8f550aa6fdd16bdc breaks
VK_KHR_push_descriptor usage on ANV drivers 22.3.0, so disable it
and allow games to boot.
2023-05-17 22:19:57 -04:00
bunnei
de9a79402d
Merge pull request #10262 from liamwhite/depth-clamp
...
vulkan_common: disable depth clamp dynamic state for older radv
2023-05-17 12:19:03 -07:00
liamwhite
836b8e1d64
Merge pull request #10288 from liamwhite/vram-limits
...
vulkan_device: reserve extra memory to prevent swaps
2023-05-14 17:02:15 -04:00
Liam
41353d738a
vulkan_device: reserve extra memory to prevent swaps
2023-05-14 16:49:59 -04:00
Liam
b10b8b7a57
vulkan_common: fix incompatible property flags
2023-05-14 01:13:11 -04:00
Liam
50b42ab980
vulkan_common: disable depth clamp dynamic state for older radv
2023-05-13 00:37:17 -04:00
liamwhite
de45be2681
Merge pull request #10172 from Kelebek1/debug_validation_names
...
Log object names with debug renderer, add a GPU address to ImageViews
2023-05-07 14:09:03 -04:00
bunnei
12c4c09b3f
Merge pull request #10125 from lat9nq/vsync-select
...
configuration: Expose separate swap present modes
2023-05-06 21:55:39 -07:00
Kelebek1
d43a18a6ef
Log object names with debug renderer, add a GPU address to ImageViews
2023-05-06 04:48:32 +01:00
lat9nq
ff2197130f
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.
2023-05-02 21:51:30 -04:00
Liam
44b15592e8
vulkan: disable turbo when debugging tool is attached
2023-05-02 18:14:57 -04:00
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