diff options
-rw-r--r-- | glow/src/triangle/solid.rs | 10 | ||||
-rw-r--r-- | wgpu/src/triangle/solid.rs | 4 |
2 files changed, 9 insertions, 5 deletions
diff --git a/glow/src/triangle/solid.rs b/glow/src/triangle/solid.rs index 311e3704..fb3d40c3 100644 --- a/glow/src/triangle/solid.rs +++ b/glow/src/triangle/solid.rs @@ -63,13 +63,15 @@ impl Program { } if color != &self.uniform_data.color { + let [r, g, b, a] = color.into_linear(); + unsafe { gl.uniform_4_f32( Some(&self.uniform_data.color_location), - color.r, - color.g, - color.b, - color.a, + r, + g, + b, + a, ); } diff --git a/wgpu/src/triangle/solid.rs b/wgpu/src/triangle/solid.rs index 0373ebee..75455310 100644 --- a/wgpu/src/triangle/solid.rs +++ b/wgpu/src/triangle/solid.rs @@ -20,9 +20,11 @@ pub(super) struct Uniforms { impl Uniforms { pub fn new(transform: Transformation, color: Color) -> Self { + let [r, g, b, a] = color.into_linear(); + Self { transform: transform.into(), - color: Vec4::new(color.r, color.g, color.b, color.a), + color: Vec4::new(r, g, b, a), } } } |