summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar ReinUsesLisp2021-05-29 02:53:39 -0300
committerGravatar ameerj2021-07-22 21:51:34 -0400
commit99f2c31b64aa7854690368f4637ef59a546b2d15 (patch)
treef799df00eb79eddab5932724780d4b082a571f48 /src
parentshader: Fix ImageWrite indexing (diff)
downloadyuzu-99f2c31b64aa7854690368f4637ef59a546b2d15.tar.gz
yuzu-99f2c31b64aa7854690368f4637ef59a546b2d15.tar.xz
yuzu-99f2c31b64aa7854690368f4637ef59a546b2d15.zip
vulkan_device: Enable float64 and int64 conditionally
Add Intel Xe support.
Diffstat (limited to 'src')
-rw-r--r--src/video_core/vulkan_common/vulkan_device.cpp6
-rw-r--r--src/video_core/vulkan_common/vulkan_device.h2
2 files changed, 6 insertions, 2 deletions
diff --git a/src/video_core/vulkan_common/vulkan_device.cpp b/src/video_core/vulkan_common/vulkan_device.cpp
index e27a2b51e..aabcb0b10 100644
--- a/src/video_core/vulkan_common/vulkan_device.cpp
+++ b/src/video_core/vulkan_common/vulkan_device.cpp
@@ -251,8 +251,8 @@ Device::Device(VkInstance instance_, vk::PhysicalDevice physical_, VkSurfaceKHR
251 .shaderStorageImageArrayDynamicIndexing = false, 251 .shaderStorageImageArrayDynamicIndexing = false,
252 .shaderClipDistance = true, 252 .shaderClipDistance = true,
253 .shaderCullDistance = true, 253 .shaderCullDistance = true,
254 .shaderFloat64 = true, 254 .shaderFloat64 = is_shader_float64_supported,
255 .shaderInt64 = true, 255 .shaderInt64 = is_shader_int64_supported,
256 .shaderInt16 = true, 256 .shaderInt16 = true,
257 .shaderResourceResidency = false, 257 .shaderResourceResidency = false,
258 .shaderResourceMinLod = false, 258 .shaderResourceMinLod = false,
@@ -909,6 +909,8 @@ void Device::SetupFamilies(VkSurfaceKHR surface) {
909void Device::SetupFeatures() { 909void Device::SetupFeatures() {
910 const VkPhysicalDeviceFeatures features{physical.GetFeatures()}; 910 const VkPhysicalDeviceFeatures features{physical.GetFeatures()};
911 is_formatless_image_load_supported = features.shaderStorageImageReadWithoutFormat; 911 is_formatless_image_load_supported = features.shaderStorageImageReadWithoutFormat;
912 is_shader_float64_supported = features.shaderFloat64;
913 is_shader_int64_supported = features.shaderInt64;
912 is_shader_storage_image_multisample = features.shaderStorageImageMultisample; 914 is_shader_storage_image_multisample = features.shaderStorageImageMultisample;
913 is_blit_depth_stencil_supported = TestDepthStencilBlits(); 915 is_blit_depth_stencil_supported = TestDepthStencilBlits();
914 is_optimal_astc_supported = IsOptimalAstcSupported(features); 916 is_optimal_astc_supported = IsOptimalAstcSupported(features);
diff --git a/src/video_core/vulkan_common/vulkan_device.h b/src/video_core/vulkan_common/vulkan_device.h
index ebe073293..693419505 100644
--- a/src/video_core/vulkan_common/vulkan_device.h
+++ b/src/video_core/vulkan_common/vulkan_device.h
@@ -314,6 +314,8 @@ private:
314 bool is_float16_supported{}; ///< Support for float16 arithmetics. 314 bool is_float16_supported{}; ///< Support for float16 arithmetics.
315 bool is_warp_potentially_bigger{}; ///< Host warp size can be bigger than guest. 315 bool is_warp_potentially_bigger{}; ///< Host warp size can be bigger than guest.
316 bool is_formatless_image_load_supported{}; ///< Support for shader image read without format. 316 bool is_formatless_image_load_supported{}; ///< Support for shader image read without format.
317 bool is_shader_float64_supported{}; ///< Support for float64.
318 bool is_shader_int64_supported{}; ///< Support for int64.
317 bool is_shader_storage_image_multisample{}; ///< Support for image operations on MSAA images. 319 bool is_shader_storage_image_multisample{}; ///< Support for image operations on MSAA images.
318 bool is_blit_depth_stencil_supported{}; ///< Support for blitting from and to depth stencil. 320 bool is_blit_depth_stencil_supported{}; ///< Support for blitting from and to depth stencil.
319 bool nv_viewport_swizzle{}; ///< Support for VK_NV_viewport_swizzle. 321 bool nv_viewport_swizzle{}; ///< Support for VK_NV_viewport_swizzle.