C Specification
The VkGeneratedCommandsInfoNV is defined as:
// Provided by VK_NV_device_generated_commands
typedef struct VkGeneratedCommandsInfoNV {
    VkStructureType                      sType;
    const void*                          pNext;
    VkPipelineBindPoint                  pipelineBindPoint;
    VkPipeline                           pipeline;
    VkIndirectCommandsLayoutNV           indirectCommandsLayout;
    uint32_t                             streamCount;
    const VkIndirectCommandsStreamNV*    pStreams;
    uint32_t                             sequencesCount;
    VkBuffer                             preprocessBuffer;
    VkDeviceSize                         preprocessOffset;
    VkDeviceSize                         preprocessSize;
    VkBuffer                             sequencesCountBuffer;
    VkDeviceSize                         sequencesCountOffset;
    VkBuffer                             sequencesIndexBuffer;
    VkDeviceSize                         sequencesIndexOffset;
} VkGeneratedCommandsInfoNV;Members
- 
sTypeis a VkStructureType value identifying this structure.
- 
pNextisNULLor a pointer to a structure extending this structure.
- 
pipelineBindPointis the VkPipelineBindPoint used for thepipeline.
- 
pipelineis the VkPipeline used in the generation and execution process.
- 
indirectCommandsLayoutis the VkIndirectCommandsLayoutNV that provides the command sequence to generate.
- 
streamCountdefines the number of input streams
- 
pStreamsis a pointer to an array ofstreamCountVkIndirectCommandsStreamNV structures providing the input data for the tokens used inindirectCommandsLayout.
- 
sequencesCountis the maximum number of sequences to reserve. IfsequencesCountBufferis VK_NULL_HANDLE, this is also the actual number of sequences generated.
- 
preprocessBufferis the VkBuffer that is used for preprocessing the input data for execution. If this structure is used with vkCmdExecuteGeneratedCommandsNV with itsisPreprocessedset toVK_TRUE, then the preprocessing step is skipped and data in this buffer will not be modified. The contents and the layout of this buffer are opaque to applications and must not be modified outside functions related to device-generated commands or copied to another buffer for reuse.
- 
preprocessOffsetis the byte offset intopreprocessBufferwhere the preprocessed data is stored.
- 
preprocessSizeis the maximum byte size within thepreprocessBufferafter thepreprocessOffsetthat is available for preprocessing.
- 
sequencesCountBufferis aVkBufferin which the actual number of sequences is provided as singleuint32_tvalue.
- 
sequencesCountOffsetis the byte offset intosequencesCountBufferwhere the count value is stored.
- 
sequencesIndexBufferis aVkBufferthat encodes the used sequence indices asuint32_tarray.
- 
sequencesIndexOffsetis the byte offset intosequencesIndexBufferwhere the index values start.
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.