2

I departed slightly from the Vulkan tutorial I was following and decided to draw a wireframe instead of a solid triangle.

As soon as I call vkCreateGraphicsPipelines(), I get the following message from Validation Layer even though the call finishes with VK_SUCCESS.

vkCreateGraphicsPipelines parameter, VkPolygonMode pCreateInfos-> pRasterizationState->polygonMode cannot be VK_POLYGON_MODE_POINT or VK_POLYGON_MODE_LINE if VkPhysicalDeviceFeatures->fillModeNonSolid is false.

For good measure I check the VkPhysicalDeviceFeatures right after I call vkCreateGraphicsPipelines() and fillModeNonSolid is VK_TRUE.

The output is a wireframe triangle as expected but the message got me worried if I am missing something.

I am using Nvidia GeForce GTX 1050Ti (driver 417.22), Vulkan 1.1.82.1 on Windows 10(64-bit).

PS: I am experiencing similar problem with wideLines feature as well:VkPhysicalDeviceFeatures has wideLines as VK_TRUE but Validation Layer thinks it is set to false

Vectorizer
  • 299
  • 3
  • 10

1 Answers1

2

It turned out that the fillModeNonSolid feature needed to be explicitly enabled during logical device creation.

Vectorizer
  • 299
  • 3
  • 10