vkCmdSetPrimitiveRestartEnable
To dynamically control whether a special vertex index value is treated as restarting the assembly of primitives, call:
void vkCmdSetPrimitiveRestartEnableEXT(
VkCommandBuffer commandBuffer,
VkBool32 primitiveRestartEnable);
commandBuffer
is the command buffer into which the command will be recorded.primitiveRestartEnable
controls whether a special vertex index value is treated as restarting the assembly of primitives. It behaves in the same way asVkPipelineInputAssemblyStateCreateInfo
::primitiveRestartEnable
This command sets the primitive restart enable for subsequent drawing
commands
when drawing using shader objects, or
when the graphics pipeline is created with
VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE
set in
VkPipelineDynamicStateCreateInfo::pDynamicStates
.
Otherwise, this state is specified by the
VkPipelineInputAssemblyStateCreateInfo::primitiveRestartEnable
value used to create the currently active pipeline.
Valid Usage
VUID-vkCmdSetPrimitiveRestartEnable-None-08970
At least one of the following must be true:- the extendedDynamicState2
feature is enabled
- the
shaderObject
feature is enabled ::
Valid Usage (Implicit)
VUID-vkCmdSetPrimitiveRestartEnable-commandBuffer-parameter
commandBuffer
must be a valid VkCommandBuffer handle
VUID-vkCmdSetPrimitiveRestartEnable-commandBuffer-recording
commandBuffer
must be in the recording state
VUID-vkCmdSetPrimitiveRestartEnable-commandBuffer-cmdpool
The VkCommandPool
that commandBuffer
was allocated from must support graphics operations
VUID-vkCmdSetPrimitiveRestartEnable-videocoding
This command must only be called outside of a video coding scope
::
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized - Host access to the
VkCommandPool
thatcommandBuffer
was allocated from must be externally synchronized ::