Advertisement
Guest User

Untitled

a guest
Oct 17th, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.65 KB | None | 0 0
  1. #define PIXEL_SIZE 10.0
  2.  
  3. void mainImage( out vec4 fragColor, in vec2 fragCoord )
  4. {
  5. vec2 uv = fragCoord.xy / iResolution.xy;
  6. vec2 m_uv = vec2(uv.x >= 0.5 ? uv.x - 0.5 : uv.x, uv.y >= 0.5 ? uv.y - 0.5 : uv.y) * 2.0;
  7. vec4 col = texture(iChannel0, m_uv);
  8. if(uv.x <= 0.5 && uv.y <= 0.5){
  9. col = texture(iChannel0, m_uv);
  10. float vcol = 10. * (mod(fragCoord.y / 5.,1.) - .45);
  11. float hCol = 10. * (mod(fragCoord.x / 5.,1.) - .55);
  12. float gray = hCol;
  13. if(col.r > 0.5) {
  14. gray = vcol;
  15. }
  16. col = vec4(vec3(gray),1.0);
  17. }else if(uv.x <= 0.5 && uv.y >= 0.5){
  18. col = texture(iChannel0, m_uv);
  19. if(80. / 255. < col.r && col.r < 170. / 255. &&
  20. 55. / 255. < col.g && col.g < 145. / 255. &&
  21. 55. / 255. < col.b && col.b < 145. / 255.){
  22. col = vec4(0);
  23. float dx = 1.0 / iResolution.x;
  24. float dy = 1.0 / iResolution.y;
  25. m_uv.x = (dx * PIXEL_SIZE) * floor(m_uv.x / (dx * PIXEL_SIZE));
  26. m_uv.y = (dy * PIXEL_SIZE) * floor(m_uv.y / (dy * PIXEL_SIZE));
  27.  
  28. for (int i = 0; i < int(PIXEL_SIZE); i++)
  29. for (int j = 0; j < int(PIXEL_SIZE); j++)
  30. col += texture(iChannel0, vec2(m_uv.x + dx * float(i), m_uv.y + dy * float(j)));
  31. col /= pow(PIXEL_SIZE, 2.0);
  32. }
  33. }else if(uv.x >= 0.5 && uv.y <= 0.5){
  34. m_uv.x = 1.0 - m_uv.x;
  35. col = texture(iChannel0, m_uv);
  36. col = vec4((col.r + col.g + col.b) / 3.);
  37. }else{
  38. m_uv.x = 1.0 - m_uv.x;
  39. col = texture(iChannel0, m_uv);
  40. col = vec4(1.) - col;
  41. }
  42. fragColor = col;
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement