# SDL_GPUCommandBuffer An opaque handle representing a command buffer. ## Header File Defined in [<SDL3/SDL_gpu.h>](https://github.com/libsdl-org/SDL/blob/main/include/SDL3/SDL_gpu.h) ## Syntax ```c typedef struct SDL_GPUCommandBuffer SDL_GPUCommandBuffer; ``` ## Remarks Most state is managed via command buffers. When setting state using a command buffer, that state is local to the command buffer. Commands only begin execution on the GPU once [SDL_SubmitGPUCommandBuffer](SDL_SubmitGPUCommandBuffer) is called. Once the command buffer is submitted, it is no longer valid to use it. Command buffers are executed in submission order. If you submit command buffer A and then command buffer B all commands in A will begin executing before any command in B begins executing. In multi-threading scenarios, you should only access a command buffer on the thread you acquired it from. ## Version This struct is available since SDL 3.2.0. ## See Also - [SDL_AcquireGPUCommandBuffer](SDL_AcquireGPUCommandBuffer) - [SDL_SubmitGPUCommandBuffer](SDL_SubmitGPUCommandBuffer) - [SDL_SubmitGPUCommandBufferAndAcquireFence](SDL_SubmitGPUCommandBufferAndAcquireFence) ---- [CategoryAPI](CategoryAPI), [CategoryAPIDatatype](CategoryAPIDatatype), [CategoryGPU](CategoryGPU)