VkGeneratedCommandsMemoryRequirementsInfoNV
typedef struct VkGeneratedCommandsMemoryRequirementsInfoNV {
VkStructureType sType;
const void* pNext;
VkPipelineBindPoint pipelineBindPoint;
VkPipeline pipeline;
VkIndirectCommandsLayoutNV indirectCommandsLayout;
uint32_t maxSequencesCount;
} VkGeneratedCommandsMemoryRequirementsInfoNV;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.pipelineBindPoint
is the VkPipelineBindPoint of thepipeline
that this buffer memory is intended to be used with during the execution.pipeline
is the VkPipeline that this buffer memory is intended to be used with during the execution.indirectCommandsLayout
is the VkIndirectCommandsLayoutNV that this buffer memory is intended to be used with.maxSequencesCount
is the maximum number of sequences that this buffer memory in combination with the other state provided can be used with.
Valid Usage
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-maxSequencesCount-02907
maxSequencesCount
must be less or equal to
VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV::maxIndirectSequenceCount
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-pipelineBindPoint-09075
If pipelineBindPoint
is of type
VK_PIPELINE_BIND_POINT_GRAPHICS
, then pipeline
must be a
valid VkPipeline handle
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-pipelineBindPoint-09076
If pipelineBindPoint
is of type
VK_PIPELINE_BIND_POINT_COMPUTE
, and the
indirectCommandsLayout
was not created with a
VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NV
token, then the
pipeline
must be a valid VkPipeline handle
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-pipelineBindPoint-09077
If pipelineBindPoint
is of type
VK_PIPELINE_BIND_POINT_COMPUTE
, and the
indirectCommandsLayout
contains a
VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NV
token, then the
pipeline
must be VK_NULL_HANDLE
Valid Usage (Implicit)
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-sType-sType
sType
must be VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-pNext-pNext
pNext
must be NULL
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-pipelineBindPoint-parameter
pipelineBindPoint
must be a valid VkPipelineBindPoint value
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-pipeline-parameter
If pipeline
is not VK_NULL_HANDLE, pipeline
must be a valid VkPipeline handle
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-indirectCommandsLayout-parameter
indirectCommandsLayout
must be a valid VkIndirectCommandsLayoutNV handle
VUID-VkGeneratedCommandsMemoryRequirementsInfoNV-commonparent
Both of indirectCommandsLayout
, and pipeline
that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDevice