###### (This is the documentation for SDL3, which is the current stable version. [SDL2](https://wiki.libsdl.org/SDL2/) was the previous version!) # SDL_CopyGPUTextureToTexture Performs a texture-to-texture copy. ## Header File Defined in [](https://github.com/libsdl-org/SDL/blob/main/include/SDL3/SDL_gpu.h) ## Syntax ```c void SDL_CopyGPUTextureToTexture( SDL_GPUCopyPass *copy_pass, const SDL_GPUTextureLocation *source, const SDL_GPUTextureLocation *destination, Uint32 w, Uint32 h, Uint32 d, bool cycle); ``` ## Function Parameters | | | | | -------------------------------------------------------- | --------------- | ----------------------------------------------------------------------------------------------------------- | | [SDL_GPUCopyPass](SDL_GPUCopyPass) * | **copy_pass** | a copy pass handle. | | const [SDL_GPUTextureLocation](SDL_GPUTextureLocation) * | **source** | a source texture region. | | const [SDL_GPUTextureLocation](SDL_GPUTextureLocation) * | **destination** | a destination texture region. | | [Uint32](Uint32) | **w** | the width of the region to copy. | | [Uint32](Uint32) | **h** | the height of the region to copy. | | [Uint32](Uint32) | **d** | the depth of the region to copy. | | bool | **cycle** | if true, cycles the destination texture if the destination texture is bound, otherwise overwrites the data. | ## Remarks This copy occurs on the GPU timeline. You may assume the copy has finished in subsequent commands. ## Version This function is available since SDL 3.1.3. ---- [CategoryAPI](CategoryAPI), [CategoryAPIFunction](CategoryAPIFunction), [CategoryGPU](CategoryGPU)