angular-three-postprocessing 2.0.0-beta.9 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/README.md +56 -4
  2. package/esm2022/lib/effect-composer.mjs +111 -171
  3. package/esm2022/lib/effect.mjs +43 -71
  4. package/esm2022/lib/effects/ascii.mjs +120 -0
  5. package/esm2022/lib/effects/bloom.mjs +39 -0
  6. package/esm2022/lib/effects/brightness-contrast.mjs +38 -0
  7. package/esm2022/lib/effects/chromatic-abberation.mjs +38 -0
  8. package/esm2022/lib/effects/color-average.mjs +33 -0
  9. package/esm2022/lib/effects/color-depth.mjs +38 -0
  10. package/esm2022/lib/effects/depth-of-field.mjs +56 -0
  11. package/esm2022/lib/effects/depth.mjs +38 -0
  12. package/esm2022/lib/effects/dot-screen.mjs +38 -0
  13. package/esm2022/lib/effects/fxaa.mjs +38 -0
  14. package/esm2022/lib/effects/glitch.mjs +63 -0
  15. package/esm2022/lib/effects/god-rays.mjs +41 -0
  16. package/esm2022/lib/effects/grid.mjs +42 -0
  17. package/esm2022/lib/effects/hue-saturation.mjs +38 -0
  18. package/esm2022/lib/effects/index.mjs +28 -18
  19. package/esm2022/lib/effects/lens-flare.mjs +195 -0
  20. package/esm2022/lib/effects/lut.mjs +50 -0
  21. package/esm2022/lib/effects/noise.mjs +39 -0
  22. package/esm2022/lib/effects/outline.mjs +143 -0
  23. package/esm2022/lib/effects/pixelation.mjs +30 -0
  24. package/esm2022/lib/effects/scanline.mjs +43 -0
  25. package/esm2022/lib/effects/sepia.mjs +38 -0
  26. package/esm2022/lib/effects/shock-wave.mjs +38 -0
  27. package/esm2022/lib/effects/smaa.mjs +38 -0
  28. package/esm2022/lib/effects/tilt-shift-2.mjs +121 -0
  29. package/esm2022/lib/effects/tilt-shift.mjs +39 -0
  30. package/esm2022/lib/effects/vignette.mjs +38 -0
  31. package/esm2022/lib/effects/water.mjs +64 -0
  32. package/fesm2022/angular-three-postprocessing.mjs +1280 -651
  33. package/fesm2022/angular-three-postprocessing.mjs.map +1 -1
  34. package/lib/effect-composer.d.ts +24 -76
  35. package/lib/effect.d.ts +52 -23
  36. package/lib/effects/ascii.d.ts +23 -0
  37. package/lib/effects/bloom.d.ts +10 -0
  38. package/lib/effects/brightness-contrast.d.ts +15 -0
  39. package/lib/effects/chromatic-abberation.d.ts +16 -0
  40. package/lib/effects/color-average.d.ts +11 -0
  41. package/lib/effects/color-depth.d.ts +14 -0
  42. package/lib/effects/depth-of-field.d.ts +22 -0
  43. package/lib/effects/depth.d.ts +14 -0
  44. package/lib/effects/dot-screen.d.ts +15 -0
  45. package/lib/effects/fxaa.d.ts +13 -0
  46. package/lib/effects/glitch.d.ts +29 -0
  47. package/lib/effects/god-rays.d.ts +30 -0
  48. package/lib/effects/grid.d.ts +18 -0
  49. package/lib/effects/hue-saturation.d.ts +15 -0
  50. package/lib/effects/index.d.ts +27 -17
  51. package/lib/effects/lens-flare.d.ts +96 -0
  52. package/lib/effects/lut.d.ts +19 -0
  53. package/lib/effects/noise.d.ts +14 -0
  54. package/lib/effects/outline.d.ts +74 -0
  55. package/lib/effects/pixelation.d.ts +16 -0
  56. package/lib/effects/scanline.d.ts +17 -0
  57. package/lib/effects/sepia.d.ts +14 -0
  58. package/lib/effects/shock-wave.d.ts +11 -0
  59. package/lib/effects/smaa.d.ts +15 -0
  60. package/lib/effects/tilt-shift-2.d.ts +35 -0
  61. package/lib/effects/tilt-shift.d.ts +22 -0
  62. package/lib/effects/vignette.d.ts +17 -0
  63. package/lib/effects/water.d.ts +20 -0
  64. package/package.json +12 -7
  65. package/esm2022/lib/effects/bloom/bloom.mjs +0 -33
  66. package/esm2022/lib/effects/brightness-contrast/brightness-contrast.mjs +0 -29
  67. package/esm2022/lib/effects/color-depth/color-depth.mjs +0 -29
  68. package/esm2022/lib/effects/depth/depth.mjs +0 -29
  69. package/esm2022/lib/effects/dot-screen/dot-screen.mjs +0 -29
  70. package/esm2022/lib/effects/hue-saturation/hue-saturation.mjs +0 -29
  71. package/esm2022/lib/effects/lut/lut.mjs +0 -70
  72. package/esm2022/lib/effects/noise/noise.mjs +0 -33
  73. package/esm2022/lib/effects/pixelation/pixelation.mjs +0 -33
  74. package/esm2022/lib/effects/scanline/scanline.mjs +0 -33
  75. package/esm2022/lib/effects/sepia/sepia.mjs +0 -29
  76. package/esm2022/lib/effects/shock-wave/shock-wave.mjs +0 -29
  77. package/esm2022/lib/effects/smaa/smaa.mjs +0 -29
  78. package/esm2022/lib/effects/ssao/ssao.mjs +0 -213
  79. package/esm2022/lib/effects/tilt-shift/tilt-shift.mjs +0 -33
  80. package/esm2022/lib/effects/tone-mapping/tone-mapping.mjs +0 -29
  81. package/esm2022/lib/effects/vignette/vignette.mjs +0 -29
  82. package/lib/effects/bloom/bloom.d.ts +0 -13
  83. package/lib/effects/brightness-contrast/brightness-contrast.d.ts +0 -15
  84. package/lib/effects/color-depth/color-depth.d.ts +0 -14
  85. package/lib/effects/depth/depth.d.ts +0 -14
  86. package/lib/effects/dot-screen/dot-screen.d.ts +0 -15
  87. package/lib/effects/hue-saturation/hue-saturation.d.ts +0 -15
  88. package/lib/effects/lut/lut.d.ts +0 -29
  89. package/lib/effects/noise/noise.d.ts +0 -15
  90. package/lib/effects/pixelation/pixelation.d.ts +0 -20
  91. package/lib/effects/scanline/scanline.d.ts +0 -15
  92. package/lib/effects/sepia/sepia.d.ts +0 -14
  93. package/lib/effects/shock-wave/shock-wave.d.ts +0 -17
  94. package/lib/effects/smaa/smaa.d.ts +0 -16
  95. package/lib/effects/ssao/ssao.d.ts +0 -42
  96. package/lib/effects/tilt-shift/tilt-shift.d.ts +0 -23
  97. package/lib/effects/tone-mapping/tone-mapping.d.ts +0 -22
  98. package/lib/effects/vignette/vignette.d.ts +0 -17
@@ -1,100 +1,48 @@
1
+ import { ElementRef } from '@angular/core';
1
2
  import { DepthDownsamplingPass, EffectComposer, NormalPass } from 'postprocessing';
2
- import * as THREE from 'three';
3
+ import { Camera, Group, Scene, TextureDataType } from 'three';
3
4
  import * as i0 from "@angular/core";
4
- export type NgtpEffectComposerState = {
5
+ export interface NgtpEffectComposerOptions {
5
6
  enabled: boolean;
6
7
  depthBuffer?: boolean;
7
- disableNormalPass?: boolean;
8
+ /** Only used for SSGI currently, leave it disabled for everything else unless it's needed */
9
+ enableNormalPass?: boolean;
8
10
  stencilBuffer?: boolean;
9
11
  autoClear: boolean;
10
12
  resolutionScale?: number;
11
13
  multisampling: number;
12
- frameBufferType: THREE.TextureDataType;
14
+ frameBufferType: TextureDataType;
13
15
  renderPriority: number;
14
- camera?: THREE.Camera;
15
- scene?: THREE.Scene;
16
- };
17
- export declare const injectNgtpEffectComposerApi: {
18
- (): import("@angular/core").Signal<{
19
- composer: EffectComposer;
20
- normalPass: NormalPass | null;
21
- downSamplingPass: DepthDownsamplingPass | null;
22
- resolutionScale: number | undefined;
23
- camera: THREE.Camera;
24
- scene: THREE.Scene;
25
- }>;
26
- (injectOptions: import("@angular/core").InjectOptions & {
27
- optional?: false | undefined;
28
- }): import("@angular/core").Signal<{
29
- composer: EffectComposer;
30
- normalPass: NormalPass | null;
31
- downSamplingPass: DepthDownsamplingPass | null;
32
- resolutionScale: number | undefined;
33
- camera: THREE.Camera;
34
- scene: THREE.Scene;
35
- }>;
36
- (injectOptions: import("@angular/core").InjectOptions): import("@angular/core").Signal<{
37
- composer: EffectComposer;
38
- normalPass: NormalPass | null;
39
- downSamplingPass: DepthDownsamplingPass | null;
40
- resolutionScale: number | undefined;
41
- camera: THREE.Camera;
42
- scene: THREE.Scene;
43
- }> | null;
44
- }, provideNgtpEffectComposerApi: (value?: import("@angular/core").Signal<{
45
- composer: EffectComposer;
46
- normalPass: NormalPass | null;
47
- downSamplingPass: DepthDownsamplingPass | null;
48
- resolutionScale: number | undefined;
49
- camera: THREE.Camera;
50
- scene: THREE.Scene;
51
- }> | undefined) => import("@angular/core").Provider;
16
+ camera?: Camera;
17
+ scene?: Scene;
18
+ }
52
19
  export declare class NgtpEffectComposer {
53
- private inputs;
54
- composerRef: import("angular-three").NgtInjectedRef<THREE.Group>;
55
- set _enabled(enabled: boolean);
56
- set _depthBuffer(depthBuffer: boolean);
57
- set _disableNormalPass(disableNormalPass: boolean);
58
- set _stencilBuffer(stencilBuffer: boolean);
59
- set _autoClear(autoClear: boolean);
60
- set _resolutionScale(resolutionScale: number);
61
- set _multisampling(multisampling: number);
62
- set _frameBufferType(frameBufferType: THREE.TextureDataType);
63
- set _renderPriority(renderPriority: number);
64
- set _camera(camera: THREE.Camera);
65
- set _scene(scene: THREE.Scene);
20
+ options: import("@angular/core").InputSignalWithTransform<NgtpEffectComposerOptions, "" | Partial<NgtpEffectComposerOptions>>;
66
21
  private injector;
22
+ private autoEffect;
67
23
  private store;
24
+ private size;
68
25
  private gl;
69
26
  private defaultScene;
70
27
  private defaultCamera;
71
- private size;
72
- private depthBuffer;
73
- private stencilBuffer;
74
- private multisampling;
75
- private frameBufferType;
76
- private scene;
77
- private camera;
78
- private disableNormalPass;
79
- private resolutionScale;
80
- private autoClear;
81
- private activeScene;
82
- private activeCamera;
83
- private composerEntities;
84
- private composer;
85
- api: import("@angular/core").Signal<{
28
+ depthBuffer: import("@angular/core").Signal<boolean | undefined>;
29
+ stencilBuffer: import("@angular/core").Signal<boolean | undefined>;
30
+ multisampling: import("@angular/core").Signal<number>;
31
+ frameBufferType: import("@angular/core").Signal<TextureDataType>;
32
+ scene: import("@angular/core").Signal<Scene>;
33
+ camera: import("@angular/core").Signal<Camera>;
34
+ enableNormalPass: import("@angular/core").Signal<boolean | undefined>;
35
+ resolutionScale: import("@angular/core").Signal<number | undefined>;
36
+ groupRef: import("@angular/core").Signal<ElementRef<Group<import("three").Object3DEventMap>>>;
37
+ composerData: import("@angular/core").Signal<{
86
38
  composer: EffectComposer;
87
39
  normalPass: NormalPass | null;
88
40
  downSamplingPass: DepthDownsamplingPass | null;
89
- resolutionScale: number | undefined;
90
- camera: THREE.Camera;
91
- scene: THREE.Scene;
92
41
  }>;
93
42
  constructor();
94
- ngOnInit(): void;
43
+ private disableToneMapping;
95
44
  private setComposerSize;
96
45
  private updatePasses;
97
- private beforeRender;
98
46
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtpEffectComposer, never>;
99
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtpEffectComposer, "ngtp-effect-composer", never, { "composerRef": { "alias": "composerRef"; "required": false; }; "_enabled": { "alias": "enabled"; "required": false; }; "_depthBuffer": { "alias": "depthBuffer"; "required": false; }; "_disableNormalPass": { "alias": "disableNormalPass"; "required": false; }; "_stencilBuffer": { "alias": "stencilBuffer"; "required": false; }; "_autoClear": { "alias": "autoClear"; "required": false; }; "_resolutionScale": { "alias": "resolutionScale"; "required": false; }; "_multisampling": { "alias": "multisampling"; "required": false; }; "_frameBufferType": { "alias": "frameBufferType"; "required": false; }; "_renderPriority": { "alias": "renderPriority"; "required": false; }; "_camera": { "alias": "camera"; "required": false; }; "_scene": { "alias": "scene"; "required": false; }; }, {}, never, ["*"], true, never>;
47
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpEffectComposer, "ngtp-effect-composer", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
100
48
  }
package/lib/effect.d.ts CHANGED
@@ -1,27 +1,56 @@
1
- import { NgtAnyRecord } from 'angular-three';
2
- import { BlendFunction, Effect } from 'postprocessing';
1
+ import { BlendFunction } from 'postprocessing';
3
2
  import * as i0 from "@angular/core";
4
- export type NgtpEffectState = {
3
+ export declare const injectDefaultEffectOptions: {
4
+ (): {
5
+ blendFunction?: BlendFunction;
6
+ opacity?: number;
7
+ };
8
+ (injectOptions: import("@angular/core").InjectOptions & {
9
+ optional?: false;
10
+ } & {
11
+ injector?: import("@angular/core").Injector;
12
+ }): {
13
+ blendFunction?: BlendFunction;
14
+ opacity?: number;
15
+ };
16
+ (injectOptions: import("@angular/core").InjectOptions & {
17
+ injector?: import("@angular/core").Injector;
18
+ }): {
19
+ blendFunction?: BlendFunction;
20
+ opacity?: number;
21
+ } | null;
22
+ }, provideDefaultEffectOptions: ((value: {
5
23
  blendFunction?: BlendFunction;
6
24
  opacity?: number;
7
- };
8
- export declare abstract class NgtpEffect<TEffect extends Effect> {
9
- inputs: import("angular-three").NgtSignalStore<NgtpEffectState>;
10
- effectRef: import("angular-three").NgtInjectedRef<TEffect>;
11
- set _blendFunction(blendFunction: BlendFunction);
12
- set _opacity(opacity: number);
13
- protected defaultBlendFunction: BlendFunction;
14
- protected nativeArgs: () => NgtAnyRecord[];
15
- blendFunction: import("@angular/core").Signal<BlendFunction | undefined>;
16
- opacity: import("@angular/core").Signal<number | undefined>;
17
- protected store: import("angular-three").NgtSignalStore<import("angular-three").NgtState>;
18
- protected camera: import("@angular/core").Signal<import("angular-three").NgtCameraManual>;
19
- private invalidate;
20
- private previousInputs?;
21
- private nativeInputs;
22
- args: import("@angular/core").Signal<NgtAnyRecord[]>;
23
- constructor();
24
- private setBlendMode;
25
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtpEffect<any>, never>;
26
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgtpEffect<any>, never, never, { "effectRef": { "alias": "effectRef"; "required": false; }; "_blendFunction": { "alias": "blendFunction"; "required": false; }; "_opacity": { "alias": "opacity"; "required": false; }; }, {}, never, never, false, never>;
25
+ } | (() => {
26
+ blendFunction?: BlendFunction;
27
+ opacity?: number;
28
+ })) => import("@angular/core").Provider) & ((value: {
29
+ blendFunction?: BlendFunction;
30
+ opacity?: number;
31
+ } | (() => {
32
+ blendFunction?: BlendFunction;
33
+ opacity?: number;
34
+ })) => import("@angular/core").Provider);
35
+ export declare class NgtpEffectBlendMode {
36
+ effect: NgtpEffect | null;
37
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpEffectBlendMode, never>;
38
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpEffectBlendMode, "ngtp-effect-blend-mode", never, {}, {}, never, never, true, never>;
27
39
  }
40
+ export declare class NgtpEffect {
41
+ defaultEffectOptions: {
42
+ blendFunction?: BlendFunction;
43
+ opacity?: number;
44
+ } | null;
45
+ blendFunction: import("@angular/core").InputSignal<BlendFunction | undefined>;
46
+ opacity: import("@angular/core").InputSignal<number | undefined>;
47
+ private store;
48
+ camera: import("@angular/core").Signal<import("angular-three").NgtCameraManual>;
49
+ invalidate: import("@angular/core").Signal<(frames?: number) => void>;
50
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpEffect, never>;
51
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgtpEffect, never, never, { "blendFunction": { "alias": "blendFunction"; "required": false; "isSignal": true; }; "opacity": { "alias": "opacity"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
52
+ }
53
+ export declare const NgtpEffectHostDirective: {
54
+ directive: typeof NgtpEffect;
55
+ inputs: string[];
56
+ };
@@ -0,0 +1,23 @@
1
+ import { Effect } from 'postprocessing';
2
+ import { Texture } from 'three';
3
+ import * as i0 from "@angular/core";
4
+ interface ASCIIEffectOptions {
5
+ font?: string;
6
+ characters?: string;
7
+ fontSize?: number;
8
+ cellSize?: number;
9
+ color?: string;
10
+ invert?: boolean;
11
+ }
12
+ export declare class ASCIIEffect extends Effect {
13
+ constructor({ font, characters, fontSize, cellSize, color, invert, }?: ASCIIEffectOptions);
14
+ /** Draws the characters on a Canvas and returns a texture */
15
+ createCharactersTexture(characters: string, font: string, fontSize: number): Texture;
16
+ }
17
+ export declare class NgtpASCII {
18
+ options: import("@angular/core").InputSignalWithTransform<ASCIIEffectOptions, "" | Partial<ASCIIEffectOptions>>;
19
+ effect: import("@angular/core").Signal<ASCIIEffect>;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpASCII, never>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpASCII, "ngtp-ascii", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
22
+ }
23
+ export {};
@@ -0,0 +1,10 @@
1
+ import { BloomEffectOptions } from 'postprocessing';
2
+ import { NgtpEffect } from '../effect';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../effect";
5
+ export declare class NgtpBloom {
6
+ effect: NgtpEffect;
7
+ options: import("@angular/core").InputSignal<Omit<BloomEffectOptions, "blendFunction">>;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpBloom, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpBloom, "ngtp-bloom", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NgtpEffect; inputs: { "blendFunction": "blendFunction"; "opacity": "opacity"; }; outputs: {}; }]>;
10
+ }
@@ -0,0 +1,15 @@
1
+ import { BrightnessContrastEffect } from 'postprocessing';
2
+ import { NgtpEffect } from '../effect';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../effect";
5
+ export type BrightnessEffectOptions = NonNullable<ConstructorParameters<typeof BrightnessContrastEffect>[0]>;
6
+ export declare class NgtpBrightnessContrast {
7
+ effect: NgtpEffect;
8
+ options: import("@angular/core").InputSignal<Omit<{
9
+ blendFunction?: import("postprocessing").BlendFunction;
10
+ brightness?: number;
11
+ contrast?: number;
12
+ }, "blendFunction">>;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpBrightnessContrast, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpBrightnessContrast, "ngtp-brightness-contrast", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NgtpEffect; inputs: { "blendFunction": "blendFunction"; "opacity": "opacity"; }; outputs: {}; }]>;
15
+ }
@@ -0,0 +1,16 @@
1
+ import { ChromaticAberrationEffect } from 'postprocessing';
2
+ import { NgtpEffect } from '../effect';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../effect";
5
+ export type ChromaticAberrationEffectOptions = Partial<NonNullable<ConstructorParameters<typeof ChromaticAberrationEffect>[0]>>;
6
+ export declare class NgtpChromaticAberration {
7
+ effect: NgtpEffect;
8
+ options: import("@angular/core").InputSignal<Omit<Partial<{
9
+ blendFunction?: import("postprocessing").BlendFunction;
10
+ offset?: import("three").Vector2;
11
+ radialModulation: boolean;
12
+ modulationOffset: number;
13
+ }>, "blendFunction">>;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpChromaticAberration, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpChromaticAberration, "ngtp-chromatic-aberration", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NgtpEffect; inputs: { "blendFunction": "blendFunction"; "opacity": "opacity"; }; outputs: {}; }]>;
16
+ }
@@ -0,0 +1,11 @@
1
+ import { BlendFunction } from 'postprocessing';
2
+ import * as i0 from "@angular/core";
3
+ export declare class NgtpColorAverage {
4
+ options: import("@angular/core").InputSignalWithTransform<{
5
+ blendFunction: BlendFunction;
6
+ }, "" | Partial<{
7
+ blendFunction: BlendFunction;
8
+ }>>;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpColorAverage, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpColorAverage, "ngtp-color-average", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
11
+ }
@@ -0,0 +1,14 @@
1
+ import { ColorDepthEffect } from 'postprocessing';
2
+ import { NgtpEffect } from '../effect';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../effect";
5
+ export type ColorDepthEffectOptions = Partial<NonNullable<ConstructorParameters<typeof ColorDepthEffect>[0]>>;
6
+ export declare class NgtpColorDepth {
7
+ effect: NgtpEffect;
8
+ options: import("@angular/core").InputSignal<Omit<Partial<{
9
+ blendFunction?: import("postprocessing").BlendFunction;
10
+ bits?: number;
11
+ }>, "blendFunction">>;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpColorDepth, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpColorDepth, "ngtp-color-depth", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NgtpEffect; inputs: { "blendFunction": "blendFunction"; "opacity": "opacity"; }; outputs: {}; }]>;
14
+ }
@@ -0,0 +1,22 @@
1
+ import { NgtVector3 } from 'angular-three';
2
+ import { DepthOfFieldEffect } from 'postprocessing';
3
+ import { DepthPackingStrategies, Texture } from 'three';
4
+ import * as i0 from "@angular/core";
5
+ type DOFOptions = NonNullable<ConstructorParameters<typeof DepthOfFieldEffect>[1]> & Partial<{
6
+ target: NgtVector3;
7
+ depthTexture: {
8
+ texture: Texture;
9
+ packing: DepthPackingStrategies;
10
+ };
11
+ }>;
12
+ export declare class NgtpDepthOfField {
13
+ private autoEffect;
14
+ private effectComposer;
15
+ options: import("@angular/core").InputSignal<DOFOptions>;
16
+ private autoFocus;
17
+ effect: import("@angular/core").Signal<DepthOfFieldEffect>;
18
+ constructor();
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpDepthOfField, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpDepthOfField, "ngtp-depth-of-field", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
21
+ }
22
+ export {};
@@ -0,0 +1,14 @@
1
+ import { DepthEffect } from 'postprocessing';
2
+ import { NgtpEffect } from '../effect';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../effect";
5
+ export type DepthEffectOptions = Partial<NonNullable<ConstructorParameters<typeof DepthEffect>[0]>>;
6
+ export declare class NgtpDepth {
7
+ effect: NgtpEffect;
8
+ options: import("@angular/core").InputSignal<Omit<Partial<{
9
+ blendFunction?: import("postprocessing").BlendFunction;
10
+ inverted?: boolean;
11
+ }>, "blendFunction">>;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpDepth, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpDepth, "ngtp-depth", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NgtpEffect; inputs: { "blendFunction": "blendFunction"; "opacity": "opacity"; }; outputs: {}; }]>;
14
+ }
@@ -0,0 +1,15 @@
1
+ import { DotScreenEffect } from 'postprocessing';
2
+ import { NgtpEffect } from '../effect';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../effect";
5
+ export type DotScreenEffectOptions = Partial<NonNullable<ConstructorParameters<typeof DotScreenEffect>[0]>>;
6
+ export declare class NgtpDotScreen {
7
+ effect: NgtpEffect;
8
+ options: import("@angular/core").InputSignal<Omit<Partial<{
9
+ blendFunction?: import("postprocessing").BlendFunction;
10
+ angle?: number;
11
+ scale?: number;
12
+ }>, "blendFunction">>;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpDotScreen, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpDotScreen, "ngtp-dot-screen", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NgtpEffect; inputs: { "blendFunction": "blendFunction"; "opacity": "opacity"; }; outputs: {}; }]>;
15
+ }
@@ -0,0 +1,13 @@
1
+ import { FXAAEffect } from 'postprocessing';
2
+ import { NgtpEffect } from '../effect';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../effect";
5
+ export type FXAAEffectOptions = Partial<NonNullable<ConstructorParameters<typeof FXAAEffect>[0]>>;
6
+ export declare class NgtpFXAA {
7
+ effect: NgtpEffect;
8
+ options: import("@angular/core").InputSignal<Omit<Partial<{
9
+ blendFunction?: import("postprocessing").BlendFunction;
10
+ }>, "blendFunction">>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpFXAA, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpFXAA, "ngtp-fxaa", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NgtpEffect; inputs: { "blendFunction": "blendFunction"; "opacity": "opacity"; }; outputs: {}; }]>;
13
+ }
@@ -0,0 +1,29 @@
1
+ import { NgtVector2 } from 'angular-three';
2
+ import { GlitchEffect, GlitchMode } from 'postprocessing';
3
+ import * as i0 from "@angular/core";
4
+ export type GlitchOptions = NonNullable<ConstructorParameters<typeof GlitchEffect>[0]> & Partial<{
5
+ mode: GlitchMode;
6
+ active: boolean;
7
+ delay: NgtVector2;
8
+ duration: NgtVector2;
9
+ chromaticAberrationOffset: NgtVector2;
10
+ strength: NgtVector2;
11
+ }>;
12
+ export declare class NgtpGlitch {
13
+ private autoEffect;
14
+ private store;
15
+ private invalidate;
16
+ options: import("@angular/core").InputSignalWithTransform<GlitchOptions, "" | Partial<{
17
+ active: boolean;
18
+ }>>;
19
+ private active;
20
+ private mode;
21
+ private delay;
22
+ private duration;
23
+ private chromaticAberrationOffset;
24
+ private strength;
25
+ effect: import("@angular/core").Signal<GlitchEffect>;
26
+ constructor();
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpGlitch, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpGlitch, "ngtp-glitch", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
29
+ }
@@ -0,0 +1,30 @@
1
+ import { ElementRef } from '@angular/core';
2
+ import { GodRaysEffect } from 'postprocessing';
3
+ import { Mesh, Points } from 'three';
4
+ import * as i0 from "@angular/core";
5
+ export declare class NgtpGodRays {
6
+ private autoEffect;
7
+ private effectComposer;
8
+ options: import("@angular/core").InputSignal<{
9
+ blendFunction?: import("postprocessing").BlendFunction;
10
+ samples?: number;
11
+ density?: number;
12
+ decay?: number;
13
+ weight?: number;
14
+ exposure?: number;
15
+ clampMax?: number;
16
+ resolutionScale?: number;
17
+ resolutionX?: number;
18
+ resolutionY?: number;
19
+ width?: number;
20
+ height?: number;
21
+ kernelSize?: import("postprocessing").KernelSize;
22
+ blur?: boolean;
23
+ } & {
24
+ sun: Mesh | Points | ElementRef<Mesh | Points>;
25
+ }>;
26
+ effect: import("@angular/core").Signal<GodRaysEffect>;
27
+ constructor();
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpGodRays, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpGodRays, "ngtp-god-rays", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
30
+ }
@@ -0,0 +1,18 @@
1
+ import { GridEffect } from 'postprocessing';
2
+ import * as i0 from "@angular/core";
3
+ type GridOptions = NonNullable<ConstructorParameters<typeof GridEffect>[0]> & Partial<{
4
+ size: {
5
+ width: number;
6
+ height: number;
7
+ };
8
+ }>;
9
+ export declare class NgtpGrid {
10
+ private autoEffect;
11
+ options: import("@angular/core").InputSignal<GridOptions>;
12
+ private size;
13
+ effect: import("@angular/core").Signal<GridEffect>;
14
+ constructor();
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpGrid, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpGrid, "ngtp-grid", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
17
+ }
18
+ export {};
@@ -0,0 +1,15 @@
1
+ import { HueSaturationEffect } from 'postprocessing';
2
+ import { NgtpEffect } from '../effect';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../effect";
5
+ export type HueSaturationEffectOptions = Partial<NonNullable<ConstructorParameters<typeof HueSaturationEffect>[0]>>;
6
+ export declare class NgtpHueSaturation {
7
+ effect: NgtpEffect;
8
+ options: import("@angular/core").InputSignal<Omit<Partial<{
9
+ blendFunction?: import("postprocessing").BlendFunction;
10
+ hue?: number;
11
+ saturation?: number;
12
+ }>, "blendFunction">>;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpHueSaturation, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpHueSaturation, "ngtp-hue-saturation", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NgtpEffect; inputs: { "blendFunction": "blendFunction"; "opacity": "opacity"; }; outputs: {}; }]>;
15
+ }
@@ -1,17 +1,27 @@
1
- export * from './bloom/bloom';
2
- export * from './brightness-contrast/brightness-contrast';
3
- export * from './color-depth/color-depth';
4
- export * from './depth/depth';
5
- export * from './dot-screen/dot-screen';
6
- export * from './hue-saturation/hue-saturation';
7
- export * from './lut/lut';
8
- export * from './noise/noise';
9
- export * from './pixelation/pixelation';
10
- export * from './scanline/scanline';
11
- export * from './sepia/sepia';
12
- export * from './shock-wave/shock-wave';
13
- export * from './smaa/smaa';
14
- export * from './ssao/ssao';
15
- export * from './tilt-shift/tilt-shift';
16
- export * from './tone-mapping/tone-mapping';
17
- export * from './vignette/vignette';
1
+ export * from './ascii';
2
+ export * from './bloom';
3
+ export * from './brightness-contrast';
4
+ export * from './chromatic-abberation';
5
+ export * from './color-average';
6
+ export * from './color-depth';
7
+ export * from './depth';
8
+ export * from './depth-of-field';
9
+ export * from './dot-screen';
10
+ export * from './fxaa';
11
+ export * from './glitch';
12
+ export * from './god-rays';
13
+ export * from './grid';
14
+ export * from './hue-saturation';
15
+ export * from './lens-flare';
16
+ export * from './lut';
17
+ export * from './noise';
18
+ export * from './outline';
19
+ export * from './pixelation';
20
+ export * from './scanline';
21
+ export * from './sepia';
22
+ export * from './shock-wave';
23
+ export * from './smaa';
24
+ export * from './tilt-shift';
25
+ export * from './tilt-shift-2';
26
+ export * from './vignette';
27
+ export * from './water';
@@ -0,0 +1,96 @@
1
+ import { BlendFunction, Effect } from 'postprocessing';
2
+ import { Color, Texture, Vector3, WebGLRenderTarget, WebGLRenderer } from 'three';
3
+ import { NgtpEffectComposer } from '../effect-composer';
4
+ import * as i0 from "@angular/core";
5
+ export declare class LensFlareEffect extends Effect {
6
+ constructor({ blendFunction, enabled, glareSize, lensPosition, iResolution, starPoints, flareSize, flareSpeed, flareShape, animated, anamorphic, colorGain, lensDirtTexture, haloScale, secondaryGhosts, aditionalStreaks, ghostScale, opacity, starBurst, }?: {
7
+ blendFunction?: BlendFunction | undefined;
8
+ enabled?: boolean | undefined;
9
+ glareSize?: number | undefined;
10
+ lensPosition?: number[] | undefined;
11
+ iResolution?: number[] | undefined;
12
+ starPoints?: number | undefined;
13
+ flareSize?: number | undefined;
14
+ flareSpeed?: number | undefined;
15
+ flareShape?: number | undefined;
16
+ animated?: boolean | undefined;
17
+ anamorphic?: boolean | undefined;
18
+ colorGain?: Color | undefined;
19
+ lensDirtTexture?: Texture | null | undefined;
20
+ haloScale?: number | undefined;
21
+ secondaryGhosts?: boolean | undefined;
22
+ aditionalStreaks?: boolean | undefined;
23
+ ghostScale?: number | undefined;
24
+ opacity?: number | undefined;
25
+ starBurst?: boolean | undefined;
26
+ });
27
+ update(_renderer: WebGLRenderer, _inputBuffer: WebGLRenderTarget, deltaTime: number): void;
28
+ }
29
+ export type LensFlareOptions = ConstructorParameters<typeof LensFlareEffect>[0] & {
30
+ position: Vector3;
31
+ followMouse: boolean;
32
+ smoothTime: number;
33
+ };
34
+ export declare class NgtpLensFlare {
35
+ private autoEffect;
36
+ private store;
37
+ private viewport;
38
+ private raycaster;
39
+ private pointer;
40
+ effectComposer: NgtpEffectComposer;
41
+ options: import("@angular/core").InputSignalWithTransform<{
42
+ blendFunction?: BlendFunction | undefined;
43
+ enabled?: boolean | undefined;
44
+ glareSize?: number | undefined;
45
+ lensPosition?: number[] | undefined;
46
+ iResolution?: number[] | undefined;
47
+ starPoints?: number | undefined;
48
+ flareSize?: number | undefined;
49
+ flareSpeed?: number | undefined;
50
+ flareShape?: number | undefined;
51
+ animated?: boolean | undefined;
52
+ anamorphic?: boolean | undefined;
53
+ colorGain?: Color | undefined;
54
+ lensDirtTexture?: Texture | null | undefined;
55
+ haloScale?: number | undefined;
56
+ secondaryGhosts?: boolean | undefined;
57
+ aditionalStreaks?: boolean | undefined;
58
+ ghostScale?: number | undefined;
59
+ opacity?: number | undefined;
60
+ starBurst?: boolean | undefined;
61
+ } & {
62
+ position: Vector3;
63
+ followMouse: boolean;
64
+ smoothTime: number;
65
+ }, "" | Partial<{
66
+ blendFunction?: BlendFunction | undefined;
67
+ enabled?: boolean | undefined;
68
+ glareSize?: number | undefined;
69
+ lensPosition?: number[] | undefined;
70
+ iResolution?: number[] | undefined;
71
+ starPoints?: number | undefined;
72
+ flareSize?: number | undefined;
73
+ flareSpeed?: number | undefined;
74
+ flareShape?: number | undefined;
75
+ animated?: boolean | undefined;
76
+ anamorphic?: boolean | undefined;
77
+ colorGain?: Color | undefined;
78
+ lensDirtTexture?: Texture | null | undefined;
79
+ haloScale?: number | undefined;
80
+ secondaryGhosts?: boolean | undefined;
81
+ aditionalStreaks?: boolean | undefined;
82
+ ghostScale?: number | undefined;
83
+ opacity?: number | undefined;
84
+ starBurst?: boolean | undefined;
85
+ } & {
86
+ position: Vector3;
87
+ followMouse: boolean;
88
+ smoothTime: number;
89
+ }>>;
90
+ private projectedPosition;
91
+ private mouse2d;
92
+ effect: import("@angular/core").Signal<LensFlareEffect>;
93
+ constructor();
94
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpLensFlare, never>;
95
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpLensFlare, "ngtp-lens-flare", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
96
+ }
@@ -0,0 +1,19 @@
1
+ import { BlendFunction, LUT3DEffect } from 'postprocessing';
2
+ import { Texture } from 'three';
3
+ import * as i0 from "@angular/core";
4
+ export interface LUTOptions {
5
+ lut: Texture;
6
+ blendFunction?: BlendFunction;
7
+ tetrahedralInterpolation?: boolean;
8
+ }
9
+ export declare class NgtpLUT {
10
+ private autoEffect;
11
+ private store;
12
+ private invalidate;
13
+ options: import("@angular/core").InputSignal<LUTOptions>;
14
+ private lut;
15
+ effect: import("@angular/core").Signal<LUT3DEffect>;
16
+ constructor();
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtpLUT, never>;
18
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtpLUT, "ngtp-lut", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
19
+ }