SDL Wiki

SDL_DrawGPUIndexedPrimitives

Draws data using bound graphics state with an index buffer and instancing enabled.

Header File

Defined in <SDL3/SDL_gpu.h>

Syntax

void SDL_DrawGPUIndexedPrimitives(
    SDL_GPURenderPass *render_pass,
    Uint32 num_indices,
    Uint32 num_instances,
    Uint32 first_index,
    Sint32 vertex_offset,
    Uint32 first_instance);

Function Parameters

SDL_GPURenderPass * render_pass a render pass handle.
Uint32 num_indices the number of indices to draw per instance.
Uint32 num_instances the number of instances to draw.
Uint32 first_index the starting index within the index buffer.
Sint32 vertex_offset value added to vertex index before indexing into the vertex buffer.
Uint32 first_instance the ID of the first instance to draw.

Remarks

You must not call this function before binding a graphics pipeline.

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.

Version

This function is available since SDL 3.2.0.


CategoryAPI, CategoryAPIFunction, CategoryGPU


[ edit | delete | history | feedback | raw ]

[ front page | index | search | recent changes | git repo | offline html ]

All wiki content is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
Wiki powered by ghwikipp.