目次 - SDL 3.0 API(機能別) - 3DレンダリングとGPUコンピューティング - SDL_GPUTextureUsageFlags

SDL_GPUTextureUsageFlags

クライアントのGPUテクスチャの使用方法のフラグの型

ヘッダ

SDL3/SDL_gpu.h

構文

typedef Uint32 SDL_GPUTextureUsageFlags;

SDL_GPU_TEXTUREUSAGE_SAMPLER(1u << 0)テスクチャはサンプリングに対応する
SDL_GPU_TEXTUREUSAGE_COLOR_TARGET(1u << 1)テクスチャはカラーレンダリングターゲットである
SDL_GPU_TEXTUREUSAGE_DEPTH_STENCIL_TARGET(1u << 2)テクスチャは深度ステンシルである
SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ(1u << 3)テクスチャはグラフィックステージでの読込に対応する
SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_READ(1u << 4)テクスチャはコンピューティングステージでの読込に対応する
SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_WRITE(1u << 5)テクスチャはコンピューティングステージでの書込に対応する
SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_SIMULTANEOUS_READ_WRITE(1u << 6)テクスチャは同一のコンピューティングシェーダによる読込と書込に対応する. これはREAD | WRITEとは異なる

詳細

テクスチャは少なくとも1つのフラグを必要とする. フラグの不正な組み合わせに注意すること.

COMPUTE_STORAGEでは, READ | WRITEは, テクスチャへの書込のみを行うシェーダAとテクスチャからの読込のみを行うシェーダBを持ち, それぞれのシェーダが同一のテクスチャにバインドできることを意味する. SIMULTANEOUSは, 同一のシェーダまたはコンピューティングパスが読込と書込を行えることを意味する. さらにこれらはリード・モディファイ・ライト操作であるため, アトミックな操作が可能であることも意味している. SIMULTANEOUSを使用する場合, コンピューティングパスではデータ同期を行わないため, 利用者の責任でデータ競合を防ぐ必要がある. SIMULTANEOUSを使用できるのは一部のテクスチャ形式のみなので注意すること.

バージョン

SDL 3.2.0以降

関連項目

SDL Wikiへのリンク

SDL_GPUTextureUsageFlags - SDL Wiki