diff --git a/engine/gfx/vulkan/src/gfx_vulkan.cpp b/engine/gfx/vulkan/src/gfx_vulkan.cpp index 8f71a9c..0b968ed 100755 --- a/engine/gfx/vulkan/src/gfx_vulkan.cpp +++ b/engine/gfx/vulkan/src/gfx_vulkan.cpp @@ -1849,7 +1849,16 @@ void GFXVulkan::createLogicalDevice(std::vector extensions) { enabledFeatures.fillModeNonSolid = true; enabledFeatures.imageCubeArray = true; - createInfo.pEnabledFeatures = &enabledFeatures; + VkPhysicalDeviceVulkan11Features enabled11Features = {}; + enabled11Features.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES; + enabled11Features.shaderDrawParameters = true; + + VkPhysicalDeviceFeatures2 enabledFeatures2 = {}; + enabledFeatures2.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2; + enabledFeatures2.pNext = &enabled11Features; + enabledFeatures2.features = enabledFeatures; + + createInfo.pNext = &enabledFeatures2; vkCreateDevice(physicalDevice, &createInfo, nullptr, &device);