Scroll to navigation

SDL_MapRGB(3) SDL3 FUNCTIONS SDL_MapRGB(3)

NAME

SDL_MapRGB - Map an RGB triple to an opaque pixel value for a given pixel format.

HEADER FILE

Defined in SDL3/SDL_pixels.h

SYNOPSIS

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

DESCRIPTION

This function maps the RGB color value to the specified pixel format and returns the pixel value best approximating the given RGB color value for the given pixel format.

If the format has a palette (8-bit) the index of the closest matching color in the palette will be returned.

If the specified pixel format has an alpha component it will be returned as all 1 bits (fully opaque).

If the pixel format bpp (color depth) is less than 32-bpp then the unused upper bits of the return value can safely be ignored (e.g., with a 16-bpp format the return value can be assigned to a Uint16, and similarly a Uint8 for an 8-bpp format).

FUNCTION PARAMETERS

a pointer to SDL_PixelFormatDetails
describing the pixel format.
an optional palette for indexed formats, may be NULL.
the red component of the pixel in the range 0-255.
the green component of the pixel in the range 0-255.
the blue component of the pixel in the range 0-255.

RETURN VALUE

Returns a pixel value.

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

SEE ALSO

(3), SDL_GetPixelFormatDetails(3), (3), SDL_GetRGB(3), (3), SDL_MapRGBA(3), (3), SDL_MapSurfaceRGB(3)

SDL 3.1.6 Simple Directmedia Layer