vulkan_device: Enable float64 and int64 conditionally
Add Intel Xe support.
This commit is contained in:
		| @@ -251,8 +251,8 @@ Device::Device(VkInstance instance_, vk::PhysicalDevice physical_, VkSurfaceKHR | ||||
|             .shaderStorageImageArrayDynamicIndexing = false, | ||||
|             .shaderClipDistance = true, | ||||
|             .shaderCullDistance = true, | ||||
|             .shaderFloat64 = true, | ||||
|             .shaderInt64 = true, | ||||
|             .shaderFloat64 = is_shader_float64_supported, | ||||
|             .shaderInt64 = is_shader_int64_supported, | ||||
|             .shaderInt16 = true, | ||||
|             .shaderResourceResidency = false, | ||||
|             .shaderResourceMinLod = false, | ||||
| @@ -909,6 +909,8 @@ void Device::SetupFamilies(VkSurfaceKHR surface) { | ||||
| void Device::SetupFeatures() { | ||||
|     const VkPhysicalDeviceFeatures features{physical.GetFeatures()}; | ||||
|     is_formatless_image_load_supported = features.shaderStorageImageReadWithoutFormat; | ||||
|     is_shader_float64_supported = features.shaderFloat64; | ||||
|     is_shader_int64_supported = features.shaderInt64; | ||||
|     is_shader_storage_image_multisample = features.shaderStorageImageMultisample; | ||||
|     is_blit_depth_stencil_supported = TestDepthStencilBlits(); | ||||
|     is_optimal_astc_supported = IsOptimalAstcSupported(features); | ||||
|   | ||||
| @@ -314,6 +314,8 @@ private: | ||||
|     bool is_float16_supported{};                ///< Support for float16 arithmetics. | ||||
|     bool is_warp_potentially_bigger{};          ///< Host warp size can be bigger than guest. | ||||
|     bool is_formatless_image_load_supported{};  ///< Support for shader image read without format. | ||||
|     bool is_shader_float64_supported{};         ///< Support for float64. | ||||
|     bool is_shader_int64_supported{};           ///< Support for int64. | ||||
|     bool is_shader_storage_image_multisample{}; ///< Support for image operations on MSAA images. | ||||
|     bool is_blit_depth_stencil_supported{};     ///< Support for blitting from and to depth stencil. | ||||
|     bool nv_viewport_swizzle{};                 ///< Support for VK_NV_viewport_swizzle. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user