summaryrefslogtreecommitdiffstats
path: root/src/video_core/vulkan_common/vulkan_device.h
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2021-06-17 02:14:57 +0200
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-23 03:51:38 +0200
commitca67077ca87772b4b4ac61d08f5b2c60616348e0 (patch)
tree2a861de6f5be92cbed1542f115a99e646a1793c9 /src/video_core/vulkan_common/vulkan_device.h
parentglsl: Fix cbuf component indexing bug falback (diff)
downloadyuzu-ca67077ca87772b4b4ac61d08f5b2c60616348e0.tar
yuzu-ca67077ca87772b4b4ac61d08f5b2c60616348e0.tar.gz
yuzu-ca67077ca87772b4b4ac61d08f5b2c60616348e0.tar.bz2
yuzu-ca67077ca87772b4b4ac61d08f5b2c60616348e0.tar.lz
yuzu-ca67077ca87772b4b4ac61d08f5b2c60616348e0.tar.xz
yuzu-ca67077ca87772b4b4ac61d08f5b2c60616348e0.tar.zst
yuzu-ca67077ca87772b4b4ac61d08f5b2c60616348e0.zip
Diffstat (limited to 'src/video_core/vulkan_common/vulkan_device.h')
-rw-r--r--src/video_core/vulkan_common/vulkan_device.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/video_core/vulkan_common/vulkan_device.h b/src/video_core/vulkan_common/vulkan_device.h
index 4fda472b0..49605752d 100644
--- a/src/video_core/vulkan_common/vulkan_device.h
+++ b/src/video_core/vulkan_common/vulkan_device.h
@@ -154,6 +154,11 @@ public:
return guest_warp_stages & stage;
}
+ /// Returns the maximum number of push descriptors.
+ u32 MaxPushDescriptors() const {
+ return max_push_descriptors;
+ }
+
/// Returns true if formatless image load is supported.
bool IsFormatlessImageLoadSupported() const {
return is_formatless_image_load_supported;
@@ -194,6 +199,11 @@ public:
return khr_spirv_1_4;
}
+ /// Returns true if the device supports VK_KHR_push_descriptor.
+ bool IsKhrPushDescriptorSupported() const {
+ return khr_push_descriptor;
+ }
+
/// Returns true if the device supports VK_KHR_workgroup_memory_explicit_layout.
bool IsKhrWorkgroupMemoryExplicitLayoutSupported() const {
return khr_workgroup_memory_explicit_layout;
@@ -330,6 +340,7 @@ private:
VkDriverIdKHR driver_id{}; ///< Driver ID.
VkShaderStageFlags guest_warp_stages{}; ///< Stages where the guest warp size can be forced.
u64 device_access_memory{}; ///< Total size of device local memory in bytes.
+ u32 max_push_descriptors{}; ///< Maximum number of push descriptors
bool is_optimal_astc_supported{}; ///< Support for native ASTC.
bool is_float16_supported{}; ///< Support for float16 arithmetics.
bool is_warp_potentially_bigger{}; ///< Host warp size can be bigger than guest.
@@ -345,6 +356,7 @@ private:
bool khr_uniform_buffer_standard_layout{}; ///< Support for scalar uniform buffer layouts.
bool khr_spirv_1_4{}; ///< Support for VK_KHR_spirv_1_4.
bool khr_workgroup_memory_explicit_layout{}; ///< Support for explicit workgroup layouts.
+ bool khr_push_descriptor{}; ///< Support for VK_KHR_push_descritor.
bool ext_index_type_uint8{}; ///< Support for VK_EXT_index_type_uint8.
bool ext_sampler_filter_minmax{}; ///< Support for VK_EXT_sampler_filter_minmax.
bool ext_depth_range_unrestricted{}; ///< Support for VK_EXT_depth_range_unrestricted.