SDL_surface.h

Función SDL_LockTextureToSurface

Sintaxis

int SDL_LockTextureToSurface(SDL_Texture *texture,
                    const SDL_Rect *rect,
                    SDL_Surface **surface);

Descripción

Bloquea una porción de la textura para el acceso de píxeles de sólo escritura, y la expone como una superficie SDL.

Parámetros

texture
La textura a bloquear para acceso, que fue creada con SDL_TEXTUREACCESS_STREAMING.
rect
Un puntero al rectángulo a bloquear para acceso. Si el rectángulo es NULL, toda la textura será bloqueada.
surface
Esto se rellena con una superficie SDL que representa el área bloqueada.

Valor de retorno

Devuelve 0 en caso de éxito, o -1 si la textura no es válida o no fue creada con SDL_TEXTUREACCESS_STREAMING.

Observaciones

Además de proporcionar una SDL_Surface en lugar de datos de píxeles sin procesar, esta función opera como SDL_LockTexture.

Como optimización, los píxeles disponibles para edición no contienen necesariamente los datos de textura antiguos. Esta es una operación de solo escritura, y si se necesita mantener una copia de los datos de textura se debe hacer a nivel de aplicación.

Se debe utilizar SDL_UnlockTexture() para desbloquear los píxeles y aplicar cualquier cambio.

La superficie devuelta se libera internamente después de llamar a SDL_UnlockTexture() o SDL_DestroyTexture(). El proceso que la llama no debe liberarla.