Copy an existing surface to a new surface of the specified format and colorspace.
Defined in <SDL3/SDL_surface.h>
SDL_Surface * SDL_ConvertSurfaceAndColorspace(SDL_Surface *surface, SDL_PixelFormat format, SDL_Palette *palette, SDL_Colorspace colorspace, SDL_PropertiesID props);
SDL_Surface * | surface | the existing SDL_Surface structure to convert. |
SDL_PixelFormat | format | the new pixel format. |
SDL_Palette * | palette | an optional palette to use for indexed formats, may be NULL. |
SDL_Colorspace | colorspace | the new colorspace. |
SDL_PropertiesID | props | an SDL_PropertiesID with additional color properties, or 0. |
(SDL_Surface *) Returns the new SDL_Surface structure that is created or NULL on failure; call SDL_GetError() for more information.
This function converts an existing surface to a new format and colorspace and returns the new surface. This will perform any pixel format and colorspace conversion needed.
If the original surface has alternate images, the new surface will have a reference to them as well.
This function is available since SDL 3.1.3.