logo
#[non_exhaustive]
#[repr(u32)]
pub enum PixelFormat {
Show 31 variants Any, A8, Rgb565, Rgba4444, Rgba5551, Yuv, G8, Rg88, Rgb888, Bgr888, Rgba8888, Bgra8888, Argb8888, Abgr8888, Rgba1010102, Bgra1010102, Argb2101010, Abgr2101010, Rgba8888Pre, Bgra8888Pre, Argb8888Pre, Abgr8888Pre, Rgba4444Pre, Rgba5551Pre, Rgba1010102Pre, Bgra1010102Pre, Argb2101010Pre, Abgr2101010Pre, Depth16, Depth32, Depth24Stencil8,
}
Expand description

Pixel formats definitions.

For the formats with a byte per component, the order of the components specify the order in increasing memory addresses. So for example PixelFormat::Rgb888 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 PixelFormat::Rgb565, 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 PixelFormat::Any can be used as the internal format. will try to pick the best format to use internally and convert the texture data if necessary.

Variants (Non-exhaustive)

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.

Any

Any format

A8

8 bits alpha mask

Rgb565

RGB, 16 bits

Rgba4444

RGBA, 16 bits

Rgba5551

RGBA, 16 bits

Yuv

Not currently supported

G8

Single luminance component

Rg88

RG, 16 bits. Note that red-green textures are only available if FeatureID::OglFeatureIdTextureRg is advertised. See Texture::set_components for details.

Rgb888

RGB, 24 bits

Bgr888

BGR, 24 bits

Rgba8888

RGBA, 32 bits

Bgra8888

BGRA, 32 bits

Argb8888

ARGB, 32 bits

Abgr8888

ABGR, 32 bits

Rgba1010102

RGBA, 32 bits, 10 bpc

Bgra1010102

BGRA, 32 bits, 10 bpc

Argb2101010

ARGB, 32 bits, 10 bpc

Abgr2101010

ABGR, 32 bits, 10 bpc

Rgba8888Pre

Premultiplied RGBA, 32 bits

Bgra8888Pre

Premultiplied BGRA, 32 bits

Argb8888Pre

Premultiplied ARGB, 32 bits

Abgr8888Pre

Premultiplied ABGR, 32 bits

Rgba4444Pre

Premultiplied RGBA, 16 bits

Rgba5551Pre

Premultiplied RGBA, 16 bits

Rgba1010102Pre

Premultiplied RGBA, 32 bits, 10 bpc

Bgra1010102Pre

Premultiplied BGRA, 32 bits, 10 bpc

Argb2101010Pre

Premultiplied ARGB, 32 bits, 10 bpc

Abgr2101010Pre

Premultiplied ABGR, 32 bits, 10 bpc

Depth16

Depth32

Depth24Stencil8

Implementations

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method returns an Ordering between self and other. Read more

Compares and returns the maximum of two values. Read more

Compares and returns the minimum of two values. Read more

Restrict a value to a certain interval. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Typed getter

Inspect the context.

Inspect the context.

Inspect the context.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Convert into color

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

Sets value as a parameter of self.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

Converts the given value to a String. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.