logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

SDL_LockTextureToSurface - Lock a portion of the texture for write-only pixel access, and expose it as a

Availability

       This function is available since SDL 3.2.0.

Description

       Besides providing an SDL_Surface
        instead of raw pixel data, this function operates like SDL_LockTexture .

       As an optimization, the pixels made available for editing don't necessarily contain the old texture data.
       This is a write-only operation, and if you need to keep a copy of the texture data you should do that  at
       the application level.

       You must use SDL_UnlockTexture () to unlock the pixels and apply any changes.

       The returned surface is freed internally after calling

       SDL_UnlockTexture () or

       SDL_DestroyTexture (). The caller should not free it.

Function Parameters

texture
              the texture to lock for access, which must be created with SDL_TEXTUREACCESS_STREAMING .

       rect   a  pointer  to  the  rectangle to lock for access. If the rect is NULL, the entire texture will be
              locked.

       surface
              a pointer to an SDL surface of size rect . Don't assume any specific pixel content.

Header File

       Defined in SDL3/SDL_render.h

Name

       SDL_LockTextureToSurface  - Lock a portion of the texture for write-only pixel access, and expose it as a
       SDL surface.

Return Value

       Returns true on success or false on failure; call

       SDL_GetError () for more information.

See Also

(3), SDL_LockTexture(3), (3), SDL_UnlockTexture(3)

Simple Directmedia Layer                           SDL 3.2.10                        SDL_LockTextureToSurface(3)

Synopsis

#include"SDL3/SDL.h"boolSDL_LockTextureToSurface(SDL_Texture*texture,constSDL_Rect*rect,SDL_Surface**surface);

Thread Safety

       This function should only be called on the main thread.

See Also