## C Specification

The VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV structure is defined as:

// Provided by VK_NV_device_generated_commands
typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV {
VkStructureType    sType;
void*              pNext;
uint32_t           maxIndirectSequenceCount;
uint32_t           maxIndirectCommandsTokenCount;
uint32_t           maxIndirectCommandsStreamCount;
uint32_t           maxIndirectCommandsTokenOffset;
uint32_t           maxIndirectCommandsStreamStride;
uint32_t           minSequencesCountBufferOffsetAlignment;
uint32_t           minSequencesIndexBufferOffsetAlignment;
uint32_t           minIndirectCommandsBufferOffsetAlignment;
} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV;

## Members

• sType is the type of this structure.

• pNext is NULL or a pointer to a structure extending this structure.

• maxGraphicsShaderGroupCount is the maximum number of shader groups in VkGraphicsPipelineShaderGroupsCreateInfoNV.

• maxIndirectSequenceCount is the maximum number of sequences in VkGeneratedCommandsInfoNV and in VkGeneratedCommandsMemoryRequirementsInfoNV.

• maxIndirectCommandsLayoutTokenCount is the maximum number of tokens in VkIndirectCommandsLayoutCreateInfoNV.

• maxIndirectCommandsStreamCount is the maximum number of streams in VkIndirectCommandsLayoutCreateInfoNV.

• maxIndirectCommandsTokenOffset is the maximum offset in VkIndirectCommandsLayoutTokenNV.

• maxIndirectCommandsStreamStride is the maximum stream stride in VkIndirectCommandsLayoutCreateInfoNV.

• minSequenceCountBufferOffsetAlignment is the minimum alignment for memory addresses which can be used in VkGeneratedCommandsInfoNV.

• minSequenceIndexBufferOffsetAlignment is the minimum alignment for memory addresses which can be used in VkGeneratedCommandsInfoNV.

• minIndirectCommandsBufferOffsetAlignment is the minimum alignment for memory addresses used in VkIndirectCommandsStreamNV, and as preprocess buffer in VkGeneratedCommandsInfoNV.

## Description

If the VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV structure is included in the pNext chain of the VkPhysicalDeviceProperties2 structure passed to vkGetPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.

Valid Usage (Implicit)
• VUID-VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV-sType-sType
sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV