fs_bokeh_dof_combine.sc 698 B

1234567891011121314151617181920212223242526272829
  1. $input v_texcoord0
  2. /*
  3. * Copyright 2021 elven cache. All rights reserved.
  4. * License: https://github.com/bkaradzic/bgfx/blob/master/LICENSE
  5. */
  6. #include "../common/common.sh"
  7. #include "parameters.sh"
  8. SAMPLER2D(s_color, 0);
  9. SAMPLER2D(s_blurredColor, 1);
  10. void main()
  11. {
  12. vec2 texCoord = v_texcoord0.xy;
  13. vec4 color = texture2D(s_color, texCoord);
  14. vec4 dofColorSize = texture2D(s_blurredColor, texCoord);
  15. vec3 dofColor = dofColorSize.xyz;
  16. float sampleSize = dofColorSize.w;
  17. float m = saturate(sampleSize-1.0);
  18. color.xyz = mix(color.xyz, dofColor, m);
  19. // this pass is writing directly out to backbuffer, convert from linear to gamma
  20. color.xyz = toGamma(color.xyz);
  21. gl_FragColor = color;
  22. }