SDL_GPUTextureTransferInfo(3type)

NAME
SDL_GPUTextureTransferInfo - A structure specifying parameters related to transferring data to or from a texture.

SYNOPSIS
#include <SDL3/SDL_gpu.h>

typedef struct SDL_GPUTextureTransferInfo
{
    SDL_GPUTransferBuffer *transfer_buffer;  /**< The transfer buffer used in the transfer operation. */
    Uint32 offset;                           /**< The starting byte of the image data in the transfer buffer. */
    Uint32 pixels_per_row;                   /**< The number of pixels from one row to the next. */
    Uint32 rows_per_layer;                   /**< The number of rows from one layer/depth-slice to the next. */
} SDL_GPUTextureTransferInfo;

DESCRIPTION
If either of pixels_per_row or rows_per_layer is zero, then width and height of passed SDL_GPUTextureRegion to SDL_UploadToGPUTexture or SDL_DownloadFromGPUTexture are used as default values respectively and data is considered to be tightly packed.

WARNING: On some older/integrated hardware, Direct3D 12 requires texture data row pitch to be 256 byte aligned, and offsets to be aligned to 512 bytes. If they are not, SDL will make a temporary copy of the data that is properly aligned, but this adds overhead to the transfer process. Apps can avoid this by aligning their data appropriately, or using a different GPU backend than Direct3D 12.

AVAILABILITY
This struct is available since SDL 3.2.0.

SEE ALSO
SDL_UploadToGPUTexture(3), SDL_DownloadFromGPUTexture(3)