SDL_GPUTexture * IMG_LoadGPUTexture_IO(SDL_GPUDevice *device, SDL_GPUCopyPass *copy_pass, SDL_IOStream *src, bool closeio, int *width, int *height);
| SDL_GPUDevice * | device | GPUテクスチャの生成で使用するSDL_GPUDevice |
| SDL_GPUCopyPass * | copy_pass | 読み込んだ画像をGPUテクスチャにアップロードするために使用するSDL_GPUCopyPass |
| SDL_IOStream * | src | データの読込元のSDL_IOStream |
| bool | closeio | 真のとき戻る前にSDL_IOStreamを自動的に閉じる/解放する. 偽のとき開いたままにする |
| int * | height | GPUテクスチャの高さの代入先へのポインタ. NULLも可 |
SDL_GPUTextureはGPUメモリ内の画像で, SDLのGPU APIで使用できる. 元の画像の形式に関わらず, この関数はGPUテクスチャをMIPレベルのないSDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM形式で生成する. これはサンプリングされたテクスチャとしてグラフィックまたはコンピュートパイプラインから, またはコンピュートパイプラインで読み込み専用ストレージテクスチャとしてバインドされる.
closeioが真の場合, 関数が成功してもしなくても戻る前にdstは閉じる.
SDL_IOStreamを使わずにディスクからファイルを読み込む別の関数も存在する.
IMG_LoadGPUTexture(device, copy_pass, "filename.jpg", width, height)のようにすると, アプリケーションがSDL_IOStreamを操作し, 拡張子からファイル形式を判別する.
IMG_LoadGPUTextureTyped_IO()関数も存在する. これはSDL_imageがファイル形式を自動的に判別できない場合に備えてファイル拡張子("BMP", "JPG")を指定できること以外はこの関数と同じである.
テクスチャを使用し終えたならば, アプリケーションはSDL_ReleaseGPUTexture()を呼んで破棄しなければならない.