kernelBlur.fragment.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. // Do not edit.
  2. import { ShaderStore } from "../Engines/shaderStore.js";
  3. import "./ShadersInclude/kernelBlurVaryingDeclaration.js";
  4. import "./ShadersInclude/packingFunctions.js";
  5. import "./ShadersInclude/kernelBlurFragment.js";
  6. import "./ShadersInclude/kernelBlurFragment2.js";
  7. const name = "kernelBlurPixelShader";
  8. const shader = `uniform sampler2D textureSampler;uniform vec2 delta;varying vec2 sampleCenter;
  9. #ifdef DOF
  10. uniform sampler2D circleOfConfusionSampler;float sampleCoC(in vec2 offset) {float coc=texture2D(circleOfConfusionSampler,offset).r;return coc; }
  11. #endif
  12. #include<kernelBlurVaryingDeclaration>[0..varyingCount]
  13. #ifdef PACKEDFLOAT
  14. #include<packingFunctions>
  15. #endif
  16. #define CUSTOM_FRAGMENT_DEFINITIONS
  17. void main(void)
  18. {float computedWeight=0.0;
  19. #ifdef PACKEDFLOAT
  20. float blend=0.;
  21. #else
  22. vec4 blend=vec4(0.);
  23. #endif
  24. #ifdef DOF
  25. float sumOfWeights=CENTER_WEIGHT;
  26. float factor=0.0;
  27. #ifdef PACKEDFLOAT
  28. blend+=unpack(texture2D(textureSampler,sampleCenter))*CENTER_WEIGHT;
  29. #else
  30. blend+=texture2D(textureSampler,sampleCenter)*CENTER_WEIGHT;
  31. #endif
  32. #endif
  33. #include<kernelBlurFragment>[0..varyingCount]
  34. #include<kernelBlurFragment2>[0..depCount]
  35. #ifdef PACKEDFLOAT
  36. gl_FragColor=pack(blend);
  37. #else
  38. gl_FragColor=blend;
  39. #endif
  40. #ifdef DOF
  41. gl_FragColor/=sumOfWeights;
  42. #endif
  43. }`;
  44. // Sideeffect
  45. ShaderStore.ShadersStore[name] = shader;
  46. /** @internal */
  47. export const kernelBlurPixelShader = { name, shader };
  48. //# sourceMappingURL=kernelBlur.fragment.js.map