Skip to content

Will SDL_Renderer ever support vertex shader uniforms or programmable vertex shading? #12966

Open
@Umbre373

Description

@Umbre373

In SDL 3, SDL_SetRenderGPUState allows fragment shaders and GPU state to be set via the SDL_Renderer API, enabling customization without dropping to the low-level GPU API.

However, there’s no equivalent support for vertex shaders — no way to provide custom vertex code or set uniforms like model/view/projection matrices. This makes it difficult to implement camera systems or geometry transforms cleanly.

Currently, the only options are:
• Use the SDL_GPU* API, which is powerful but much more complex;
• Apply all transformations on the CPU, which is less elegant and less flexible.

A simple solution could be to add an optional 3×2 or 4×4 matrix parameter to SDL_RenderGeometryRaw, applied on the GPU before rasterization. This would cover most 2D use cases without requiring full vertex shader support.

Is such an addition planned? Or is vertex shader support via SDL_Renderer something that could be considered?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions