+ Color operator*(float f) const { return Color(r*f, g*f, b*f, a); }
+ Color operator+(const Color &c) const { return Color(r+c.r, g+c.g, b+c.b, 1-(1-a)*(1-c.a)); }
+ bool operator==(const Color &c) const { return (r==c.r && g==c.g && b==c.b && a==c.a); }
+ bool operator!=(const Color &c) const { return !operator==(c); }
+
+ Color to_srgb() const { return Color(GL::to_srgb(r), GL::to_srgb(g), GL::to_srgb(b), a); }
+ Color to_linear() const { return Color(GL::to_linear(r), GL::to_linear(g), GL::to_linear(b), a); }