8 bits alpha mask
ABGR, 32 bits, 10 bpc
Premultiplied ABGR, 32 bits, 10 bpc
ABGR, 32 bits
Premultiplied ABGR, 32 bits
ABGR half floating point, 64 bit
Premultiplied ABGR half floating point, 64 bit
Any format
ARGB, 32 bits, 10 bpc
Premultiplied ARGB, 32 bits, 10 bpc
ARGB, 32 bits
Premultiplied ARGB, 32 bits
ARGB half floating point, 64 bit
Premultiplied ARGB half floating point, 64 bit
BGR, 24 bits
BGRA, 32 bits, 10 bpc
Premultiplied BGRA, 32 bits, 10 bpc
BGRA, 32 bits
Premultiplied BGRA, 32 bits
BGRA half floating point, 64 bit
Premultiplied BGRA half floating point, 64 bit
BGRX, 32 bits
BGRX half floating point, 64 bit
Single luminance component, 16 bits
Single luminance component
RG, 32 bits
RG, 16 bits. Note that red-green textures
are only available if Cogl.FeatureID.OGL_FEATURE_ID_TEXTURE_RG is advertised.
See cogl_texture_set_components() for details.
RGB, 16 bits
RGB, 24 bits
RGBA, 32 bits, 10 bpc
Premultiplied RGBA, 32 bits, 10 bpc
RGBA, 64 bits, 16bpc
RGBA, 16 bits
Premultiplied RGBA, 16 bits
RGBA, 16 bits
Premultiplied RGBA, 16 bits
RGBA, 32 bits
Premultiplied RGBA, 32 bits
RGBA half floating point, 64 bit
Premultiplied RGBA half floating point, 64 bit
RGBA floating point, 128 bit
Premultiplied RGBA floating point, 128 bit
RGBX, 64 bits, 16bpc
RGBX, 32 bits
RGBX half floating point, 64 bit
XBGR, 32 bits, 10 bpc
XBGR, 32 bits
XRGB, 32 bits, 10 bpc
XRGB, 32 bits
Not currently supported
Pixel formats used by Cogl. For the formats with a byte per component, the order of the components specify the order in increasing memory addresses. So for example Cogl.PixelFormat.RGB_888 would have the red component in the lowest address, green in the next address and blue after that regardless of the endianness of the system.
For the formats with non byte aligned components the component order specifies the order within a 16-bit or 32-bit number from most significant bit to least significant. So for Cogl.PixelFormat.RGB_565, the red component would be in bits 11-15, the green component would be in 6-11 and the blue component would be in 1-5. Therefore the order in memory depends on the endianness of the system.
When uploading a texture Cogl.PixelFormat.ANY can be used as the internal format. Cogl will try to pick the best format to use internally and convert the texture data if necessary.