+Blend::Blend():
+ eq(ADD),
+ src_factor(ONE),
+ dst_factor(ZERO)
+{ }
+
+Blend::Blend(BlendFactor sf, BlendFactor df):
+ eq(ADD),
+ src_factor(sf),
+ dst_factor(df)
+{ }
+
+Blend::Blend(BlendEquation e, BlendFactor sf, BlendFactor df):
+ eq(e),
+ src_factor(sf),
+ dst_factor(df)
+{
+ if(eq!=ADD)
+ static RequireVersion _ver(1, 2);
+}
+
+void Blend::bind() const
+{
+ if(set_current(this))
+ {
+ glEnable(GL_BLEND);
+ if(glBlendEquation)
+ glBlendEquation(eq);
+ glBlendFunc(src_factor, dst_factor);
+ }
+}
+
+void Blend::unbind()