Copy an existing surface to a new surface of the specified format.
Defined in SDL_surface.h, but apps should use #include <SDL3/SDL.h>
const SDL_PixelFormat *format); SDL_Surface* SDL_ConvertSurface(SDL_Surface *surface,
surface | the existing SDL_Surface structure to convert |
format | the SDL_PixelFormat structure that the new surface is optimized for |
Returns the new SDL_Surface structure that is created or NULL if it fails; call SDL_GetError() for more information.
This function is used to optimize images for faster repeat blitting. This is accomplished by converting the original and storing the result as a new surface. The new, optimized surface can then be used as the source for future blits, making them faster.
This function is available since SDL 3.0.0.
SDL_Surface *input;
SDL_PixelFormat *format = SDL_CreatePixelFormat(SDL_PIXELFORMAT_RGBA32);
SDL_Surface *output = SDL_ConvertSurface(input, format); SDL_DestroyPixelFormat(format);
CategoryAPI, CategoryAPIFunction, CategorySurface