Enum
VkComponentSwizzle
Specify how a component is swizzled
Possible values of the members of VkComponentMapping, specifying the component values placed in each component of the output vector, are:
typedef enum VkComponentSwizzle {
VK_COMPONENT_SWIZZLE_IDENTITY = 0,
VK_COMPONENT_SWIZZLE_ZERO = 1,
VK_COMPONENT_SWIZZLE_ONE = 2,
VK_COMPONENT_SWIZZLE_R = 3,
VK_COMPONENT_SWIZZLE_G = 4,
VK_COMPONENT_SWIZZLE_B = 5,
VK_COMPONENT_SWIZZLE_A = 6,
} VkComponentSwizzle;
pub struct ComponentSwizzle(u32);
impl ComponentSwizzle {
pub const IDENTITY: Self = 0;
pub const ZERO: Self = 1;
pub const ONE: Self = 2;
pub const R: Self = 3;
pub const G: Self = 4;
pub const B: Self = 5;
pub const A: Self = 6;
}
VK_COMPONENT_SWIZZLE_IDENTITYspecifies that the component is set to the identity swizzle.VK_COMPONENT_SWIZZLE_ZEROspecifies that the component is set to zero.VK_COMPONENT_SWIZZLE_ONEspecifies that the component is set to either 1 or 1.0, depending on whether the type of the image view format is integer or floating-point respectively, as determined by the Format Definition section for each VkFormat.VK_COMPONENT_SWIZZLE_Rspecifies that the component is set to the value of the R component of the image.VK_COMPONENT_SWIZZLE_Gspecifies that the component is set to the value of the G component of the image.VK_COMPONENT_SWIZZLE_Bspecifies that the component is set to the value of the B component of the image.VK_COMPONENT_SWIZZLE_Aspecifies that the component is set to the value of the A component of the image.
Setting the identity swizzle on a component is equivalent to setting the identity mapping on that component. That is:
| Component | Identity Mapping |
|---|---|
components.r | VK_COMPONENT_SWIZZLE_R |
components.g | VK_COMPONENT_SWIZZLE_G |
components.b | VK_COMPONENT_SWIZZLE_B |
components.a | VK_COMPONENT_SWIZZLE_A |
Parent
VK_VERSION_1_0Type
Enum