SDL_CreateGPUComputePipeline - Man Page
Creates a pipeline object to be used in a compute workflow.
Synopsis
#include <SDL3/SDL_gpu.h> SDL_GPUComputePipeline * SDL_CreateGPUComputePipeline( SDL_GPUDevice *device, const SDL_GPUComputePipelineCreateInfo *createinfo);
Description
Shader resource bindings must be authored to follow a particular order depending on the shader format.
For SPIR-V shaders, use the following resource sets:
· 0: Sampled textures, followed by read-only storage textures, followed by read-only storage buffers
· 1: Read-write storage textures, followed by read-write storage buffers
· 2: Uniform buffers
For DXBC and DXIL shaders, use the following register order:
· (t[n], space0): Sampled textures, followed by read-only storage textures, followed by read-only storage buffers
· (u[n], space1): Read-write storage textures, followed by read-write storage buffers
· (b[n], space2): Uniform buffers
For MSL/metallib, use the following order:
· [[buffer]]: Uniform buffers, followed by read-only storage buffers, followed by read-write storage buffers
· [[texture]]: Sampled textures, followed by read-only storage textures, followed by read-write storage textures
There are optional properties that can be provided through props. These are the supported properties:
· SDL_PROP_GPU_COMPUTEPIPELINE_CREATE_NAME_STRING: a name that can be displayed in debugging tools.
Function Parameters
- device
a GPU Context.
- createinfo
a struct describing the state of the compute pipeline to create.
Return Value
Returns a compute pipeline object on success, or NULL on failure; call SDL_GetError() for more information.
Availability
This function is available since SDL 3.2.0.
See Also
SDL_BindGPUComputePipeline(3), SDL_ReleaseGPUComputePipeline(3)
Referenced By
SDL_GPUComputePipeline.3type(3), SDL_GPUComputePipelineCreateInfo.3type(3).