DOKK / manpages / debian 13 / libsdl3-doc / SDL_CreateGPUTexture.3.en
SDL_CreateGPUTexture(3) SDL3 FUNCTIONS SDL_CreateGPUTexture(3)

SDL_CreateGPUTexture - Creates a texture object to be used in graphics or compute workflows.

Defined in SDL3/SDL_gpu.h

#include "SDL3/SDL.h"
SDL_GPUTexture * SDL_CreateGPUTexture(
    SDL_GPUDevice *device,
    const SDL_GPUTextureCreateInfo *createinfo);

The contents of this texture are undefined until data is written to the texture.

Note that certain combinations of usage flags are invalid. For example, a texture cannot have both the SAMPLER and GRAPHICS_STORAGE_READ flags.

If you request a sample count higher than the hardware supports, the implementation will automatically fall back to the highest available sample count.

There are optional properties that can be provided through

SDL_GPUTextureCreateInfo props . These are the supported properties:

SDL_PROP_GPU_TEXTURE_CREATE_D3D12_CLEAR_R_FLOAT :
(Direct3D 12 only) if the texture usage is

SDL_GPU_TEXTUREUSAGE_COLOR_TARGET ,
clear the texture to a color with this red intensity. Defaults to zero.

SDL_PROP_GPU_TEXTURE_CREATE_D3D12_CLEAR_G_FLOAT :
(Direct3D 12 only) if the texture usage is

SDL_GPU_TEXTUREUSAGE_COLOR_TARGET ,
clear the texture to a color with this green intensity. Defaults to zero.

SDL_PROP_GPU_TEXTURE_CREATE_D3D12_CLEAR_B_FLOAT :
(Direct3D 12 only) if the texture usage is

SDL_GPU_TEXTUREUSAGE_COLOR_TARGET ,
clear the texture to a color with this blue intensity. Defaults to zero.

SDL_PROP_GPU_TEXTURE_CREATE_D3D12_CLEAR_A_FLOAT :
(Direct3D 12 only) if the texture usage is

SDL_GPU_TEXTUREUSAGE_COLOR_TARGET ,
clear the texture to a color with this alpha intensity. Defaults to zero.

SDL_PROP_GPU_TEXTURE_CREATE_D3D12_CLEAR_DEPTH_FLOAT :
(Direct3D 12 only) if the texture usage is

SDL_GPU_TEXTUREUSAGE_DEPTH_STENCIL_TARGET ,
clear the texture to a depth of this value. Defaults to zero.

SDL_PROP_GPU_TEXTURE_CREATE_D3D12_CLEAR_STENCIL_UINT8 :
(Direct3D 12 only) if the texture usage is

SDL_GPU_TEXTUREUSAGE_DEPTH_STENCIL_TARGET ,
clear the texture to a stencil of this value. Defaults to zero.

SDL_PROP_GPU_TEXTURE_CREATE_NAME_STRING :
a name that can be displayed in debugging tools.

a GPU Context.
a struct describing the state of the texture to create.

( SDL_GPUTexture
*) Returns a texture object on success, or NULL on failure; call SDL_GetError () for more information.

This function is available since SDL 3.2.0.

(3), SDL_UploadToGPUTexture(3), (3), SDL_DownloadFromGPUTexture(3), (3), SDL_BindGPUVertexSamplers(3), (3), SDL_BindGPUVertexStorageTextures(3), (3), SDL_BindGPUFragmentSamplers(3), (3), SDL_BindGPUFragmentStorageTextures(3), (3), SDL_BindGPUComputeStorageTextures(3), (3), SDL_BlitGPUTexture(3), (3), SDL_ReleaseGPUTexture(3), (3), SDL_GPUTextureSupportsFormat(3)

SDL 3.2.10 Simple Directmedia Layer