DOKK / manpages / debian 13 / libsdl3-doc / SDL_GetRGBA.3.en
SDL_GetRGBA(3) SDL3 FUNCTIONS SDL_GetRGBA(3)

SDL_GetRGBA - Get RGBA values from a pixel in the specified format.

Defined in SDL3/SDL_pixels.h

#include "SDL3/SDL.h"
void SDL_GetRGBA(Uint32 pixel, const SDL_PixelFormatDetails *format, const SDL_Palette *palette, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a);

This function uses the entire 8-bit [0..255] range when converting color components from pixel formats with less than 8-bits per RGB component (e.g., a completely white pixel in 16-bit RGB565 format would return [0xff, 0xff, 0xff] not [0xf8, 0xfc, 0xf8]).

If the surface has no alpha component, the alpha will be returned as 0xff (100% opaque).

a pixel value.
a pointer to SDL_PixelFormatDetails
describing the pixel format.
an optional palette for indexed formats, may be NULL.
a pointer filled in with the red component, may be NULL.
a pointer filled in with the green component, may be NULL.
a pointer filled in with the blue component, may be NULL.
a pointer filled in with the alpha component, may be NULL.

It is safe to call this function from any thread, as long as the palette is not modified.

This function is available since SDL 3.2.0.

(3), SDL_GetPixelFormatDetails(3), (3), SDL_GetRGB(3), (3), SDL_MapRGB(3), (3), SDL_MapRGBA(3)

SDL 3.2.10 Simple Directmedia Layer