A structure specifying the parameters of vertex buffers used in a graphics pipeline.
Defined in <SDL3/SDL_gpu.h>
typedef struct SDL_GPUVertexBufferDescription
{/**< The binding slot of the vertex buffer. */
Uint32 slot; /**< The byte pitch between consecutive elements of the vertex buffer. */
Uint32 pitch; /**< Whether attribute addressing is a function of the vertex index or instance index. */
SDL_GPUVertexInputRate input_rate; /**< The number of instances to draw using the same per-instance data before advancing in the instance buffer by one element. Ignored unless input_rate is SDL_GPU_VERTEXINPUTRATE_INSTANCE */
Uint32 instance_step_rate; } SDL_GPUVertexBufferDescription;
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.
This struct is available since SDL 3.1.3