A structure specifying the parameters of an indexed indirect draw command.
Defined in <SDL3/SDL_gpu.h>
typedef struct SDL_GPUIndexedIndirectDrawCommand
{/**< The number of indices to draw per instance. */
Uint32 num_indices; /**< The number of instances to draw. */
Uint32 num_instances; /**< The base index within the index buffer. */
Uint32 first_index; /**< The value added to the vertex index before indexing into the vertex buffer. */
Sint32 vertex_offset; /**< The ID of the first instance to draw. */
Uint32 first_instance; } SDL_GPUIndexedIndirectDrawCommand;
Note that the first_vertex
and first_instance
parameters are NOT compatible with built-in vertex/instance ID variables in shaders (for example, SV_VertexID); GPU APIs and shader languages do not define these built-in variables consistently, so if your shader depends on them, the only way to keep behavior consistent and portable is to always pass 0 for the correlating parameter in the draw calls.
This struct is available since SDL 3.1.3