VkPipelineVertexInputDivisorStateCreateInfo(3)

# VkPipelineVertexInputDivisorStateCreateInfo(3) Manual Page

## Name

VkPipelineVertexInputDivisorStateCreateInfo - Structure specifying vertex attributes assignment during instanced rendering

## C Specification

If the `vertexAttributeInstanceRateDivisor` feature is enabled and the `pNext` chain of VkPipelineVertexInputStateCreateInfo includes a `VkPipelineVertexInputDivisorStateCreateInfo` structure, then that structure controls how vertex attributes are assigned to an instance when instanced rendering is enabled.

The `VkPipelineVertexInputDivisorStateCreateInfo` structure is defined as:

    // Provided by VK_VERSION_1_4
    typedef struct VkPipelineVertexInputDivisorStateCreateInfo {
        VkStructureType                                  sType;
        const void*                                      pNext;
        uint32_t                                         vertexBindingDivisorCount;
        const VkVertexInputBindingDivisorDescription*    pVertexBindingDivisors;
    } VkPipelineVertexInputDivisorStateCreateInfo;

    // Provided by VK_KHR_vertex_attribute_divisor
    // Equivalent to VkPipelineVertexInputDivisorStateCreateInfo
    typedef VkPipelineVertexInputDivisorStateCreateInfo VkPipelineVertexInputDivisorStateCreateInfoKHR;

    // Provided by VK_EXT_vertex_attribute_divisor
    // Equivalent to VkPipelineVertexInputDivisorStateCreateInfo
    typedef VkPipelineVertexInputDivisorStateCreateInfo VkPipelineVertexInputDivisorStateCreateInfoEXT;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `vertexBindingDivisorCount` is the number of elements in the `pVertexBindingDivisors` array.

- `pVertexBindingDivisors` is a pointer to an array of VkVertexInputBindingDivisorDescription structures specifying the divisor value for each binding.

## Description

Valid Usage (Implicit)

- VUID-VkPipelineVertexInputDivisorStateCreateInfo-sType-sType
  `sType` must be VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO

- VUID-VkPipelineVertexInputDivisorStateCreateInfo-pVertexBindingDivisors-parameter
  `pVertexBindingDivisors` must be a valid pointer to an array of `vertexBindingDivisorCount` VkVertexInputBindingDivisorDescription structures

- VUID-VkPipelineVertexInputDivisorStateCreateInfo-vertexBindingDivisorCount-arraylength
  `vertexBindingDivisorCount` must be greater than `0`

Structure Chaining

Extends the structure

  - VkPipelineVertexInputStateCreateInfo

## See Also

VK_EXT_vertex_attribute_divisor, VK_KHR_vertex_attribute_divisor, VK_VERSION_1_4, VkStructureType, VkVertexInputBindingDivisorDescription

## 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.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0