SDL_CreateGPUComputePipeline3
Creates a pipeline object to be used in a compute workflow.
Usage
#include "SDL3/SDL.h"
SDL_GPUComputePipeline * SDL_CreateGPUComputePipeline( SDL_GPUDevice *device, const SDL_GPUComputePipelineCreateInfo *createinfo);
Header file
Defined in SDL3/SDL_gpu.h
Overview
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
( SDL_GPUComputePipeline
*) Returns a compute pipeline object on success, or NULL on failure; call
SDL_GetError () for more information.