sdlCreateGpuTexture function gpu
- Pointer<
SdlGpuDevice> device, - Pointer<
SdlGpuTextureCreateInfo> createinfo
Creates a texture object to be used in graphics or compute workflows.
The contents of this texture are undefined until data is written to the texture, either via SDL_UploadToGPUTexture or by performing a render or compute pass with this texture as a target.
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's 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_NUMBER
: (Direct3D 12 only) if the texture usage is SDL_GPU_TEXTUREUSAGE_DEPTH_STENCIL_TARGET, clear the texture to a stencil of this Uint8 value. Defaults to zero.SDL_PROP_GPU_TEXTURE_CREATE_NAME_STRING
: a name that can be displayed in debugging tools.
\param device a GPU Context. \param createinfo a struct describing the state of the texture to create. \returns a texture object on success, or NULL on failure; call SDL_GetError() for more information.
\since This function is available since SDL 3.2.0.
\sa SDL_UploadToGPUTexture \sa SDL_DownloadFromGPUTexture \sa SDL_BeginGPURenderPass \sa SDL_BeginGPUComputePass \sa SDL_BindGPUVertexSamplers \sa SDL_BindGPUVertexStorageTextures \sa SDL_BindGPUFragmentSamplers \sa SDL_BindGPUFragmentStorageTextures \sa SDL_BindGPUComputeStorageTextures \sa SDL_BlitGPUTexture \sa SDL_ReleaseGPUTexture \sa SDL_GPUTextureSupportsFormat
extern SDL_DECLSPEC SDL_GPUTexture * SDLCALL SDL_CreateGPUTexture( SDL_GPUDevice *device, const SDL_GPUTextureCreateInfo *createinfo)
Implementation
Pointer<SdlGpuTexture> sdlCreateGpuTexture(
Pointer<SdlGpuDevice> device,
Pointer<SdlGpuTextureCreateInfo> createinfo,
) {
final sdlCreateGpuTextureLookupFunction = _libSdl
.lookupFunction<
Pointer<SdlGpuTexture> Function(
Pointer<SdlGpuDevice> device,
Pointer<SdlGpuTextureCreateInfo> createinfo,
),
Pointer<SdlGpuTexture> Function(
Pointer<SdlGpuDevice> device,
Pointer<SdlGpuTextureCreateInfo> createinfo,
)
>('SDL_CreateGPUTexture');
return sdlCreateGpuTextureLookupFunction(device, createinfo);
}