summaryrefslogtreecommitdiffstats
path: root/Studio/Content/Effect Library/FrameFlipper.effect
diff options
context:
space:
mode:
Diffstat (limited to 'Studio/Content/Effect Library/FrameFlipper.effect')
-rw-r--r--Studio/Content/Effect Library/FrameFlipper.effect41
1 files changed, 41 insertions, 0 deletions
diff --git a/Studio/Content/Effect Library/FrameFlipper.effect b/Studio/Content/Effect Library/FrameFlipper.effect
new file mode 100644
index 0000000..6529e6c
--- /dev/null
+++ b/Studio/Content/Effect Library/FrameFlipper.effect
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<Effect>
+ <MetaData>
+ <Property name="horflip" formalName="Flip Horizontally" type="Boolean" description="Flip Frame horizontally" default="False"/>
+ <Property name="verflip" formalName="Flip Vertically" type="Boolean" description="Flip Frame vertically" default="False"/>
+ </MetaData>
+ <Shaders>
+ <Shared></Shared>
+ <VertexShaderShared></VertexShaderShared>
+ <FragmentShaderShared></FragmentShaderShared>
+ <Shader name="main">
+ <VertexShader></VertexShader>
+ <FragmentShader><![CDATA[
+void frag()
+{
+ float yflippedCoord = 1.0 - TexCoord.y;
+ float xflippedCoord = 1.0 - TexCoord.x;
+ vec2 flippedCoord = TexCoord;
+
+ if(horflip || verflip){
+ if(horflip){
+ flippedCoord.x = xflippedCoord;
+ }
+ if(verflip){
+ flippedCoord.y = yflippedCoord;
+ }
+ }
+
+ vec4 origColor = texture2D_0(flippedCoord);
+
+ gl_FragColor = origColor;
+}
+ ]]></FragmentShader>
+ </Shader>
+ </Shaders>
+ <Passes>
+ <Pass shader="main" input="[source]" output="[dest]"/>
+ </Passes>
+</Effect>
+
+