SAOPass.d.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import {
  2. Scene,
  3. Camera,
  4. Material,
  5. MeshDepthMaterial,
  6. MeshNormalMaterial,
  7. ShaderMaterial,
  8. Color,
  9. Vector2,
  10. WebGLRenderer,
  11. WebGLRenderTarget
  12. } from '../../../src/Three';
  13. import { Pass } from './Pass';
  14. export enum OUTPUT {
  15. Beauty,
  16. Default,
  17. SAO,
  18. Depth,
  19. Normal
  20. }
  21. interface SAOPassParams {
  22. output: OUTPUT;
  23. saoBias: number;
  24. saoIntensity: number;
  25. saoScale: number;
  26. saoKernelRadius: number;
  27. saoMinResolution: number;
  28. saoBlur: number;
  29. saoBlurRadius: number;
  30. saoBlurStdDev: number;
  31. saoBlurDepthCutoff: number;
  32. }
  33. export class SAOPass extends Pass {
  34. constructor( scene: Scene, camera: Camera, depthTexture?: boolean, useNormals?: boolean, resolution?: Vector2 );
  35. scene: Scene;
  36. camera: Camera;
  37. supportsDepthTextureExtension: boolean;
  38. supportsNormalTexture: boolean;
  39. originalClearColor: Color;
  40. oldClearColor: Color;
  41. oldClearAlpha: number;
  42. resolution: Vector2;
  43. saoRenderTarget: WebGLRenderTarget;
  44. blurIntermediateRenderTarget: WebGLRenderTarget;
  45. beautyRenderTarget: WebGLRenderTarget;
  46. normalRenderTarget: WebGLRenderTarget;
  47. depthRenderTarget: WebGLRenderTarget;
  48. depthMaterial: MeshDepthMaterial;
  49. normalMaterial: MeshNormalMaterial;
  50. saoMaterial: ShaderMaterial;
  51. vBlurMaterial: ShaderMaterial;
  52. hBlurMaterial: ShaderMaterial;
  53. materialCopy: ShaderMaterial;
  54. depthCopy: ShaderMaterial;
  55. fsQuad: object;
  56. params: SAOPassParams;
  57. static OUTPUT: OUTPUT;
  58. renderPass( renderer: WebGLRenderer, passMaterial: Material, renderTarget: WebGLRenderTarget, clearColor?: Color | string | number, clearAlpha?: number ): void;
  59. renderOverride( renderer: WebGLRenderer, overrideMaterial: Material, renderTarget: WebGLRenderTarget, clearColor?: Color | string | number, clearAlpha?: number ): void;
  60. }