Function SDL_GetRGBA

pub unsafe extern "C" fn SDL_GetRGBA(
    pixel: u32,
    format: *const SDL_PixelFormatDetails,
    palette: *const SDL_Palette,
    r: *mut u8,
    g: *mut u8,
    b: *mut u8,
    a: *mut u8,
)
Available on crate feature dep_sdl3 only.
Expand description

Get RGBA values from a pixel in the specified format.

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

§Parameters

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

§Thread safety

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

§Availability

This function is available since SDL 3.2.0.

§See also