SDL_CreateGPUTexture - Man Page

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

Header File

Defined in SDL3/SDL_gpu.h

Synopsis

#include "SDL3/SDL.h"

SDL_GPUTexture* SDL_CreateGPUTexture(
    SDL_GPUDevice *device,
    const SDL_GPUTextureCreateInfo *createinfo);

Description

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.

Function Parameters

device

a GPU Context.

createinfo

a struct describing the state of the texture to create.

Return Value

( SDL_GPUTexture
*) Returns a texture 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

·(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)

Referenced By

SDL_GPUSampleCount.3type(3), SDL_GPUTexture.3type(3), SDL_GPUTextureCreateInfo.3type(3), SDL_GPUTextureFormat.3type(3), SDL_GPUTextureType.3type(3), SDL_GPUTextureUsageFlags.3type(3), SDL_SetGPUTextureName(3).

SDL 3.2.2 Simple Directmedia Layer SDL3 FUNCTIONS