diff --git a/crates/bevy_render/src/color/mod.rs b/crates/bevy_render/src/color/mod.rs index d66a455cba..b5f1fb9198 100644 --- a/crates/bevy_render/src/color/mod.rs +++ b/crates/bevy_render/src/color/mod.rs @@ -683,6 +683,17 @@ impl Color { } } + /// Converts a `Color` to a `[u8; 4]` from sRGB colorspace + pub fn as_rgba_u8(&self) -> [u8; 4] { + let [r, g, b, a] = self.as_rgba_f32(); + [ + (r * u8::MAX as f32) as u8, + (g * u8::MAX as f32) as u8, + (b * u8::MAX as f32) as u8, + (a * u8::MAX as f32) as u8, + ] + } + /// Converts a `Color` to a `[f32; 4]` from sRGB colorspace pub fn as_rgba_f32(self: Color) -> [f32; 4] { match self {