A macro for defining custom non-FourCC pixel formats.
Defined in <SDL3/SDL_pixels.h>
#define SDL_DEFINE_PIXELFORMAT(type, order, layout, bits, bytes) \
((1 << 28) | ((type) << 24) | ((order) << 20) | ((layout) << 16) | \
((bits) << 8) | ((bytes) << 0))
type | the type of the new format, probably a SDL_PixelType value. |
order | the order of the new format, probably a SDL_BitmapOrder, SDL_PackedOrder, or SDL_ArrayOrder value. |
layout | the layout of the new format, probably an SDL_PackedLayout value or zero. |
bits | the number of bits per pixel of the new format. |
bytes | the number of bytes per pixel of the new format. |
Returns a format value in the style of SDL_PixelFormat.
For example, defining SDL_PIXELFORMAT_RGBA8888 looks like this:
32, 4) SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_RGBA, SDL_PACKEDLAYOUT_8888,
It is safe to call this macro from any thread.
This macro is available since SDL 3.1.3.