SDL Wiki
(This is the legacy documentation for stable SDL2, the current stable version; SDL3 is the current development version.)


Read pixels from the current rendering target to an array of pixels.


int SDL_RenderReadPixels(SDL_Renderer * renderer,
                         const SDL_Rect * rect,
                         Uint32 format,
                         void *pixels, int pitch);

Function Parameters

renderer the rendering context
rect an SDL_Rect structure representing the area to read, or NULL for the entire render target
format an SDL_PixelFormatEnum value of the desired format of the pixel data, or 0 to use the format of the rendering target
pixels a pointer to the pixel data to copy into
pitch the pitch of the pixels parameter

Return Value

Returns 0 on success or a negative error code on failure; call SDL_GetError() for more information.


WARNING: This is a very slow operation, and should not be used frequently. If you're using this on the main rendering target, it should be called after rendering and before SDL_RenderPresent().

pitch specifies the number of bytes between rows in the destination pixels data. This allows you to write to a subrectangle or have padded rows in the destination. Generally, pitch should equal the number of pixels per row in the pixels data times the number of bytes per pixel, but it might contain additional padding (for example, 24bit RGB Windows Bitmap data pads all rows to multiples of 4 bytes).


This function is available since SDL 2.0.0.


[ edit | delete | history | feedback | raw ]

[ front page | index | search | recent changes | git repo | offline html ]

All wiki content is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
Wiki powered by ghwikipp.