---
name: "SDL_GPUVertexBufferDescription"
section: "3type"
platform: "linux"
package: "libsdl3-doc"
version: "3.2.10+ds-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SDL_GPUVertexBufferDescription"
---

# SDL\_GPUVertexBufferDescription(3type)

A structure specifying the parameters of vertex buffers used in a graphics pipeline.

## NAME

SDL\_GPUVertexBufferDescription - A structure specifying the parameters of vertex buffers used in a graphics pipeline.

## HEADER FILE

Defined in SDL3/SDL\_gpu.h

## SYNOPSIS

```
#include "SDL3/SDL.h"
```

**typedef struct SDL\_GPUVertexBufferDescription** **{**     **Uint32 slot;                        /\*\*\< The binding slot of the vertex buffer. \*/**     **Uint32 pitch;                       /\*\*\< The byte pitch between consecutive elements of the vertex buffer. \*/**     **SDL\_GPUVertexInputRate input\_rate;  /\*\*\< Whether attribute addressing is a function of the vertex index or instance index. \*/**     **Uint32 instance\_step\_rate;          /\*\*\< Reserved for future use. Must be set to 0. \*/** **} SDL\_GPUVertexBufferDescription;**

## DESCRIPTION

When you call  **SDL\_BindGPUVertexBuffers** , you specify the binding slots of the vertex buffers. For example if you called

**SDL\_BindGPUVertexBuffers**\
  with a first\_slot of 2 and num\_bindings of 3, the binding slots 2, 3, 4 would be used by the vertex buffers you pass in.

Vertex attributes are linked to buffers via the buffer\_slot field of

**SDL\_GPUVertexAttribute** . For example, if an attribute has a buffer\_slot of 0, then that attribute belongs to the vertex buffer bound at slot 0.

## AVAILABILITY

This struct is available since SDL 3.2.0.

## SEE ALSO

**•**(3), [**SDL\_GPUVertexAttribute**(3type)](/SDL_GPUVertexAttribute/3type.md), **•**(3), [**SDL\_GPUVertexInputRate**(3type)](/SDL_GPUVertexInputRate/3type.md)
