sdlMapSurfaceRgb function
Map an RGB triple to an opaque pixel value for a surface.
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 surface has a palette, the index of the closest matching color in the palette will be returned.
If the surface 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).
\param surface the surface to use for the pixel format and palette. \param r the red component of the pixel in the range 0-255. \param g the green component of the pixel in the range 0-255. \param b the blue component of the pixel in the range 0-255. \returns a pixel value.
\since This function is available since SDL 3.1.3.
\sa SDL_MapSurfaceRGBA
extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapSurfaceRGB(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b)
Implementation
int sdlMapSurfaceRgb(Pointer<SdlSurface> surface, int r, int g, int b) {
final sdlMapSurfaceRgbLookupFunction = libSdl3.lookupFunction<
Uint32 Function(Pointer<SdlSurface> surface, Uint8 r, Uint8 g, Uint8 b),
int Function(Pointer<SdlSurface> surface, int r, int g,
int b)>('SDL_MapSurfaceRGB');
return sdlMapSurfaceRgbLookupFunction(surface, r, g, b);
}