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


Get the SDL surface associated with the window.

Header File

Defined in SDL_video.h


SDL_Surface * SDL_GetWindowSurface(SDL_Window * window);

Function Parameters

SDL_Window * window the window to query.

Return Value

(SDL_Surface *) Returns the surface associated with the window, or NULL on failure; call SDL_GetError() for more information.


A new surface will be created with the optimal format for the window, if necessary. This surface will be freed when the window is destroyed. Do not free this surface.

This surface will be invalidated if the window is resized. After resizing a window this function must be called again to return a valid surface.

Note that on some platforms the pixels pointer of the surface may be modified after each call to SDL_UpdateWindowSurface(), so that the platform code can implement efficient double or triple buffering.

You may not combine this with 3D or the rendering API on this window.

This function is affected by SDL_HINT_FRAMEBUFFER_ACCELERATION.


This function is available since SDL 2.0.0.

See Also

CategoryAPI, CategoryAPIFunction, CategoryVideo

[ 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.