fxaa-hq.effect 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. // Copyright (c) 2017-2020 Xiamen Yaji Software Co., Ltd.
  2. CCEffect %{
  3. techniques:
  4. - name: fxaa
  5. passes:
  6. - vert: fxaa-vs
  7. frag: fxaa-edge-fs:frag
  8. pass: fxaa
  9. depthStencilState:
  10. depthTest: false
  11. depthWrite: false
  12. rasterizerState:
  13. cullMode: none
  14. }%
  15. CCProgram fxaa-vs %{
  16. #include <./chunks/vs>
  17. }%
  18. CCProgram fxaa-edge-fs %{
  19. precision highp float;
  20. precision mediump int;
  21. #include <builtin/uniforms/cc-global>
  22. #include <common/common-define>
  23. //#define FXAA_PRESET 5
  24. #include <post-process/fxaa-hq>
  25. uniform fxaaUBO {
  26. vec4 texSize;
  27. };
  28. in vec2 v_uv;
  29. #pragma rate sceneColorMap pass
  30. uniform sampler2D sceneColorMap;
  31. vec4 frag () {
  32. vec3 color = FxaaPixelShader(v_uv, sceneColorMap, texSize.zw);
  33. float alpha = texture(sceneColorMap, v_uv).a;
  34. return vec4(color, alpha);
  35. }
  36. }%
  37. CCProgram copy-fs %{
  38. precision highp float;
  39. precision mediump int;
  40. uniform fxaaUBO {
  41. vec4 texSize;
  42. };
  43. in vec2 v_uv;
  44. #pragma rate sceneColorMap pass
  45. uniform sampler2D sceneColorMap;
  46. vec4 frag () {
  47. return texture(sceneColorMap, v_uv);
  48. }
  49. }%