## C Specification

The VkBindVertexBufferIndirectCommandNV structure specifies the input data for the VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV token.

// Provided by VK_NV_device_generated_commands
typedef struct VkBindVertexBufferIndirectCommandNV {
uint32_t           size;
uint32_t           stride;
} VkBindVertexBufferIndirectCommandNV;

## Members

• bufferAddress specifies a physical address of the VkBuffer used as vertex input binding.

• size is the byte size range which is available for this operation from the provided address.

• stride is the byte size stride for this vertex input binding as in VkVertexInputBindingDescription::stride. It is only used if VkIndirectCommandsLayoutTokenNV::vertexDynamicStride was set, otherwise the stride is inherited from the current bound graphics pipeline.

## Description

Valid Usage
• VUID-VkBindVertexBufferIndirectCommandNV-None-02949
The buffer’s usage flag from which the address was acquired must have the VK_BUFFER_USAGE_VERTEX_BUFFER_BIT bit set

• VUID-VkBindVertexBufferIndirectCommandNV-None-02950
Each element of the buffer from which the address was acquired and that is non-sparse must be bound completely and contiguously to a single VkDeviceMemory object

VkDeviceAddress