|
@@ -107,6 +107,8 @@ bool VKDevice::Create(const vk::DispatchLoaderDynamic& dldi, vk::Instance instan
|
|
|
features.occlusionQueryPrecise = true;
|
|
features.occlusionQueryPrecise = true;
|
|
|
features.fragmentStoresAndAtomics = true;
|
|
features.fragmentStoresAndAtomics = true;
|
|
|
features.shaderImageGatherExtended = true;
|
|
features.shaderImageGatherExtended = true;
|
|
|
|
|
+ features.shaderStorageImageReadWithoutFormat =
|
|
|
|
|
+ is_shader_storage_img_read_without_format_supported;
|
|
|
features.shaderStorageImageWriteWithoutFormat = true;
|
|
features.shaderStorageImageWriteWithoutFormat = true;
|
|
|
features.textureCompressionASTC_LDR = is_optimal_astc_supported;
|
|
features.textureCompressionASTC_LDR = is_optimal_astc_supported;
|
|
|
|
|
|
|
@@ -465,6 +467,8 @@ void VKDevice::SetupFamilies(const vk::DispatchLoaderDynamic& dldi, vk::SurfaceK
|
|
|
|
|
|
|
|
void VKDevice::SetupFeatures(const vk::DispatchLoaderDynamic& dldi) {
|
|
void VKDevice::SetupFeatures(const vk::DispatchLoaderDynamic& dldi) {
|
|
|
const auto supported_features{physical.getFeatures(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);
|
|
is_optimal_astc_supported = IsOptimalAstcSupported(supported_features, dldi);
|
|
|
}
|
|
}
|
|
|
|
|
|