Structures

VkPhysicalDeviceProvokingVertexFeaturesEXT

Structure describing the provoking vertex features that can be supported by an implementation

The VkPhysicalDeviceProvokingVertexFeaturesEXT structure is defined as:

typedef struct VkPhysicalDeviceProvokingVertexFeaturesEXT {
    VkStructureType sType;
    void* pNext;
    VkBool32 provokingVertexLast;
    VkBool32 transformFeedbackPreservesProvokingVertex;
} VkPhysicalDeviceProvokingVertexFeaturesEXT;

This structure describes the following features:

  • sType is a VkStructureType value identifying this structure.
  • pNext is NULL or a pointer to a structure extending this structure.
  • provokingVertexLast indicates whether the implementation supports the VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT
    provoking vertex mode for flat shading.
  • transformFeedbackPreservesProvokingVertex indicates that the order of vertices within each primitive written by transform feedback will preserve the provoking vertex. This does not apply to triangle fan primitives when transformFeedbackPreservesTriangleFanProvokingVertex is VK_FALSE. transformFeedbackPreservesProvokingVertex must be VK_FALSE when the VK_EXT_transform_feedback extension is not supported.

If the VkPhysicalDeviceProvokingVertexFeaturesEXT structure is included in the pNext chain of the VkPhysicalDeviceFeatures2 structure passed to vkGetPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. VkPhysicalDeviceProvokingVertexFeaturesEXT can also be used in the pNext chain of VkDeviceCreateInfo to selectively enable these features.

When VkPhysicalDeviceProvokingVertexFeaturesEXT is in the pNext chain of VkDeviceCreateInfo but the transformFeedback feature is not enabled, the value of transformFeedbackPreservesProvokingVertex is ignored.

Valid Usage (Implicit)

VUID-VkPhysicalDeviceProvokingVertexFeaturesEXT-sType-sType

sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT