123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #version 330
- // Input vertex attributes (from vertex shader)
- in vec2 fragTexCoord;
- in vec4 fragColor;
- // Input uniform values
- uniform sampler2D texture0;
- uniform vec4 colDiffuse;
- // Output fragment color
- out vec4 finalColor;
- // NOTE: Add here your custom variables
- float hatchOffsetY = 5.0;
- float lumThreshold01 = 0.9;
- float lumThreshold02 = 0.7;
- float lumThreshold03 = 0.5;
- float lumThreshold04 = 0.3;
- void main()
- {
- vec3 tc = vec3(1.0, 1.0, 1.0);
- float lum = length(texture(texture0, fragTexCoord).rgb);
- if (lum < lumThreshold01)
- {
- if (mod(gl_FragCoord.x + gl_FragCoord.y, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0);
- }
- if (lum < lumThreshold02)
- {
- if (mod(gl_FragCoord.x - gl_FragCoord.y, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0);
- }
- if (lum < lumThreshold03)
- {
- if (mod(gl_FragCoord.x + gl_FragCoord.y - hatchOffsetY, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0);
- }
- if (lum < lumThreshold04)
- {
- if (mod(gl_FragCoord.x - gl_FragCoord.y - hatchOffsetY, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0);
- }
- finalColor = vec4(tc, 1.0);
- }
|