diff options
| author | Ray <raysan5@gmail.com> | 2015-09-03 01:49:58 +0200 |
|---|---|---|
| committer | Ray <raysan5@gmail.com> | 2015-09-03 01:49:58 +0200 |
| commit | 77558eec0caf0736fa36c96b5807d928317d3dd7 (patch) | |
| tree | 860d9e77d27729fa2572aa8207d77f8def083ccd /shaders/gl330/cross_stitching.fs | |
| parent | 858ccb350dab317483bf58a5852f88df0a49a7b2 (diff) | |
| parent | d05acb1b6878b101ecbde0aeb3aa1bcf80b960af (diff) | |
| download | raylib-1.3.0.tar.gz raylib-1.3.0.zip | |
Merge pull request #28 from raysan5/develop1.3.0-installer1.3.0
Integrating Develop branch
Diffstat (limited to 'shaders/gl330/cross_stitching.fs')
| -rw-r--r-- | shaders/gl330/cross_stitching.fs | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/shaders/gl330/cross_stitching.fs b/shaders/gl330/cross_stitching.fs new file mode 100644 index 00000000..041bf1dc --- /dev/null +++ b/shaders/gl330/cross_stitching.fs @@ -0,0 +1,54 @@ +#version 330 + +in vec2 fragTexCoord; + +out vec4 fragColor; + +uniform sampler2D texture0; +uniform vec4 tintColor; + +// NOTE: Add here your custom variables + +const float renderWidth = 1280; +const float renderHeight = 720; + +float stitchingSize = 6.0f; + +uniform int invert = 0; + +vec4 PostFX(sampler2D tex, vec2 uv) +{ + vec4 c = vec4(0.0); + float size = stitchingSize; + vec2 cPos = uv * vec2(renderWidth, renderHeight); + vec2 tlPos = floor(cPos / vec2(size, size)); + tlPos *= size; + + int remX = int(mod(cPos.x, size)); + int remY = int(mod(cPos.y, size)); + + if (remX == 0 && remY == 0) tlPos = cPos; + + vec2 blPos = tlPos; + blPos.y += (size - 1.0); + + if ((remX == remY) || (((int(cPos.x) - int(blPos.x)) == (int(blPos.y) - int(cPos.y))))) + { + if (invert == 1) c = vec4(0.2, 0.15, 0.05, 1.0); + else c = texture2D(tex, tlPos * vec2(1.0/renderWidth, 1.0/renderHeight)) * 1.4; + } + else + { + if (invert == 1) c = texture2D(tex, tlPos * vec2(1.0/renderWidth, 1.0/renderHeight)) * 1.4; + else c = vec4(0.0, 0.0, 0.0, 1.0); + } + + return c; +} + +void main(void) +{ + vec3 tc = PostFX(texture0, fragTexCoord).rgb; + + fragColor = vec4(tc, 1.0); +}
\ No newline at end of file |
