SDL Wiki
(This is the legacy documentation for stable SDL2, the current stable version; SDL3 is the current development version.)

SDL_RenderGeometry

Render a list of triangles, optionally using a texture and indices into the vertex array Color and alpha modulation is done per vertex (SDL_SetTextureColorMod and SDL_SetTextureAlphaMod are ignored).

Header File

Defined in SDL_render.h

Syntax

int SDL_RenderGeometry(SDL_Renderer *renderer,
                   SDL_Texture *texture,
                   const SDL_Vertex *vertices, int num_vertices,
                   const int *indices, int num_indices);

Function Parameters

SDL_Renderer * renderer The rendering context.
SDL_Texture * texture (optional) The SDL texture to use.
const SDL_Vertex * vertices Vertices.
int num_vertices Number of vertices.
const int * indices (optional) An array of integer indices into the 'vertices' array, if NULL all vertices will be rendered in sequential order.
int num_indices Number of indices.

Return Value

(int) Return 0 on success, or -1 if the operation is not supported.

Version

This function is available since SDL 2.0.18.

See Also

Example

SDL_Renderer *renderer;
SDL_Texture *texture;

// Create three vertices to render

SDL_Vertex vertex_1 = {{10.5, 10.5}, {255, 0, 0, 255}, {1, 1}};
SDL_Vertex vertex_2 = {{20.5, 10.5}, {255, 0, 0, 255}, {1, 1}};
SDL_Vertex vertex_3 = {{10.5, 20.5}, {255, 0, 0, 255}, {1, 1}};

// Put them into array

SDL_Vertex vertices[] = {
    vertex_1,
    vertex_2,
    vertex_3
};

// Set renderer color

SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);
SDL_RenderClear(renderer);

// Render red triangle

SDL_RenderGeometry(renderer, texture, vertices, 3, NULL, 0);

SDL_RenderPresent(renderer);

CategoryAPI, CategoryAPIFunction, CategoryRender


[ 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.