sdlxBindGpuComputeStorageTextures function gpu
void
sdlxBindGpuComputeStorageTextures(
- Pointer<
SdlGpuComputePass> computePass, { - required List<
Pointer< storageTextures,SdlGpuTexture> > - int firstSlot = 0,
Binds storage textures as readonly for use on the compute pipeline.
These textures must have been created with SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_READ.
Be sure your shader is set up according to the requirements documented in SDL_CreateGPUComputePipeline().
\param compute_pass a compute pass handle. \param first_slot the compute storage texture slot to begin binding from. \param storage_textures an array of storage textures. \param num_bindings the number of storage textures to bind from the array.
\since This function is available since SDL 3.2.0.
\sa SDL_CreateGPUComputePipeline
extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputeStorageTextures( SDL_GPUComputePass *compute_pass, Uint32 first_slot, SDL_GPUTexture *const *storage_textures, Uint32 num_bindings)
Implementation
void sdlxBindGpuComputeStorageTextures(
Pointer<SdlGpuComputePass> computePass, {
required List<Pointer<SdlGpuTexture>> storageTextures,
int firstSlot = 0,
}) {
final pointer = ffi.calloc<Pointer<SdlGpuTexture>>(storageTextures.length);
for (var i = 0; i < storageTextures.length; i++) {
pointer[i] = storageTextures[i];
}
sdlBindGpuComputeStorageTextures(
computePass,
firstSlot,
pointer,
storageTextures.length,
);
pointer.callocFree();
}