bokeh_dof_inc.glsl 698 B

12345678910111213141516171819202122232425262728293031323334353637
  1. layout(push_constant, binding = 1, std430) uniform Params {
  2. ivec2 size;
  3. float z_far;
  4. float z_near;
  5. bool orthogonal;
  6. float blur_size;
  7. float blur_scale;
  8. int blur_steps;
  9. bool blur_near_active;
  10. float blur_near_begin;
  11. float blur_near_end;
  12. bool blur_far_active;
  13. float blur_far_begin;
  14. float blur_far_end;
  15. bool second_pass;
  16. bool half_size;
  17. bool use_jitter;
  18. float jitter_seed;
  19. uint pad[2];
  20. }
  21. params;
  22. //used to work around downsampling filter
  23. #define DEPTH_GAP 0.0
  24. const float GOLDEN_ANGLE = 2.39996323;
  25. //note: uniform pdf rand [0;1[
  26. float hash12n(vec2 p) {
  27. p = fract(p * vec2(5.3987, 5.4421));
  28. p += dot(p.yx, p.xy + vec2(21.5351, 14.3137));
  29. return fract(p.x * p.y * 95.4307);
  30. }