Function SDL_CreateSurfaceFrom

pub unsafe extern "C" fn SDL_CreateSurfaceFrom(
    width: i32,
    height: i32,
    format: SDL_PixelFormat,
    pixels: *mut c_void,
    pitch: i32,
) -> *mut SDL_Surface
Available on crate feature dep_sdl3 only.
Expand description

Allocate a new surface with a specific pixel format and existing pixel data.

No copy is made of the pixel data. Pixel data is not managed automatically; you must free the surface before you free the pixel data.

Pitch is the offset in bytes from one row of pixels to the next, e.g. width*4 for SDL_PIXELFORMAT_RGBA8888.

You may pass NULL for pixels and 0 for pitch to create a surface that you will fill in with valid values later.

§Parameters

  • width: the width of the surface.
  • height: the height of the surface.
  • format: the SDL_PixelFormat for the new surface’s pixel format.
  • pixels: a pointer to existing pixel data.
  • pitch: the number of bytes between each row, including padding.

§Return value

Returns the new SDL_Surface structure that is created or NULL on failure; call SDL_GetError() for more information.

§Availability

This function is available since SDL 3.2.0.

§See also