32bit.glsl 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. void main()
  2. {
  3. //Change this number to increase the pixel size.
  4. float pixelSize = 2.0;
  5. float red = 0.0;
  6. float green = 0.0;
  7. float blue = 0.0;
  8. float2 pos = floor(GetCoordinates() * GetResolution() / pixelSize) * pixelSize * GetInvResolution();
  9. float4 c0 = SampleLocation(pos);
  10. if (c0.r < 0.06)
  11. red = 0.06;
  12. else if (c0.r < 0.13)
  13. red = 0.13;
  14. else if (c0.r < 0.26)
  15. red = 0.26;
  16. else if (c0.r < 0.33)
  17. red = 0.33;
  18. else if (c0.r < 0.46)
  19. red = 0.46;
  20. else if (c0.r < 0.60)
  21. red = 0.60;
  22. else if (c0.r < 0.73)
  23. red = 0.73;
  24. else if (c0.r < 0.80)
  25. red = 0.80;
  26. else if (c0.r < 0.93)
  27. red = 0.93;
  28. else
  29. red = 1.0;
  30. if (c0.b < 0.06)
  31. blue = 0.06;
  32. else if (c0.b < 0.13)
  33. blue = 0.13;
  34. else if (c0.b < 0.26)
  35. blue = 0.26;
  36. else if (c0.b < 0.33)
  37. blue = 0.33;
  38. else if (c0.b < 0.46)
  39. blue = 0.46;
  40. else if (c0.b < 0.60)
  41. blue = 0.60;
  42. else if (c0.b < 0.73)
  43. blue = 0.73;
  44. else if (c0.b < 0.80)
  45. blue = 0.80;
  46. else if( c0.b < 0.93)
  47. blue = 0.93;
  48. else
  49. blue = 1.0;
  50. if (c0.g < 0.06)
  51. green = 0.06;
  52. else if (c0.g < 0.13)
  53. green = 0.13;
  54. else if (c0.g < 0.26)
  55. green = 0.26;
  56. else if (c0.g < 0.33)
  57. green = 0.33;
  58. else if (c0.g < 0.46)
  59. green = 0.46;
  60. else if (c0.g < 0.60)
  61. green = 0.60;
  62. else if (c0.g < 0.73)
  63. green = 0.73;
  64. else if (c0.g < 0.80)
  65. green = 0.80;
  66. else if( c0.g < 0.93)
  67. green = 0.93;
  68. else
  69. green = 1.0;
  70. SetOutput(float4(red, green, blue, c0.a));
  71. }