table of contents
- testing 3.2.4+ds-2
- unstable 3.2.4+ds-2
- experimental 3.2.4+git20250218+ds-1
SDL_GPUBufferUsageFlags(3type) | SDL3 DATATYPES | SDL_GPUBufferUsageFlags(3type) |
NAME¶
SDL_GPUBufferUsageFlags - Specifies how a buffer is intended to be used by the client.
HEADER FILE¶
Defined in SDL3/SDL_gpu.h
SYNOPSIS¶
#include "SDL3/SDL.h"
typedef Uint32 SDL_GPUBufferUsageFlags; #define SDL_GPU_BUFFERUSAGE_VERTEX (1u << 0) /**< Buffer is a vertex buffer. */ #define SDL_GPU_BUFFERUSAGE_INDEX (1u << 1) /**< Buffer is an index buffer. */ #define SDL_GPU_BUFFERUSAGE_INDIRECT (1u << 2) /**< Buffer is an indirect buffer. */ #define SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ (1u << 3) /**< Buffer supports storage reads in graphics stages. */ #define SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_READ (1u << 4) /**< Buffer supports storage reads in the compute stage. */ #define SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_WRITE (1u << 5) /**< Buffer supports storage writes in the compute stage. */
DESCRIPTION¶
A buffer must have at least one usage flag. Note that some usage flag combinations are invalid.
Unlike textures, READ | WRITE can be used for simultaneous read-write usage. The same data synchronization concerns as textures apply.
If you use a STORAGE flag, the data in the buffer must respect std140 layout conventions. In practical terms this means you must ensure that vec3 and vec4 fields are 16-byte aligned.
AVAILABILITY¶
This datatype is available since SDL 3.2.0.
SEE ALSO¶
•(3), SDL_CreateGPUBuffer(3)
SDL 3.2.5 | Simple Directmedia Layer |