summaryrefslogtreecommitdiffstats
path: root/Studio/Content/Effect Library/Desaturate.effect
diff options
context:
space:
mode:
Diffstat (limited to 'Studio/Content/Effect Library/Desaturate.effect')
-rw-r--r--Studio/Content/Effect Library/Desaturate.effect35
1 files changed, 35 insertions, 0 deletions
diff --git a/Studio/Content/Effect Library/Desaturate.effect b/Studio/Content/Effect Library/Desaturate.effect
new file mode 100644
index 0000000..02c3119
--- /dev/null
+++ b/Studio/Content/Effect Library/Desaturate.effect
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<Effect>
+ <MetaData>
+ <Property name="strenght_gray" formalName="Effect Strenght" min="0" max="1" default="1.0" description="Strenght of the Grayscale"/>
+ </MetaData>
+ <Shaders>
+ <Shared></Shared>
+ <VertexShaderShared></VertexShaderShared>
+ <FragmentShaderShared></FragmentShaderShared>
+ <Shader name="main">
+ <VertexShader></VertexShader>
+ <FragmentShader><![CDATA[
+
+vec4 desaturate(vec3 color, float strenght)
+{
+ vec3 lum = vec3(0.299, 0.587, 0.114);
+ // lum values based on: ITU-R BT.601
+ vec3 gray = vec3(dot(lum, color));
+ return vec4(mix(color, gray, strenght), 1.0);
+}
+void frag()
+{
+ vec4 origColor = texture2D_0(TexCoord);
+
+ gl_FragColor = desaturate(origColor.rgb,strenght_gray);
+}
+ ]]></FragmentShader>
+ </Shader>
+ </Shaders>
+ <Passes>
+ <Pass shader="main" input="[source]" output="[dest]"/>
+ </Passes>
+</Effect>
+
+