[Solved] Enabling 1.1 features in a 1.1 instance

Going off the example here I am trying to enable a 1.1 feature in a version 1.1 instance:

But I get a validation error saying that the stype constant is declared in Vulkan 1.2 and can’t be used in 1.1??? If so, how the heck to I enable 1.1 features in Vulkan 1.1?

Validation Error: [ VUID-VkDeviceCreateInfo-pNext-pNext ] Object 0: VK_NULL_HANDLE, type = VK_OBJECT_TYPE_INSTANCE; | MessageID = 0x901f59ec | vkCreateDevice: Includes a pNext pointer (pCreateInfo->pNext) to a VkStructureType (VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES) which was added in VK_API_VERSION_1_2 but the current effective API version is 1.1.0 (0x00401000). The Vulkan spec states: Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of blah blah blah…

			// Vulkan 1.1 features
			VkPhysicalDeviceVulkan11Features features11 = {};
			features11.multiview = VK_TRUE;
			VkPhysicalDeviceFeatures2 physical_features2 = {};
			physical_features2.pNext = &features11;
			vkGetPhysicalDeviceFeatures2(devices[n], &physical_features2);
			device_info.pNext = &physical_features2;

			res = vkCreateDevice(devices[n], &device_info, nullptr, &device);
			if (res == VK_SUCCESS)
				physicaldevice = devices[n];
				VkPhysicalDeviceProperties deviceprops = VkPhysicalDeviceProperties{};
				vkGetPhysicalDeviceProperties(devices[n], &deviceprops);

Here is the only mention I can find of this issue:

VkPhysicalDeviceVulkan11Features is a 1.2 struct added for convenience. You cannot use it in 1.1.

Spec nowadays shows this conveniently, so watch for those dependencies:


You can use VkPhysicalDeviceMultiviewFeatures instead for your feature.

Thank you for the information.

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.