Advertisement
stirante

glsl test

Dec 25th, 2016
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.83 KB | None | 0 0
  1. const vec3 W = vec3(0.2125, 0.7154, 0.0721);
  2. vec3 BrightnessContrastSaturation(vec3 color, float brt, float con, float sat)
  3. {
  4. vec3 black = vec3(0., 0., 0.);
  5. vec3 middle = vec3(0.5, 0.5, 0.5);
  6. float luminance = dot(color, W);
  7. vec3 gray = vec3(luminance, luminance, luminance);
  8.  
  9. vec3 brtColor = mix(black, color, brt);
  10. vec3 conColor = mix(middle, brtColor, con);
  11. vec3 satColor = mix(gray, conColor, sat);
  12. return satColor;
  13. }
  14. vec3 Exposure(vec3 color, float exposure) {
  15. return color * pow(2.0, exposure);
  16. }
  17. void mainImage( out vec4 fragColor, in vec2 fragCoord )
  18. {
  19. vec2 uv = fragCoord.xy / iResolution.xy;
  20. vec3 color = texture2D(iChannel0, uv).rgb;
  21. color = BrightnessContrastSaturation(color, 1.0, 1.0, 1.22);
  22. color = Exposure(color, 0.);
  23. fragColor = vec4(color, 1.);
  24. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement