目次 - SDL 3.0 API(機能別) - ピクセル形式と変換 - SDL_MapRGB

SDL_MapRGB

RGBの3つの値から指定のピクセル形式の不透明なピクセル値を求める

ヘッダ

SDL3/SDL_pixels.h

構文

Uint32 SDL_MapRGB(const SDL_PixelFormatDetails *format, const SDL_Palette *palette, Uint8 r, Uint8 g, Uint8 b);

引数

const SDL_PixelFormatDetails *formatピクセルのSDL_PixelFormatDetails
const SDL_Palette *paletteインデックス形式の場合のパレット. NULLも可
Uint8r0~255の赤要素の値
Uint8g0~255の緑要素の値
Uint8b0~255の青要素の値

戻り値

(Uint32) ピクセル値を戻す.

詳細

この関数はRGB値を指定したピクセル形式に変換し, 与えられた形式とRGB値で最も近いピクセル値を戻す.

ピクセル形式がパレットならば, パレットの中で最も近い色の添え字を戻す.

指定のピクセル形式にα要素があるならば, 全てのビットが1の値(完全に不透明)を戻す.

ピクセル形式のbpp(ビット深度)が32bpp未満ならば, 戻り値の使われない上位ビットは考慮しなくても安全である. (例: 16bpp形式の戻り値はUint16とみなしてよい. 8bpp形式もUint8とみなしてよい.)

スレッドセーフ

この関数はパレットを変更しない限りどのスレッドからも安全に呼べる.

バージョン

SDL 3.2.0以降

関連項目

SDL Wikiへのリンク

SDL_MapRGB - SDL Wiki