ID3D11DeviceContext::IAGetVertexBuffers method (d3d11.h)

Get the vertex buffers bound to the input-assembler stage.


void IAGetVertexBuffers(
  [in]            UINT         StartSlot,
  [in]            UINT         NumBuffers,
  [out, optional] ID3D11Buffer **ppVertexBuffers,
  [out, optional] UINT         *pStrides,
  [out, optional] UINT         *pOffsets


[in] StartSlot

Type: UINT

The input slot of the first vertex buffer to get. The first vertex buffer is explicitly bound to the start slot; this causes each additional vertex buffer in the array to be implicitly bound to each subsequent input slot. The maximum of 16 or 32 input slots (ranges from 0 to D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT - 1) are available; the maximum number of input slots depends on the feature level.

[in] NumBuffers

Type: UINT

The number of vertex buffers to get starting at the offset. The number of buffers (plus the starting slot) cannot exceed the total number of IA-stage input slots.

[out, optional] ppVertexBuffers

Type: ID3D11Buffer**

A pointer to an array of vertex buffers returned by the method (see ID3D11Buffer).

[out, optional] pStrides

Type: UINT*

Pointer to an array of stride values returned by the method; one stride value for each buffer in the vertex-buffer array. Each stride value is the size (in bytes) of the elements that are to be used from that vertex buffer.

[out, optional] pOffsets

Type: UINT*

Pointer to an array of offset values returned by the method; one offset value for each buffer in the vertex-buffer array. Each offset is the number of bytes between the first element of a vertex buffer and the first element that will be used.

Return value



Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.


Requirement Value
Target Platform Windows
Header d3d11.h
Library D3D11.lib

See also