@@ -5799,6 +5799,7 @@ void lvk::VulkanContext::createInstance() {
57995799#endif
58005800 };
58015801
5802+ #if defined(VK_EXT_layer_settings) && VK_EXT_layer_settings
58025803 // https://github.com/KhronosGroup/MoltenVK/blob/main/Docs/MoltenVK_Configuration_Parameters.md
58035804 const int useMetalArgumentBuffers = 1 ;
58045805 const VkBool32 gpuav_descriptor_checks = VK_FALSE; // https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/8688
@@ -5820,6 +5821,7 @@ void lvk::VulkanContext::createInstance() {
58205821 .settingCount = (uint32_t )LVK_ARRAY_NUM_ELEMENTS (settings),
58215822 .pSettings = settings,
58225823 };
5824+ #endif // defined(VK_EXT_layer_settings) && VK_EXT_layer_settings
58235825
58245826 const VkApplicationInfo appInfo = {
58255827 .sType = VK_STRUCTURE_TYPE_APPLICATION_INFO,
@@ -5837,7 +5839,11 @@ void lvk::VulkanContext::createInstance() {
58375839#endif
58385840 const VkInstanceCreateInfo ci = {
58395841 .sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO,
5842+ #if defined(VK_EXT_layer_settings) && VK_EXT_layer_settings
58405843 .pNext = &layerSettingsCreateInfo,
5844+ #else
5845+ .pNext = config_.enableValidation ? &features : nullptr ,
5846+ #endif // defined(VK_EXT_layer_settings) && VK_EXT_layer_settings
58415847 .flags = flags,
58425848 .pApplicationInfo = &appInfo,
58435849 .enabledLayerCount = config_.enableValidation ? (uint32_t )LVK_ARRAY_NUM_ELEMENTS (kDefaultValidationLayers ) : 0u ,
0 commit comments