angular-three-soba 3.0.0 → 3.2.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 (51) hide show
  1. package/abstractions/lib/catmull-rom-line.d.ts +218 -218
  2. package/abstractions/lib/edges.d.ts +245 -245
  3. package/abstractions/lib/grid.d.ts +42 -42
  4. package/abstractions/lib/line.d.ts +2 -2
  5. package/abstractions/lib/prism-geometry.d.ts +2 -2
  6. package/abstractions/lib/rounded-box.d.ts +1 -1
  7. package/abstractions/lib/text-3d.d.ts +44 -44
  8. package/abstractions/lib/text.d.ts +1 -1
  9. package/controls/README.md +28 -29
  10. package/controls/lib/camera-controls.d.ts +1 -1
  11. package/controls/lib/orbit-controls.d.ts +1 -1
  12. package/fesm2022/angular-three-soba-abstractions.mjs +1 -3
  13. package/fesm2022/angular-three-soba-abstractions.mjs.map +1 -1
  14. package/fesm2022/angular-three-soba-cameras.mjs +1 -1
  15. package/fesm2022/angular-three-soba-cameras.mjs.map +1 -1
  16. package/fesm2022/angular-three-soba-controls.mjs +1 -3
  17. package/fesm2022/angular-three-soba-controls.mjs.map +1 -1
  18. package/fesm2022/angular-three-soba-gizmos.mjs +1 -3
  19. package/fesm2022/angular-three-soba-gizmos.mjs.map +1 -1
  20. package/fesm2022/angular-three-soba-loaders.mjs +20 -30
  21. package/fesm2022/angular-three-soba-loaders.mjs.map +1 -1
  22. package/fesm2022/angular-three-soba-materials.mjs +2 -2
  23. package/fesm2022/angular-three-soba-materials.mjs.map +1 -1
  24. package/fesm2022/angular-three-soba-misc.mjs +9 -17
  25. package/fesm2022/angular-three-soba-misc.mjs.map +1 -1
  26. package/fesm2022/angular-three-soba-performances.mjs +2 -8
  27. package/fesm2022/angular-three-soba-performances.mjs.map +1 -1
  28. package/fesm2022/angular-three-soba-staging.mjs +45 -61
  29. package/fesm2022/angular-three-soba-staging.mjs.map +1 -1
  30. package/fesm2022/angular-three-soba-stats.mjs +1 -4
  31. package/fesm2022/angular-three-soba-stats.mjs.map +1 -1
  32. package/loaders/README.md +39 -40
  33. package/materials/lib/custom-shader-material.d.ts +2 -2
  34. package/materials/lib/mesh-portal-material.d.ts +24 -24
  35. package/materials/lib/mesh-refraction-material.d.ts +3 -3
  36. package/materials/lib/mesh-transmission-material.d.ts +1 -1
  37. package/misc/lib/computed-attribute.d.ts +6 -6
  38. package/misc/lib/decal.d.ts +1 -1
  39. package/misc/lib/html/html.d.ts +1 -1
  40. package/misc/lib/sampler.d.ts +1 -1
  41. package/package.json +5 -5
  42. package/performances/lib/instances/instances.d.ts +7 -7
  43. package/performances/lib/points/points.d.ts +15 -15
  44. package/performances/lib/segments/segments.d.ts +1 -1
  45. package/staging/lib/accumulative-shadows.d.ts +1 -1
  46. package/staging/lib/caustics.d.ts +1 -1
  47. package/staging/lib/center.d.ts +2 -2
  48. package/staging/lib/contact-shadows.d.ts +1 -1
  49. package/staging/lib/lightformer.d.ts +1 -1
  50. package/staging/lib/mask.d.ts +1 -1
  51. package/staging/lib/sky.d.ts +1 -1
@@ -50,10 +50,7 @@ class NgtsStats {
50
50
  }
51
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: NgtsStats, decorators: [{
52
52
  type: Directive,
53
- args: [{
54
- selector: 'ngt-canvas[stats]',
55
- standalone: true,
56
- }]
53
+ args: [{ selector: 'ngt-canvas[stats]' }]
57
54
  }], ctorParameters: () => [] });
58
55
 
59
56
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"angular-three-soba-stats.mjs","sources":["../../../../libs/soba/stats/src/lib/stats.ts","../../../../libs/soba/stats/src/angular-three-soba-stats.ts"],"sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport { computed, Directive, effect, ElementRef, inject, input, untracked } from '@angular/core';\nimport { addAfterEffect, injectStore, omit, pick, resolveRef } from 'angular-three';\nimport { mergeInputs } from 'ngxtension/inject-inputs';\nimport Stats from 'stats-gl';\n\nexport type NgtsStatsOptions = Partial<Stats> & {\n\tshowPanel?: number;\n\tdomClass: string;\n\tparent: ElementRef<HTMLElement> | HTMLElement | null | undefined;\n};\n\nconst defaultOptions: NgtsStatsOptions = {\n\tdomClass: '',\n\tparent: null,\n};\n\n@Directive({\n\tselector: 'ngt-canvas[stats]',\n\tstandalone: true,\n})\nexport class NgtsStats {\n\toptions = input(defaultOptions, { transform: mergeInputs(defaultOptions), alias: 'stats' });\n\n\tconstructor() {\n\t\tconst statsOptions = omit(this.options, ['parent', 'domClass']);\n\t\tconst parent = pick(this.options, 'parent');\n\t\tconst domClass = pick(this.options, 'domClass');\n\n\t\tconst document = inject(DOCUMENT);\n\t\tconst store = injectStore();\n\t\tconst gl = store.select('gl');\n\n\t\tconst stats = computed(() => {\n\t\t\tconst _gl = gl();\n\t\t\tif (!_gl) return null;\n\n\t\t\tconst stats = new Stats({ ...untracked(statsOptions) });\n\t\t\tvoid stats.init(_gl);\n\t\t\treturn stats;\n\t\t});\n\n\t\teffect((onCleanup) => {\n\t\t\tconst _stats = stats();\n\t\t\tif (!_stats) return;\n\n\t\t\tconst [_parent, _domClass] = [resolveRef(parent()), domClass()];\n\t\t\tconst target = _parent ?? document.body;\n\t\t\ttarget.appendChild(_stats.dom);\n\t\t\tconst classList = _domClass.split(' ').filter(Boolean);\n\t\t\tif (classList.length) _stats.dom.classList.add(...classList);\n\t\t\tconst end = addAfterEffect(() => _stats.update());\n\n\t\t\tonCleanup(() => {\n\t\t\t\tif (classList.length) _stats.dom.classList.remove(...classList);\n\t\t\t\ttarget.removeChild(_stats.dom);\n\t\t\t\tend();\n\t\t\t});\n\t\t});\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"angular-three-soba-stats.mjs","sources":["../../../../libs/soba/stats/src/lib/stats.ts","../../../../libs/soba/stats/src/angular-three-soba-stats.ts"],"sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport { computed, Directive, effect, ElementRef, inject, input, untracked } from '@angular/core';\nimport { addAfterEffect, injectStore, omit, pick, resolveRef } from 'angular-three';\nimport { mergeInputs } from 'ngxtension/inject-inputs';\nimport Stats from 'stats-gl';\n\nexport type NgtsStatsOptions = Partial<Stats> & {\n\tshowPanel?: number;\n\tdomClass: string;\n\tparent: ElementRef<HTMLElement> | HTMLElement | null | undefined;\n};\n\nconst defaultOptions: NgtsStatsOptions = {\n\tdomClass: '',\n\tparent: null,\n};\n\n@Directive({ selector: 'ngt-canvas[stats]' })\nexport class NgtsStats {\n\toptions = input(defaultOptions, { transform: mergeInputs(defaultOptions), alias: 'stats' });\n\n\tconstructor() {\n\t\tconst statsOptions = omit(this.options, ['parent', 'domClass']);\n\t\tconst parent = pick(this.options, 'parent');\n\t\tconst domClass = pick(this.options, 'domClass');\n\n\t\tconst document = inject(DOCUMENT);\n\t\tconst store = injectStore();\n\t\tconst gl = store.select('gl');\n\n\t\tconst stats = computed(() => {\n\t\t\tconst _gl = gl();\n\t\t\tif (!_gl) return null;\n\n\t\t\tconst stats = new Stats({ ...untracked(statsOptions) });\n\t\t\tvoid stats.init(_gl);\n\t\t\treturn stats;\n\t\t});\n\n\t\teffect((onCleanup) => {\n\t\t\tconst _stats = stats();\n\t\t\tif (!_stats) return;\n\n\t\t\tconst [_parent, _domClass] = [resolveRef(parent()), domClass()];\n\t\t\tconst target = _parent ?? document.body;\n\t\t\ttarget.appendChild(_stats.dom);\n\t\t\tconst classList = _domClass.split(' ').filter(Boolean);\n\t\t\tif (classList.length) _stats.dom.classList.add(...classList);\n\t\t\tconst end = addAfterEffect(() => _stats.update());\n\n\t\t\tonCleanup(() => {\n\t\t\t\tif (classList.length) _stats.dom.classList.remove(...classList);\n\t\t\t\ttarget.removeChild(_stats.dom);\n\t\t\t\tend();\n\t\t\t});\n\t\t});\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAYA,MAAM,cAAc,GAAqB;AACxC,IAAA,QAAQ,EAAE,EAAE;AACZ,IAAA,MAAM,EAAE,IAAI;CACZ;MAGY,SAAS,CAAA;AAGrB,IAAA,WAAA,GAAA;AAFA,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAG1F,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC;AAE/C,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AACjC,QAAA,MAAM,KAAK,GAAG,WAAW,EAAE;QAC3B,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;AAE7B,QAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAK;AAC3B,YAAA,MAAM,GAAG,GAAG,EAAE,EAAE;AAChB,YAAA,IAAI,CAAC,GAAG;AAAE,gBAAA,OAAO,IAAI;AAErB,YAAA,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,EAAE,GAAG,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;AACvD,YAAA,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;AACpB,YAAA,OAAO,KAAK;AACb,SAAC,CAAC;AAEF,QAAA,MAAM,CAAC,CAAC,SAAS,KAAI;AACpB,YAAA,MAAM,MAAM,GAAG,KAAK,EAAE;AACtB,YAAA,IAAI,CAAC,MAAM;gBAAE;AAEb,YAAA,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;AAC/D,YAAA,MAAM,MAAM,GAAG,OAAO,IAAI,QAAQ,CAAC,IAAI;AACvC,YAAA,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC;AAC9B,YAAA,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACtD,IAAI,SAAS,CAAC,MAAM;gBAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;AAC5D,YAAA,MAAM,GAAG,GAAG,cAAc,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;YAEjD,SAAS,CAAC,MAAK;gBACd,IAAI,SAAS,CAAC,MAAM;oBAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;AAC/D,gBAAA,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC;AAC9B,gBAAA,GAAG,EAAE;AACN,aAAC,CAAC;AACH,SAAC,CAAC;;8GArCS,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAT,SAAS,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAT,SAAS,EAAA,UAAA,EAAA,CAAA;kBADrB,SAAS;mBAAC,EAAE,QAAQ,EAAE,mBAAmB,EAAE;;;ACjB5C;;AAEG;;;;"}
package/loaders/README.md CHANGED
@@ -35,35 +35,34 @@ The function also has static methods for preloading and setting the decoder path
35
35
 
36
36
  ```ts
37
37
  @Component({
38
- selector: 'app-suzi',
39
- standalone: true,
40
- template: `
41
- <ngt-primitive *args="[scene()]" [rotation]="[-0.63, 0, 0]" [scale]="2" [position]="[0, -1.175, 0]" />
42
- `,
43
- imports: [NgtArgs],
44
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
45
- changeDetection: ChangeDetectionStrategy.OnPush,
38
+ selector: 'app-suzi',
39
+ template: `
40
+ <ngt-primitive *args="[scene()]" [rotation]="[-0.63, 0, 0]" [scale]="2" [position]="[0, -1.175, 0]" />
41
+ `,
42
+ imports: [NgtArgs],
43
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
44
+ changeDetection: ChangeDetectionStrategy.OnPush,
46
45
  })
47
46
  class Suzi {
48
- gltf = injectGLTF(() => './suzanne-high-poly.gltf');
47
+ gltf = injectGLTF(() => './suzanne-high-poly.gltf');
49
48
 
50
- scene = computed(() => {
51
- const gltf = this.gltf();
52
- if (!gltf) return null;
53
- const { scene, materials } = gltf;
54
- scene.traverse((obj) => (obj as any).isMesh && (obj.receiveShadow = obj.castShadow = true));
49
+ scene = computed(() => {
50
+ const gltf = this.gltf();
51
+ if (!gltf) return null;
52
+ const { scene, materials } = gltf;
53
+ scene.traverse((obj) => (obj as any).isMesh && (obj.receiveShadow = obj.castShadow = true));
55
54
 
56
- const material = materials['default'] as MeshStandardMaterial;
55
+ const material = materials['default'] as MeshStandardMaterial;
57
56
 
58
- material.color.set('orange');
59
- material.roughness = 0;
60
- material.normalMap = new CanvasTexture(new FlakesTexture(), UVMapping, RepeatWrapping, RepeatWrapping);
61
- material.normalMap.flipY = false;
62
- material.normalMap.repeat.set(40, 40);
63
- material.normalScale.set(0.05, 0.05);
57
+ material.color.set('orange');
58
+ material.roughness = 0;
59
+ material.normalMap = new CanvasTexture(new FlakesTexture(), UVMapping, RepeatWrapping, RepeatWrapping);
60
+ material.normalMap.flipY = false;
61
+ material.normalMap.repeat.set(40, 40);
62
+ material.normalScale.set(0.05, 0.05);
64
63
 
65
- return scene;
66
- });
64
+ return scene;
65
+ });
67
66
  }
68
67
  ```
69
68
 
@@ -77,19 +76,19 @@ The function also has a static method for preloading textures:
77
76
 
78
77
  ```ts
79
78
  @Component({
80
- template: `
81
- <ngt-mesh>
82
- <ngt-mesh-physical-material [normalMap]="normalMap()" [roughnessMap]="roughnessMap()" />
83
- </ngt-mesh>
84
- `,
79
+ template: `
80
+ <ngt-mesh>
81
+ <ngt-mesh-physical-material [normalMap]="normalMap()" [roughnessMap]="roughnessMap()" />
82
+ </ngt-mesh>
83
+ `,
85
84
  })
86
85
  export class MyCmp {
87
- private textures = injectTexture(() => ({
88
- roughnessMap: 'roughness_floor.jpeg',
89
- normalMap: 'NORM.jpg',
90
- }));
91
- roughnessMap = computed(() => this.textures()?.roughnessMap || null);
92
- normalMap = computed(() => this.textures()?.normalMap || null);
86
+ private textures = injectTexture(() => ({
87
+ roughnessMap: 'roughness_floor.jpeg',
88
+ normalMap: 'NORM.jpg',
89
+ }));
90
+ roughnessMap = computed(() => this.textures()?.roughnessMap || null);
91
+ normalMap = computed(() => this.textures()?.normalMap || null);
93
92
  }
94
93
  ```
95
94
 
@@ -97,12 +96,12 @@ export class MyCmp {
97
96
 
98
97
  ```ts
99
98
  function injectProgress(injector?: Injector): Signal<{
100
- errors: string[];
101
- active: boolean;
102
- progress: number;
103
- item: string;
104
- loaded: number;
105
- total: number;
99
+ errors: string[];
100
+ active: boolean;
101
+ progress: number;
102
+ item: string;
103
+ loaded: number;
104
+ total: number;
106
105
  }>;
107
106
  ```
108
107
 
@@ -4,10 +4,10 @@ import { Material } from 'three';
4
4
  import CustomShaderMaterial from 'three-custom-shader-material/vanilla';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class NgtsCustomShaderMaterial {
7
- baseMaterial: import("@angular/core").InputSignal<Material | typeof Material | ElementRef<Material>>;
7
+ baseMaterial: import("@angular/core").InputSignal<typeof Material | Material | ElementRef<Material>>;
8
8
  attach: import("@angular/core").InputSignal<NgtAttachable>;
9
9
  options: import("@angular/core").InputSignal<Omit<any, "baseMaterial">>;
10
- parameters: import("@angular/core").Signal<Omit<Omit<any, "baseMaterial">, "fragmentShader" | "vertexShader" | "uniforms" | "cacheKey">>;
10
+ parameters: import("@angular/core").Signal<Omit<Omit<any, "baseMaterial">, "uniforms" | "vertexShader" | "fragmentShader" | "cacheKey">>;
11
11
  private base;
12
12
  private fragmentShader;
13
13
  private vertexShader;
@@ -9,19 +9,37 @@ export declare class ManagePortalScene {
9
9
  events: import("@angular/core").InputSignal<boolean | undefined>;
10
10
  rootScene: import("@angular/core").InputSignal<Scene>;
11
11
  material: import("@angular/core").InputSignal<import("angular-three").NgtExtendedColors<import("angular-three").NgtOverwrite<Partial<{
12
- fragmentShader: string;
13
- vertexShader: string;
14
- uniforms: {
15
- [uniform: string]: import("three").IUniform;
16
- };
12
+ resolution: import("three").Vector2;
13
+ blur: number;
14
+ size?: number | undefined;
15
+ sdf?: (import("three").Texture | null) | undefined;
16
+ map?: (import("three").Texture | null) | undefined;
17
+ readonly isShaderMaterial: true;
17
18
  defines: {
18
19
  [key: string]: any;
19
20
  };
20
- map?: (import("three").Texture | null) | undefined;
21
+ uniforms: {
22
+ [uniform: string]: import("three").IUniform;
23
+ };
24
+ uniformsGroups: import("three").UniformsGroup[];
25
+ vertexShader: string;
26
+ fragmentShader: string;
27
+ linewidth: number;
21
28
  wireframe: boolean;
22
29
  wireframeLinewidth: number;
23
30
  fog: boolean;
31
+ lights: boolean;
32
+ clipping: boolean;
33
+ extensions: {
34
+ clipCullDistance: boolean;
35
+ multiDraw: boolean;
36
+ };
37
+ defaultAttributeValues: any;
38
+ index0AttributeName: string | undefined;
39
+ uniformsNeedUpdate: boolean;
40
+ glslVersion: import("three").GLSLVersion | null;
24
41
  setValues: (parameters: import("three").ShaderMaterialParameters) => void;
42
+ toJSON: (meta?: import("three").JSONMeta) => import("three").ShaderMaterialJSON;
25
43
  readonly isMaterial: true;
26
44
  type: string;
27
45
  alphaHash: boolean;
@@ -73,7 +91,6 @@ export declare class ManagePortalScene {
73
91
  onBeforeRender: (renderer: import("three").WebGLRenderer, scene: Scene, camera: import("three").Camera, geometry: import("three").BufferGeometry, object: import("three").Object3D, group: import("three").Group) => void;
74
92
  onBeforeCompile: (parameters: import("three").WebGLProgramParametersWithUniforms, renderer: import("three").WebGLRenderer) => void;
75
93
  customProgramCacheKey: () => string;
76
- toJSON: (meta?: import("three").JSONMeta) => import("three").ShaderMaterialJSON;
77
94
  clone: () => ShaderMaterial & import("@pmndrs/vanilla").PortalMaterialType;
78
95
  copy: (material: import("three").Material) => ShaderMaterial & import("@pmndrs/vanilla").PortalMaterialType;
79
96
  dispose: () => void;
@@ -85,23 +102,6 @@ export declare class ManagePortalScene {
85
102
  dispatchEvent: <T extends "dispose">(event: import("three").BaseEvent<T> & {
86
103
  dispose: {};
87
104
  }[T]) => void;
88
- resolution: import("three").Vector2;
89
- blur: number;
90
- size?: number | undefined;
91
- sdf?: (import("three").Texture | null) | undefined;
92
- readonly isShaderMaterial: true;
93
- uniformsGroups: import("three").UniformsGroup[];
94
- linewidth: number;
95
- lights: boolean;
96
- clipping: boolean;
97
- extensions: {
98
- clipCullDistance: boolean;
99
- multiDraw: boolean;
100
- };
101
- defaultAttributeValues: any;
102
- index0AttributeName: string | undefined;
103
- uniformsNeedUpdate: boolean;
104
- glslVersion: import("three").GLSLVersion | null;
105
105
  }>, import("angular-three").NgtNodeElement<ShaderMaterial & import("@pmndrs/vanilla").PortalMaterialType, (new (parameters?: (import("three").ShaderMaterialParameters & Partial<import("@pmndrs/vanilla").PortalMaterialType>) | undefined) => ShaderMaterial & import("@pmndrs/vanilla").PortalMaterialType) & {
106
106
  key: string;
107
107
  }>>>>;
@@ -20,11 +20,11 @@ export declare class NgtsMeshRefractionMaterial {
20
20
  envMap: import("@angular/core").InputSignal<Texture | CubeTexture>;
21
21
  attach: import("@angular/core").InputSignal<NgtAttachable>;
22
22
  options: import("@angular/core").InputSignalWithTransform<NgtsMeshRefractionMaterialOptions, "" | Partial<NgtsMeshRefractionMaterialOptions>>;
23
- parameters: import("@angular/core").Signal<Omit<NgtsMeshRefractionMaterialOptions, "fastChroma" | "aberrationStrength">>;
23
+ parameters: import("@angular/core").Signal<Omit<NgtsMeshRefractionMaterialOptions, "aberrationStrength" | "fastChroma">>;
24
24
  private fastChroma;
25
25
  aberrationStrength: import("@angular/core").Signal<number>;
26
26
  materialRef: import("@angular/core").Signal<ElementRef<import("three").ShaderMaterial & {
27
- [name: string]: number | boolean | any[] | import("three").Color | Texture | import("three").Vector2 | import("three").Vector3 | import("three").Quaternion | import("three").Matrix4 | import("three").Matrix3 | import("three").Vector4 | CubeTexture | Int32Array | Float32Array | null;
27
+ [name: string]: number | boolean | any[] | import("three").Vector2 | Texture | import("three").Color | import("three").Vector3 | import("three").Quaternion | import("three").Matrix4 | import("three").Matrix3 | import("three").Vector4 | CubeTexture | Int32Array | Float32Array | null;
28
28
  }> | undefined>;
29
29
  private store;
30
30
  private size;
@@ -34,7 +34,7 @@ export declare class NgtsMeshRefractionMaterial {
34
34
  }>;
35
35
  private defineKeys;
36
36
  material: import("@angular/core").Signal<import("three").ShaderMaterial & {
37
- [name: string]: number | boolean | any[] | import("three").Color | Texture | import("three").Vector2 | import("three").Vector3 | import("three").Quaternion | import("three").Matrix4 | import("three").Matrix3 | import("three").Vector4 | CubeTexture | Int32Array | Float32Array | null;
37
+ [name: string]: number | boolean | any[] | import("three").Vector2 | Texture | import("three").Color | import("three").Vector3 | import("three").Quaternion | import("three").Matrix4 | import("three").Matrix3 | import("three").Vector4 | CubeTexture | Int32Array | Float32Array | null;
38
38
  }>;
39
39
  constructor();
40
40
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtsMeshRefractionMaterial, never>;
@@ -29,7 +29,7 @@ export type NgtsMeshTransmissionMaterialOptions = Partial<NgtMeshPhysicalMateria
29
29
  export declare class NgtsMeshTransmissionMaterial {
30
30
  attach: import("@angular/core").InputSignal<NgtAttachable>;
31
31
  options: import("@angular/core").InputSignalWithTransform<NgtsMeshTransmissionMaterialOptions, "" | Partial<NgtsMeshTransmissionMaterialOptions>>;
32
- parameters: import("@angular/core").Signal<Omit<NgtsMeshTransmissionMaterialOptions, "thickness" | "anisotropy" | "transmission" | "side" | "resolution" | "buffer" | "anisotropicBlur" | "samples" | "transmissionSampler" | "backside" | "backsideThickness" | "backsideEnvMapIntensity" | "backsideResolution" | "background">>;
32
+ parameters: import("@angular/core").Signal<Omit<NgtsMeshTransmissionMaterialOptions, "resolution" | "side" | "thickness" | "anisotropy" | "transmission" | "buffer" | "anisotropicBlur" | "samples" | "transmissionSampler" | "backside" | "backsideThickness" | "backsideEnvMapIntensity" | "backsideResolution" | "background">>;
33
33
  private resolution;
34
34
  private backsideResolution;
35
35
  private samples;
@@ -6,6 +6,12 @@ export declare class NgtsComputedAttribute {
6
6
  name: import("@angular/core").InputSignal<string>;
7
7
  options: import("@angular/core").InputSignal<Partial<import("angular-three").NgtExtendedColors<import("angular-three").NgtOverwrite<Partial<{
8
8
  name: string;
9
+ clone: () => BufferAttribute;
10
+ toJSON: () => import("three").BufferAttributeJSON;
11
+ set: (value: ArrayLike<number> | ArrayBufferView, offset?: number) => BufferAttribute;
12
+ applyMatrix4: (m: import("three").Matrix4) => BufferAttribute;
13
+ copy: (source: BufferAttribute) => BufferAttribute;
14
+ readonly count: number;
9
15
  array: import("three").TypedArray;
10
16
  itemSize: number;
11
17
  usage: import("three").Usage;
@@ -16,7 +22,6 @@ export declare class NgtsComputedAttribute {
16
22
  }>;
17
23
  version: number;
18
24
  normalized: boolean;
19
- readonly count: number;
20
25
  needsUpdate: boolean;
21
26
  readonly isBufferAttribute: true;
22
27
  onUploadCallback: () => void;
@@ -24,15 +29,11 @@ export declare class NgtsComputedAttribute {
24
29
  setUsage: (usage: import("three").Usage) => BufferAttribute;
25
30
  addUpdateRange: (start: number, count: number) => void;
26
31
  clearUpdateRanges: () => void;
27
- clone: () => BufferAttribute;
28
- copy: (source: BufferAttribute) => BufferAttribute;
29
32
  copyAt: (index1: number, attribute: BufferAttribute, index2: number) => BufferAttribute;
30
33
  copyArray: (array: ArrayLike<number>) => BufferAttribute;
31
34
  applyMatrix3: (m: import("three").Matrix3) => BufferAttribute;
32
- applyMatrix4: (m: import("three").Matrix4) => BufferAttribute;
33
35
  applyNormalMatrix: (m: import("three").Matrix3) => BufferAttribute;
34
36
  transformDirection: (m: import("three").Matrix4) => BufferAttribute;
35
- set: (value: ArrayLike<number> | ArrayBufferView, offset?: number) => BufferAttribute;
36
37
  getComponent: (index: number, component: number) => number;
37
38
  setComponent: (index: number, component: number, value: number) => void;
38
39
  getX: (index: number) => number;
@@ -46,7 +47,6 @@ export declare class NgtsComputedAttribute {
46
47
  setXY: (index: number, x: number, y: number) => BufferAttribute;
47
48
  setXYZ: (index: number, x: number, y: number, z: number) => BufferAttribute;
48
49
  setXYZW: (index: number, x: number, y: number, z: number, w: number) => BufferAttribute;
49
- toJSON: () => import("three").BufferAttributeJSON;
50
50
  }>, import("angular-three").NgtNodeElement<BufferAttribute, typeof BufferAttribute>>>>>;
51
51
  bufferAttribute: BufferAttribute;
52
52
  attributeRef: import("@angular/core").Signal<ElementRef<BufferAttribute> | undefined>;
@@ -11,7 +11,7 @@ export interface NgtsDecalOptions extends Partial<NgtMesh> {
11
11
  export declare class NgtsDecal {
12
12
  mesh: import("@angular/core").InputSignal<Mesh<import("three").BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap> | ElementRef<Mesh<import("three").BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap>> | null | undefined>;
13
13
  options: import("@angular/core").InputSignalWithTransform<NgtsDecalOptions, "" | Partial<NgtsDecalOptions>>;
14
- parameters: import("@angular/core").Signal<Omit<NgtsDecalOptions, "position" | "scale" | "rotation" | "map" | "polygonOffsetFactor" | "depthTest" | "debug">>;
14
+ parameters: import("@angular/core").Signal<Omit<NgtsDecalOptions, "position" | "scale" | "rotation" | "debug" | "map" | "depthTest" | "polygonOffsetFactor">>;
15
15
  meshRef: import("@angular/core").Signal<ElementRef<Mesh<import("three").BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap>>>;
16
16
  helperRef: import("@angular/core").Signal<ElementRef<Mesh<import("three").BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap>> | undefined>;
17
17
  protected map: import("@angular/core").Signal<Texture | null | undefined>;
@@ -10,7 +10,7 @@ export interface NgtsHTMLOptions extends Partial<NgtGroup> {
10
10
  }
11
11
  export declare class NgtsHTML {
12
12
  options: import("@angular/core").InputSignalWithTransform<NgtsHTMLOptions, "" | Partial<NgtsHTMLOptions>>;
13
- parameters: import("@angular/core").Signal<Omit<NgtsHTMLOptions, "transform" | "castShadow" | "receiveShadow" | "occlude">>;
13
+ parameters: import("@angular/core").Signal<Omit<NgtsHTMLOptions, "castShadow" | "receiveShadow" | "transform" | "occlude">>;
14
14
  groupRef: import("@angular/core").Signal<ElementRef<Group<import("three").Object3DEventMap>>>;
15
15
  occlusionMeshRef: import("@angular/core").Signal<ElementRef<Mesh<import("three").BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap>> | undefined>;
16
16
  occlusionGeometryRef: import("@angular/core").Signal<ElementRef<PlaneGeometry> | undefined>;
@@ -62,7 +62,7 @@ export declare class NgtsSampler {
62
62
  mesh: import("@angular/core").InputSignal<Mesh<BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap> | ElementRef<Mesh<BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap>> | null>;
63
63
  instances: import("@angular/core").InputSignal<InstancedMesh<BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").InstancedMeshEventMap> | ElementRef<InstancedMesh<BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").InstancedMeshEventMap>> | null>;
64
64
  options: import("@angular/core").InputSignalWithTransform<NgtsSamplerOptions, "" | Partial<NgtsSamplerOptions>>;
65
- parameters: import("@angular/core").Signal<Omit<NgtsSamplerOptions, "count" | "transform" | "weight">>;
65
+ parameters: import("@angular/core").Signal<Omit<NgtsSamplerOptions, "transform" | "weight" | "count">>;
66
66
  groupRef: import("@angular/core").Signal<ElementRef<Group<import("three").Object3DEventMap>> | undefined>;
67
67
  constructor();
68
68
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtsSampler, never>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "angular-three-soba",
3
- "version": "3.0.0",
3
+ "version": "3.2.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -51,10 +51,6 @@
51
51
  "types": "./abstractions/index.d.ts",
52
52
  "default": "./fesm2022/angular-three-soba-abstractions.mjs"
53
53
  },
54
- "./controls": {
55
- "types": "./controls/index.d.ts",
56
- "default": "./fesm2022/angular-three-soba-controls.mjs"
57
- },
58
54
  "./cameras": {
59
55
  "types": "./cameras/index.d.ts",
60
56
  "default": "./fesm2022/angular-three-soba-cameras.mjs"
@@ -63,6 +59,10 @@
63
59
  "types": "./gizmos/index.d.ts",
64
60
  "default": "./fesm2022/angular-three-soba-gizmos.mjs"
65
61
  },
62
+ "./controls": {
63
+ "types": "./controls/index.d.ts",
64
+ "default": "./fesm2022/angular-three-soba-controls.mjs"
65
+ },
66
66
  "./materials": {
67
67
  "types": "./materials/index.d.ts",
68
68
  "default": "./fesm2022/angular-three-soba-materials.mjs"
@@ -9,15 +9,12 @@ export declare class NgtsInstance {
9
9
  removeEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<PositionMesh>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<PositionMesh, typeof PositionMesh>, ev: import("angular-three").NgtNodeEventMap<PositionMesh>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
10
10
  attach: string | string[] | import("angular-three").NgtAttachFunction;
11
11
  __ngt_args__: [];
12
- color?: import("three").ColorRepresentation | undefined;
13
- instance?: ElementRef<InstancedMesh> | InstancedMesh | null | undefined;
14
- readonly geometry?: import("three").BufferGeometry<import("three").NormalBufferAttributes> | undefined;
15
- readonly isGroup?: true | undefined;
12
+ readonly type?: string | undefined;
13
+ toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
16
14
  readonly isObject3D?: true | undefined;
17
15
  readonly id?: number | undefined;
18
16
  uuid?: string | undefined;
19
17
  name?: string | undefined;
20
- readonly type?: string | undefined;
21
18
  parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
22
19
  children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
23
20
  readonly modelViewMatrix?: Matrix4 | undefined;
@@ -78,11 +75,14 @@ export declare class NgtsInstance {
78
75
  updateMatrix?: (() => void) | undefined;
79
76
  updateMatrixWorld?: ((force?: boolean) => void) | undefined;
80
77
  updateWorldMatrix?: ((updateParents: boolean, updateChildren: boolean) => void) | undefined;
81
- toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
82
78
  clone?: ((recursive?: boolean) => PositionMesh) | undefined;
83
79
  copy?: ((object: import("three").Object3D, recursive?: boolean) => PositionMesh) | undefined;
84
80
  hasEventListener?: (<T extends keyof import("three").Object3DEventMap>(type: T, listener: import("three").EventListener<import("three").Object3DEventMap[T], T, PositionMesh>) => boolean) | undefined;
85
81
  dispatchEvent?: (<T extends keyof import("three").Object3DEventMap>(event: import("three").BaseEvent<T> & import("three").Object3DEventMap[T]) => void) | undefined;
82
+ color?: import("three").ColorRepresentation | undefined;
83
+ instance?: ElementRef<InstancedMesh> | InstancedMesh | null | undefined;
84
+ readonly geometry?: import("three").BufferGeometry<import("three").NormalBufferAttributes> | undefined;
85
+ readonly isGroup?: true | undefined;
86
86
  position: import("angular-three").NgtVector3;
87
87
  up: import("angular-three").NgtVector3;
88
88
  scale: import("angular-three").NgtVector3;
@@ -107,7 +107,7 @@ export interface NgtsInstancesOptions extends Partial<NgtInstancedMesh> {
107
107
  export declare class NgtsInstances {
108
108
  protected readonly DynamicDrawUsage: 35048;
109
109
  options: import("@angular/core").InputSignalWithTransform<NgtsInstancesOptions, "" | Partial<NgtsInstancesOptions>>;
110
- protected parameters: import("@angular/core").Signal<Omit<NgtsInstancesOptions, "limit" | "frames" | "range">>;
110
+ protected parameters: import("@angular/core").Signal<Omit<NgtsInstancesOptions, "frames" | "limit" | "range">>;
111
111
  instancedMeshRef: import("@angular/core").Signal<ElementRef<InstancedMesh<import("three").BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").InstancedMeshEventMap>>>;
112
112
  private limit;
113
113
  protected buffers: import("@angular/core").Signal<{
@@ -5,19 +5,17 @@ import { PositionPoint } from './position-point';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class NgtsPoint {
7
7
  options: import("@angular/core").InputSignal<Partial<{
8
+ size?: number | undefined;
8
9
  addEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<PositionPoint>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<PositionPoint, typeof PositionPoint>, ev: import("angular-three").NgtNodeEventMap<PositionPoint>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
9
10
  removeEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<PositionPoint>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<PositionPoint, typeof PositionPoint>, ev: import("angular-three").NgtNodeEventMap<PositionPoint>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
10
11
  attach: string | string[] | import("angular-three").NgtAttachFunction;
11
12
  __ngt_args__: [];
12
- color?: import("three").ColorRepresentation | undefined;
13
- instance?: ElementRef<Points> | Points | null | undefined;
14
- readonly geometry?: BufferGeometry<import("three").NormalBufferAttributes> | undefined;
15
- readonly isGroup?: true | undefined;
13
+ readonly type?: string | undefined;
14
+ toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
16
15
  readonly isObject3D?: true | undefined;
17
16
  readonly id?: number | undefined;
18
17
  uuid?: string | undefined;
19
18
  name?: string | undefined;
20
- readonly type?: string | undefined;
21
19
  parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
22
20
  children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
23
21
  readonly modelViewMatrix?: Matrix4 | undefined;
@@ -78,12 +76,14 @@ export declare class NgtsPoint {
78
76
  updateMatrix?: (() => void) | undefined;
79
77
  updateMatrixWorld?: ((force?: boolean) => void) | undefined;
80
78
  updateWorldMatrix?: ((updateParents: boolean, updateChildren: boolean) => void) | undefined;
81
- toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
82
79
  clone?: ((recursive?: boolean) => PositionPoint) | undefined;
83
80
  copy?: ((object: import("three").Object3D, recursive?: boolean) => PositionPoint) | undefined;
84
81
  hasEventListener?: (<T extends keyof import("three").Object3DEventMap>(type: T, listener: import("three").EventListener<import("three").Object3DEventMap[T], T, PositionPoint>) => boolean) | undefined;
85
82
  dispatchEvent?: (<T extends keyof import("three").Object3DEventMap>(event: import("three").BaseEvent<T> & import("three").Object3DEventMap[T]) => void) | undefined;
86
- size?: number | undefined;
83
+ color?: import("three").ColorRepresentation | undefined;
84
+ instance?: ElementRef<Points> | Points | null | undefined;
85
+ readonly geometry?: BufferGeometry<import("three").NormalBufferAttributes> | undefined;
86
+ readonly isGroup?: true | undefined;
87
87
  position: import("angular-three").NgtVector3;
88
88
  up: import("angular-three").NgtVector3;
89
89
  scale: import("angular-three").NgtVector3;
@@ -104,21 +104,19 @@ export declare class NgtsPointsBuffer {
104
104
  positions: import("@angular/core").InputSignal<Float32Array>;
105
105
  colors: import("@angular/core").InputSignal<Float32Array | undefined>;
106
106
  sizes: import("@angular/core").InputSignal<Float32Array | undefined>;
107
- stride: import("@angular/core").InputSignal<3 | 2>;
107
+ stride: import("@angular/core").InputSignal<2 | 3>;
108
108
  options: import("@angular/core").InputSignal<Partial<{
109
+ size?: number | undefined;
109
110
  addEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<PositionPoint>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<PositionPoint, typeof PositionPoint>, ev: import("angular-three").NgtNodeEventMap<PositionPoint>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
110
111
  removeEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<PositionPoint>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<PositionPoint, typeof PositionPoint>, ev: import("angular-three").NgtNodeEventMap<PositionPoint>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
111
112
  attach: string | string[] | import("angular-three").NgtAttachFunction;
112
113
  __ngt_args__: [];
113
- color?: import("three").ColorRepresentation | undefined;
114
- instance?: ElementRef<Points> | Points | null | undefined;
115
- readonly geometry?: BufferGeometry<import("three").NormalBufferAttributes> | undefined;
116
- readonly isGroup?: true | undefined;
114
+ readonly type?: string | undefined;
115
+ toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
117
116
  readonly isObject3D?: true | undefined;
118
117
  readonly id?: number | undefined;
119
118
  uuid?: string | undefined;
120
119
  name?: string | undefined;
121
- readonly type?: string | undefined;
122
120
  parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
123
121
  children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
124
122
  readonly modelViewMatrix?: Matrix4 | undefined;
@@ -179,12 +177,14 @@ export declare class NgtsPointsBuffer {
179
177
  updateMatrix?: (() => void) | undefined;
180
178
  updateMatrixWorld?: ((force?: boolean) => void) | undefined;
181
179
  updateWorldMatrix?: ((updateParents: boolean, updateChildren: boolean) => void) | undefined;
182
- toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
183
180
  clone?: ((recursive?: boolean) => PositionPoint) | undefined;
184
181
  copy?: ((object: import("three").Object3D, recursive?: boolean) => PositionPoint) | undefined;
185
182
  hasEventListener?: (<T extends keyof import("three").Object3DEventMap>(type: T, listener: import("three").EventListener<import("three").Object3DEventMap[T], T, PositionPoint>) => boolean) | undefined;
186
183
  dispatchEvent?: (<T extends keyof import("three").Object3DEventMap>(event: import("three").BaseEvent<T> & import("three").Object3DEventMap[T]) => void) | undefined;
187
- size?: number | undefined;
184
+ color?: import("three").ColorRepresentation | undefined;
185
+ instance?: ElementRef<Points> | Points | null | undefined;
186
+ readonly geometry?: BufferGeometry<import("three").NormalBufferAttributes> | undefined;
187
+ readonly isGroup?: true | undefined;
188
188
  position: import("angular-three").NgtVector3;
189
189
  up: import("angular-three").NgtVector3;
190
190
  scale: import("angular-three").NgtVector3;
@@ -32,10 +32,10 @@ export declare class NgtsSegments {
32
32
  geometry: LineSegmentsGeometry;
33
33
  resolution: Vector2;
34
34
  materialParameters: import("@angular/core").Signal<{
35
- color?: number | undefined;
36
35
  name?: string | undefined;
37
36
  visible?: boolean | undefined;
38
37
  userData?: Record<string, any> | undefined;
38
+ color?: number | undefined;
39
39
  alphaToCoverage?: boolean | undefined;
40
40
  dashed?: boolean | undefined;
41
41
  dashScale?: number | undefined;
@@ -30,7 +30,7 @@ export declare class NgtsAccumulativeShadows {
30
30
  nullTraversal: () => null;
31
31
  Math: Math;
32
32
  options: import("@angular/core").InputSignalWithTransform<NgtsAccumulativeShadowsOptions, "" | Partial<NgtsAccumulativeShadowsOptions>>;
33
- parameters: import("@angular/core").Signal<Omit<NgtsAccumulativeShadowsOptions, "scale" | "frames" | "blend" | "limit" | "temporal" | "opacity" | "alphaTest" | "color" | "colorBlend" | "resolution" | "toneMapped">>;
33
+ parameters: import("@angular/core").Signal<Omit<NgtsAccumulativeShadowsOptions, "scale" | "temporal" | "frames" | "limit" | "blend" | "opacity" | "alphaTest" | "color" | "colorBlend" | "resolution" | "toneMapped">>;
34
34
  lightsRef: import("@angular/core").Signal<ElementRef<Group<import("three").Object3DEventMap>>>;
35
35
  planeRef: import("@angular/core").Signal<ElementRef<Mesh<PlaneGeometry, import("three").ShaderMaterial & {
36
36
  map: import("three").Texture | null;
@@ -32,7 +32,7 @@ export declare class NgtsCaustics {
32
32
  protected readonly OneFactor: 201;
33
33
  protected readonly SrcAlphaFactor: 204;
34
34
  options: import("@angular/core").InputSignalWithTransform<NgtsCausticsOptions, "" | Partial<NgtsCausticsOptions>>;
35
- parameters: import("@angular/core").Signal<Omit<NgtsCausticsOptions, "frames" | "color" | "resolution" | "debug" | "causticsOnly" | "backside" | "ior" | "backsideIOR" | "worldRadius" | "intensity" | "lightSource">>;
35
+ parameters: import("@angular/core").Signal<Omit<NgtsCausticsOptions, "frames" | "color" | "resolution" | "intensity" | "debug" | "causticsOnly" | "backside" | "ior" | "backsideIOR" | "worldRadius" | "lightSource">>;
36
36
  debug: import("@angular/core").Signal<boolean>;
37
37
  color: import("@angular/core").Signal<ColorRepresentation>;
38
38
  private resolution;
@@ -293,7 +293,7 @@ export declare class NgtsCenter {
293
293
  layers: import("angular-three").NgtLayers;
294
294
  dispose: (() => void) | null;
295
295
  raycast: Object3D["raycast"] | null;
296
- }> & NgtsCenterOptions, "disable" | "precise" | "cacheKey" | "top" | "right" | "bottom" | "left" | "front" | "back" | "disableX" | "disableY" | "disableZ">>;
296
+ }> & NgtsCenterOptions, "top" | "right" | "bottom" | "left" | "front" | "back" | "disable" | "disableX" | "disableY" | "disableZ" | "precise" | "cacheKey">>;
297
297
  centered: import("@angular/core").OutputEmitterRef<NgtsCenterState>;
298
298
  groupRef: import("@angular/core").Signal<ElementRef<Group<import("three").Object3DEventMap>>>;
299
299
  private outerRef;
@@ -383,7 +383,7 @@ export declare class NgtsCenter {
383
383
  layers: import("angular-three").NgtLayers;
384
384
  dispose: (() => void) | null;
385
385
  raycast: Object3D["raycast"] | null;
386
- }> & NgtsCenterOptions, "disable" | "precise" | "cacheKey" | "top" | "right" | "bottom" | "left" | "front" | "back" | "disableX" | "disableY" | "disableZ">>;
386
+ }> & NgtsCenterOptions, "top" | "right" | "bottom" | "left" | "front" | "back" | "disable" | "disableX" | "disableY" | "disableZ" | "precise" | "cacheKey">>;
387
387
  constructor();
388
388
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtsCenter, never>;
389
389
  static ɵcmp: i0.ɵɵComponentDeclaration<NgtsCenter, "ngts-center", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "centered": "centered"; }, never, ["*"], true, never>;
@@ -19,7 +19,7 @@ export interface NgtsContactShadowsOptions extends Partial<Omit<NgtGroup, 'scale
19
19
  export declare class NgtsContactShadows {
20
20
  Math: Math;
21
21
  options: import("@angular/core").InputSignalWithTransform<NgtsContactShadowsOptions, "" | Partial<NgtsContactShadowsOptions>>;
22
- parameters: import("@angular/core").Signal<Omit<NgtsContactShadowsOptions, "scale" | "renderOrder" | "frames" | "opacity" | "color" | "resolution" | "depthWrite" | "near" | "far" | "width" | "height" | "blur" | "smooth">>;
22
+ parameters: import("@angular/core").Signal<Omit<NgtsContactShadowsOptions, "scale" | "renderOrder" | "frames" | "opacity" | "color" | "resolution" | "width" | "height" | "near" | "far" | "blur" | "smooth" | "depthWrite">>;
23
23
  contactShadowsRef: import("@angular/core").Signal<ElementRef<Group<import("three").Object3DEventMap>>>;
24
24
  shadowsCameraRef: import("@angular/core").Signal<ElementRef<OrthographicCamera> | undefined>;
25
25
  private store;
@@ -293,7 +293,7 @@ export declare class NgtsLightformer {
293
293
  layers: import("angular-three").NgtLayers;
294
294
  dispose: (() => void) | null;
295
295
  raycast: import("three").Object3D["raycast"] | null;
296
- }, "scale">> & NgtsLightformerOptions, "scale" | "color" | "toneMapped" | "map" | "target" | "intensity" | "form">>;
296
+ }, "scale">> & NgtsLightformerOptions, "scale" | "color" | "toneMapped" | "map" | "intensity" | "target" | "form">>;
297
297
  private intensity;
298
298
  private color;
299
299
  private target;
@@ -9,7 +9,7 @@ export interface NgtsMaskOptions extends Partial<NgtMesh> {
9
9
  export declare class NgtsMask {
10
10
  id: import("@angular/core").InputSignalWithTransform<number, unknown>;
11
11
  options: import("@angular/core").InputSignalWithTransform<NgtsMaskOptions, "" | Partial<NgtsMaskOptions>>;
12
- parameters: import("@angular/core").Signal<Omit<NgtsMaskOptions, "colorWrite" | "depthWrite">>;
12
+ parameters: import("@angular/core").Signal<Omit<NgtsMaskOptions, "depthWrite" | "colorWrite">>;
13
13
  meshRef: import("@angular/core").Signal<ElementRef<Mesh<BufferGeometry<import("three").NormalBufferAttributes>, Material, import("three").Object3DEventMap>>>;
14
14
  private colorWrite;
15
15
  private depthWrite;
@@ -15,7 +15,7 @@ export interface NgtsSkyOptions extends Partial<Omit<NgtMesh, 'scale'>> {
15
15
  }
16
16
  export declare class NgtsSky {
17
17
  options: import("@angular/core").InputSignalWithTransform<NgtsSkyOptions, "" | Partial<NgtsSkyOptions>>;
18
- parameters: import("@angular/core").Signal<Omit<NgtsSkyOptions, "distance" | "inclination" | "azimuth" | "sunPosition" | "turbidity" | "mieCoefficient" | "mieDirectionalG">>;
18
+ parameters: import("@angular/core").Signal<Omit<NgtsSkyOptions, "distance" | "inclination" | "azimuth" | "mieCoefficient" | "mieDirectionalG" | "turbidity" | "sunPosition">>;
19
19
  distance: import("@angular/core").Signal<number>;
20
20
  turbidity: import("@angular/core").Signal<number>;
21
21
  mieCoefficient: import("@angular/core").Signal<number>;