目次 - SDL 3.0 API(機能別) - サーフェイスの生成と単純な描画 - SDL_ReadSurfacePixel

SDL_ReadSurfacePixel

サーフェイスからピクセルを読み取る

ヘッダ

SDL3/SDL_surface.h

構文

bool SDL_ReadSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a);

引数

SDL_Surface *surface読み取るサーフェイス
intx水平方向の位置. 0 <= x < 幅
inty垂直方向の位置. 0 <= y < 高さ
Uint8 *r0~255の範囲の赤要素の代入先へのポインタ. NULLのとき, この要素を無視する
Uint8 *g0~255の範囲の緑要素の代入先へのポインタ. NULLのとき, この要素を無視する
Uint8 *b0~255の範囲の青要素の代入先へのポインタ. NULLのとき, この要素を無視する
Uint8 *a0~255の範囲のα要素の代入先へのポインタ. NULLのとき, この要素を無視する

戻り値

(bool) 成功のとき真, 失敗のとき偽を戻す. SDL_GetError()を呼んで詳細を知ることができる.

詳細

この関数は速度よりも正確さを優先している. 単体テストには適しているが, ゲームエンジンでの使用を想定していない.

SDL_GetRGBAと似ているが, こちらはピクセル形式のRGB要素が8ビット未満の場合は0~255の範囲に変換する.

スレッドセーフ

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

バージョン

SDL 3.2.0以降

SDL Wikiへのリンク

SDL_ReadSurfacePixel - SDL Wiki