vkCmdBindTransformFeedbackBuffers2EXT
To bind transform feedback memory ranges to a command buffer for use in subsequent drawing commands, call:
void vkCmdBindTransformFeedbackBuffers2EXT(
VkCommandBuffer commandBuffer,
uint32_t firstBinding,
uint32_t bindingCount,
const VkBindTransformFeedbackBuffer2InfoEXT* pBindingInfos);
pub fn cmd_bind_transform_feedback_buffers2_ext(
command_buffer: vk::CommandBuffer,
first_binding: u32,
binding_count: u32,
p_binding_infos: *const vk::BindTransformFeedbackBuffer2InfoEXT,
);
commandBufferis the command buffer into which the command is recorded.firstBindingis the index of the first transform feedback binding whose state is updated by the command.bindingCountis the number of transform feedback bindings whose state is updated by the command.pBindingInfosis a pointer to an array of VkBindTransformFeedbackBuffer2InfoEXT structures specifying the ranges of memory to be used to capture transform feedback data.
Element i of pBindingInfos replaces the current state for the
transform feedback binding firstBinding + i, for i in
[0,bindingCount).
Valid Usage
VUID-vkCmdBindTransformFeedbackBuffers2EXT-transformFeedback-02355
VkPhysicalDeviceTransformFeedbackFeaturesEXT::transformFeedbackmust be enabled
VUID-vkCmdBindTransformFeedbackBuffers2EXT-firstBinding-02356
firstBinding must be less than
VkPhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBuffers
VUID-vkCmdBindTransformFeedbackBuffers2EXT-firstBinding-02357
The sum of firstBinding and bindingCount must be less than
or equal to
VkPhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBuffers
VUID-vkCmdBindTransformFeedbackBuffers2EXT-None-02365
Transform feedback must not be active when the vkCmdBindTransformFeedbackBuffers2EXT command
is recorded
VUID-vkCmdBindTransformFeedbackBuffers2EXT-addressRange-13090
The addressRange.address member of all elements of
pBindingInfos must be a multiple of 4
VUID-vkCmdBindTransformFeedbackBuffers2EXT-addressRange-13091
The buffer that the addressRange of each element of
pBindingInfos was queried from must have been created with
VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT
VUID-vkCmdBindTransformFeedbackBuffers2EXT-addressRange-13092
The addressRange.size member of all elements of
pBindingInfos must be less than or equal to
VkPhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBufferSize
Valid Usage (Implicit)
VUID-vkCmdBindTransformFeedbackBuffers2EXT-commandBuffer-parameter
commandBuffer must be a valid VkCommandBuffer handle
VUID-vkCmdBindTransformFeedbackBuffers2EXT-pBindingInfos-parameter
If pBindingInfos is not NULL, pBindingInfos must be a valid pointer to an array of bindingCount valid VkBindTransformFeedbackBuffer2InfoEXT structures
VUID-vkCmdBindTransformFeedbackBuffers2EXT-commandBuffer-recording
commandBuffer must be in the recording state
VUID-vkCmdBindTransformFeedbackBuffers2EXT-commandBuffer-cmdpool
The VkCommandPool that commandBuffer was allocated from must support VK_QUEUE_GRAPHICS_BIT operations
VUID-vkCmdBindTransformFeedbackBuffers2EXT-videocoding
This command must only be called outside of a video coding scope
VUID-vkCmdBindTransformFeedbackBuffers2EXT-bindingCount-arraylength
If pBindingInfos is not NULL, bindingCount must be greater than 0
Host Synchronization
- Host access to
commandBuffermust be externally synchronized - Host access to the
VkCommandPoolthatcommandBufferwas allocated from must be externally synchronized