|
|
|
@ -106,6 +106,8 @@ bool VKDevice::Create(const vk::DispatchLoaderDynamic& dldi, vk::Instance instan |
|
|
|
features.tessellationShader = true; |
|
|
|
features.fragmentStoresAndAtomics = true; |
|
|
|
features.shaderImageGatherExtended = true; |
|
|
|
features.shaderStorageImageReadWithoutFormat = |
|
|
|
is_shader_storage_img_read_without_format_supported; |
|
|
|
features.shaderStorageImageWriteWithoutFormat = true; |
|
|
|
features.textureCompressionASTC_LDR = is_optimal_astc_supported; |
|
|
|
|
|
|
|
@ -457,6 +459,8 @@ void VKDevice::SetupFamilies(const vk::DispatchLoaderDynamic& dldi, vk::SurfaceK |
|
|
|
|
|
|
|
void VKDevice::SetupFeatures(const vk::DispatchLoaderDynamic& dldi) { |
|
|
|
const auto supported_features{physical.getFeatures(dldi)}; |
|
|
|
is_shader_storage_img_read_without_format_supported = |
|
|
|
supported_features.shaderStorageImageReadWithoutFormat; |
|
|
|
is_optimal_astc_supported = IsOptimalAstcSupported(supported_features, dldi); |
|
|
|
} |
|
|
|
|
|
|
|
@ -530,6 +534,7 @@ std::unordered_map<vk::Format, vk::FormatProperties> VKDevice::GetFormatProperti |
|
|
|
vk::Format::eBc6HUfloatBlock, |
|
|
|
vk::Format::eBc6HSfloatBlock, |
|
|
|
vk::Format::eBc1RgbaSrgbBlock, |
|
|
|
vk::Format::eBc2SrgbBlock, |
|
|
|
vk::Format::eBc3SrgbBlock, |
|
|
|
vk::Format::eBc7SrgbBlock, |
|
|
|
vk::Format::eAstc4x4SrgbBlock, |
|
|
|
|