Class SDL_PixelFormat
java.lang.Object
club.doki7.sdl3.enumtype.SDL_PixelFormat
Pixel format.
SDL's pixel formats have the following naming convention:
- Names with a list of components and a single bit count, such as RGB24 and ABGR32, define a platform-independent encoding into bytes in the order specified. For example, in RGB24 data, each pixel is encoded in 3 bytes (red, green, blue) in that order, and in ABGR32 data, each pixel is encoded in 4 bytes alpha, blue, green, red) in that order. Use these names if the property of a format that is important to you is the order of the bytes in memory or on disk.
- Names with a bit count per component, such as ARGB8888 and XRGB1555, are "packed" into an appropriately-sized integer in the platform's native endianness. For example, ARGB8888 is a sequence of 32-bit integers; in each integer, the most significant bits are alpha, and the least significant bits are blue. On a little-endian CPU such as x86, the least significant bits of each integer are arranged first in memory, but on a big-endian CPU such as s390x, the most significant bits are arranged first. Use these names if the property of a format that is important to you is the meaning of each bit position within a native-endianness integer.
- In indexed formats such as INDEX4LSB, each pixel is represented by encoding an index into the palette into the indicated number of bits, with multiple pixels packed into each byte if appropriate. In LSB formats, the first (leftmost) pixel is stored in the least-significant bits of the byte; in MSB formats, it's stored in the most-significant bits. INDEX8 does not need LSB/MSB variants, because each pixel exactly fills one byte.
The 32-bit byte-array encodings such as RGBA32 are aliases for the appropriate 8888 encoding for the current platform. For example, RGBA32 is an alias for ABGR8888 on little-endian CPUs like x86, or an alias for RGBA8888 on big-endian CPUs.
Since: This enum is available since SDL 3.2.0.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
-
Method Summary
-
Field Details
-
UNKNOWN
public static final int UNKNOWN- See Also:
-
INDEX1LSB
public static final int INDEX1LSB- See Also:
-
INDEX1MSB
public static final int INDEX1MSB- See Also:
-
INDEX2LSB
public static final int INDEX2LSB- See Also:
-
INDEX2MSB
public static final int INDEX2MSB- See Also:
-
INDEX4LSB
public static final int INDEX4LSB- See Also:
-
INDEX4MSB
public static final int INDEX4MSB- See Also:
-
INDEX8
public static final int INDEX8- See Also:
-
RGB332
public static final int RGB332- See Also:
-
XRGB4444
public static final int XRGB4444- See Also:
-
XBGR4444
public static final int XBGR4444- See Also:
-
XRGB1555
public static final int XRGB1555- See Also:
-
XBGR1555
public static final int XBGR1555- See Also:
-
ARGB4444
public static final int ARGB4444- See Also:
-
RGBA4444
public static final int RGBA4444- See Also:
-
ABGR4444
public static final int ABGR4444- See Also:
-
BGRA4444
public static final int BGRA4444- See Also:
-
ARGB1555
public static final int ARGB1555- See Also:
-
RGBA5551
public static final int RGBA5551- See Also:
-
ABGR1555
public static final int ABGR1555- See Also:
-
BGRA5551
public static final int BGRA5551- See Also:
-
RGB565
public static final int RGB565- See Also:
-
BGR565
public static final int BGR565- See Also:
-
RGB24
public static final int RGB24- See Also:
-
BGR24
public static final int BGR24- See Also:
-
XRGB8888
public static final int XRGB8888- See Also:
-
RGBX8888
public static final int RGBX8888- See Also:
-
XBGR8888
public static final int XBGR8888- See Also:
-
BGRX8888
public static final int BGRX8888- See Also:
-
ARGB8888
public static final int ARGB8888- See Also:
-
RGBA8888
public static final int RGBA8888- See Also:
-
ABGR8888
public static final int ABGR8888- See Also:
-
BGRA8888
public static final int BGRA8888- See Also:
-
XRGB2101010
public static final int XRGB2101010- See Also:
-
XBGR2101010
public static final int XBGR2101010- See Also:
-
ARGB2101010
public static final int ARGB2101010- See Also:
-
ABGR2101010
public static final int ABGR2101010- See Also:
-
RGB48
public static final int RGB48- See Also:
-
BGR48
public static final int BGR48- See Also:
-
RGBA64
public static final int RGBA64- See Also:
-
ARGB64
public static final int ARGB64- See Also:
-
BGRA64
public static final int BGRA64- See Also:
-
ABGR64
public static final int ABGR64- See Also:
-
RGB48_FLOAT
public static final int RGB48_FLOAT- See Also:
-
BGR48_FLOAT
public static final int BGR48_FLOAT- See Also:
-
RGBA64_FLOAT
public static final int RGBA64_FLOAT- See Also:
-
ARGB64_FLOAT
public static final int ARGB64_FLOAT- See Also:
-
BGRA64_FLOAT
public static final int BGRA64_FLOAT- See Also:
-
ABGR64_FLOAT
public static final int ABGR64_FLOAT- See Also:
-
RGB96_FLOAT
public static final int RGB96_FLOAT- See Also:
-
BGR96_FLOAT
public static final int BGR96_FLOAT- See Also:
-
RGBA128_FLOAT
public static final int RGBA128_FLOAT- See Also:
-
ARGB128_FLOAT
public static final int ARGB128_FLOAT- See Also:
-
BGRA128_FLOAT
public static final int BGRA128_FLOAT- See Also:
-
ABGR128_FLOAT
public static final int ABGR128_FLOAT- See Also:
-
YV12
public static final int YV12- See Also:
-
IYUV
public static final int IYUV- See Also:
-
YUY2
public static final int YUY2- See Also:
-
UYVY
public static final int UYVY- See Also:
-
YVYU
public static final int YVYU- See Also:
-
NV12
public static final int NV12- See Also:
-
NV21
public static final int NV21- See Also:
-
P010
public static final int P010- See Also:
-
EXTERNAL_OES
public static final int EXTERNAL_OES- See Also:
-
MJPG
public static final int MJPG- See Also:
-
-
Method Details
-
explain
-