angular-three-soba 2.0.0-beta.7 → 2.0.0-beta.8

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 (296) hide show
  1. package/abstractions/billboard/billboard.d.ts +11 -7
  2. package/abstractions/detailed/detailed.d.ts +26 -0
  3. package/abstractions/edges/edges.d.ts +23 -11
  4. package/abstractions/grid/grid.d.ts +41 -50
  5. package/abstractions/index.d.ts +1 -7
  6. package/abstractions/text/text.d.ts +10 -4
  7. package/abstractions/text-3d/text-3d.d.ts +47 -40
  8. package/cameras/camera/camera-content.d.ts +1 -1
  9. package/cameras/camera/camera.d.ts +16 -13
  10. package/cameras/cube-camera/cube-camera.d.ts +50 -23
  11. package/cameras/index.d.ts +0 -1
  12. package/cameras/orthographic-camera/orthographic-camera.d.ts +29 -18
  13. package/cameras/perspective-camera/perspective-camera.d.ts +10 -1
  14. package/controls/orbit-controls/orbit-controls.d.ts +30 -13
  15. package/esm2022/abstractions/billboard/billboard.mjs +36 -33
  16. package/esm2022/abstractions/detailed/detailed.mjs +64 -0
  17. package/esm2022/abstractions/edges/edges.mjs +58 -63
  18. package/esm2022/abstractions/grid/grid.mjs +140 -110
  19. package/esm2022/abstractions/index.mjs +2 -8
  20. package/esm2022/abstractions/text/text.mjs +123 -122
  21. package/esm2022/abstractions/text-3d/text-3d.mjs +119 -121
  22. package/esm2022/cameras/camera/camera-content.mjs +5 -6
  23. package/esm2022/cameras/camera/camera.mjs +48 -42
  24. package/esm2022/cameras/cube-camera/cube-camera.mjs +129 -99
  25. package/esm2022/cameras/index.mjs +1 -2
  26. package/esm2022/cameras/orthographic-camera/orthographic-camera.mjs +78 -75
  27. package/esm2022/cameras/perspective-camera/perspective-camera.mjs +25 -26
  28. package/esm2022/controls/orbit-controls/orbit-controls.mjs +94 -90
  29. package/esm2022/loaders/gltf-loader/gltf-loader.mjs +3 -6
  30. package/esm2022/loaders/loader/loader.mjs +92 -87
  31. package/esm2022/loaders/progress/progress.mjs +1 -1
  32. package/esm2022/loaders/texture-loader/texture-loader.mjs +4 -4
  33. package/esm2022/materials/index.mjs +2 -1
  34. package/esm2022/materials/mesh-distort-material/mesh-distort-material.mjs +60 -51
  35. package/esm2022/materials/mesh-reflector-material/mesh-reflector-material.mjs +239 -255
  36. package/esm2022/materials/mesh-refraction-material/mesh-refraction-material.mjs +99 -97
  37. package/esm2022/materials/mesh-transmission-material/mesh-transmission-material.mjs +167 -146
  38. package/esm2022/materials/mesh-wobble-material/mesh-wobble-material.mjs +44 -42
  39. package/esm2022/materials/point-material/point-material.mjs +46 -0
  40. package/esm2022/misc/animations/animations.mjs +20 -16
  41. package/esm2022/misc/bake-shadows/bake-shadows.mjs +13 -13
  42. package/esm2022/misc/caustics/caustics.mjs +387 -0
  43. package/esm2022/misc/decal/decal.mjs +187 -0
  44. package/esm2022/misc/depth-buffer/depth-buffer.mjs +33 -35
  45. package/esm2022/misc/example/example.mjs +160 -0
  46. package/esm2022/misc/fbo/fbo.mjs +35 -35
  47. package/esm2022/misc/html/html-wrapper.mjs +478 -0
  48. package/esm2022/misc/html/html.mjs +304 -0
  49. package/esm2022/misc/index.mjs +10 -1
  50. package/esm2022/misc/sampler/sampler.mjs +142 -0
  51. package/esm2022/misc/shadow/shadow.mjs +111 -0
  52. package/esm2022/misc/stats-gl/stats-gl.mjs +61 -0
  53. package/esm2022/misc/trail/trail.mjs +209 -0
  54. package/esm2022/misc/trail-texture/inject-trail-texture.mjs +17 -0
  55. package/esm2022/misc/trail-texture/trail-texture.mjs +106 -0
  56. package/esm2022/modifiers/angular-three-soba-modifiers.mjs +5 -0
  57. package/esm2022/modifiers/curve-modifier/curve-modifier.mjs +64 -0
  58. package/esm2022/modifiers/index.mjs +2 -0
  59. package/esm2022/performances/adaptive-dpr/adaptive-dpr.mjs +44 -0
  60. package/esm2022/performances/adaptive-events/adaptive-events.mjs +27 -0
  61. package/esm2022/performances/angular-three-soba-performances.mjs +5 -0
  62. package/esm2022/performances/index.mjs +6 -0
  63. package/esm2022/performances/points/points-input.mjs +64 -0
  64. package/esm2022/performances/points/points.mjs +329 -0
  65. package/esm2022/performances/points/position-point.mjs +54 -0
  66. package/esm2022/performances/segments/segment-object.mjs +9 -0
  67. package/esm2022/performances/segments/segments.mjs +182 -0
  68. package/esm2022/shaders/blur-pass/blur-pass.mjs +1 -1
  69. package/esm2022/shaders/caustics/caustics-material.mjs +130 -0
  70. package/esm2022/shaders/caustics/caustics-projection-material.mjs +31 -0
  71. package/esm2022/shaders/convolution-material/convolution-material.mjs +1 -1
  72. package/esm2022/shaders/discard-material/discard-material.mjs +1 -1
  73. package/esm2022/shaders/grid-material/grid-material.mjs +29 -14
  74. package/esm2022/shaders/index.mjs +5 -3
  75. package/esm2022/shaders/mesh-distort-material/mesh-distort-material.mjs +42 -41
  76. package/esm2022/shaders/mesh-reflector-material/mesh-reflector-material.mjs +1 -1
  77. package/esm2022/shaders/mesh-refraction-material/mesh-refraction-material.mjs +2 -2
  78. package/esm2022/shaders/mesh-transmission-material/mesh-transmission-material.mjs +4 -4
  79. package/esm2022/shaders/mesh-wobble-material/mesh-wobble-material.mjs +1 -1
  80. package/esm2022/shaders/shader-material/shader-material.mjs +1 -1
  81. package/esm2022/shaders/soft-shadow-material/soft-shadow-material.mjs +17 -25
  82. package/esm2022/shaders/sparkles-material/sparkles-material.mjs +32 -46
  83. package/esm2022/shaders/spot-light-material/spot-light-material.mjs +7 -7
  84. package/esm2022/shaders/star-field-material/star-field-material.mjs +3 -2
  85. package/esm2022/shaders/wireframe-material/wireframe-material.mjs +247 -0
  86. package/esm2022/staging/accumulative-shadows/accumulative-shadows.mjs +160 -176
  87. package/esm2022/staging/accumulative-shadows/progressive-light-map.mjs +1 -1
  88. package/esm2022/staging/accumulative-shadows/randomized-lights.mjs +126 -128
  89. package/esm2022/staging/backdrop/backdrop.mjs +77 -0
  90. package/esm2022/staging/bb-anchor/bb-anchor.mjs +70 -0
  91. package/esm2022/staging/bounds/bounds.mjs +144 -143
  92. package/esm2022/staging/camera-shake/camera-shake.mjs +86 -80
  93. package/esm2022/staging/center/center.mjs +106 -91
  94. package/esm2022/staging/cloud/cloud.mjs +118 -124
  95. package/esm2022/staging/contact-shadows/contact-shadows.mjs +131 -134
  96. package/esm2022/staging/environment/assets.mjs +12 -12
  97. package/esm2022/staging/environment/environment-cube.mjs +28 -30
  98. package/esm2022/staging/environment/environment-ground.mjs +18 -20
  99. package/esm2022/staging/environment/environment-input.mjs +97 -84
  100. package/esm2022/staging/environment/environment-map.mjs +33 -33
  101. package/esm2022/staging/environment/environment-portal.mjs +75 -97
  102. package/esm2022/staging/environment/environment.mjs +34 -51
  103. package/esm2022/staging/environment/utils.mjs +35 -14
  104. package/esm2022/staging/float/float.mjs +70 -58
  105. package/esm2022/staging/index.mjs +7 -3
  106. package/esm2022/staging/matcap-texture/matcap-texture.mjs +64 -0
  107. package/esm2022/staging/normal-texture/normal-texture.mjs +53 -0
  108. package/esm2022/staging/sky/sky.mjs +85 -80
  109. package/esm2022/staging/sparkles/sparkles.mjs +108 -105
  110. package/esm2022/staging/spot-light/shadow-mesh-input.mjs +63 -0
  111. package/esm2022/staging/spot-light/shadow-mesh.mjs +266 -0
  112. package/esm2022/staging/spot-light/spot-light-input.mjs +67 -58
  113. package/esm2022/staging/spot-light/spot-light.mjs +51 -64
  114. package/esm2022/staging/spot-light/volumetric-mesh.mjs +61 -78
  115. package/esm2022/staging/stage/stage.mjs +304 -290
  116. package/esm2022/staging/stars/stars.mjs +101 -102
  117. package/esm2022/staging/wireframe/wireframe-input.mjs +191 -0
  118. package/esm2022/staging/wireframe/wireframe.mjs +224 -0
  119. package/esm2022/utils/angular-three-soba-utils.mjs +5 -0
  120. package/esm2022/utils/content/content.mjs +15 -0
  121. package/esm2022/utils/index.mjs +2 -0
  122. package/fesm2022/angular-three-soba-abstractions.mjs +505 -2087
  123. package/fesm2022/angular-three-soba-abstractions.mjs.map +1 -1
  124. package/fesm2022/angular-three-soba-cameras.mjs +302 -259
  125. package/fesm2022/angular-three-soba-cameras.mjs.map +1 -1
  126. package/fesm2022/angular-three-soba-controls.mjs +93 -88
  127. package/fesm2022/angular-three-soba-controls.mjs.map +1 -1
  128. package/fesm2022/angular-three-soba-loaders.mjs +94 -90
  129. package/fesm2022/angular-three-soba-loaders.mjs.map +1 -1
  130. package/fesm2022/angular-three-soba-materials.mjs +655 -590
  131. package/fesm2022/angular-three-soba-materials.mjs.map +1 -1
  132. package/fesm2022/angular-three-soba-misc.mjs +2198 -89
  133. package/fesm2022/angular-three-soba-misc.mjs.map +1 -1
  134. package/fesm2022/angular-three-soba-modifiers.mjs +71 -0
  135. package/fesm2022/angular-three-soba-modifiers.mjs.map +1 -0
  136. package/fesm2022/angular-three-soba-performances.mjs +697 -0
  137. package/fesm2022/angular-three-soba-performances.mjs.map +1 -0
  138. package/fesm2022/angular-three-soba-shaders.mjs +501 -264
  139. package/fesm2022/angular-three-soba-shaders.mjs.map +1 -1
  140. package/fesm2022/angular-three-soba-staging.mjs +2870 -2555
  141. package/fesm2022/angular-three-soba-staging.mjs.map +1 -1
  142. package/fesm2022/angular-three-soba-utils.mjs +22 -0
  143. package/fesm2022/angular-three-soba-utils.mjs.map +1 -0
  144. package/loaders/gltf-loader/gltf-loader.d.ts +4 -3
  145. package/loaders/loader/loader.d.ts +19 -17
  146. package/loaders/progress/progress.d.ts +1 -1
  147. package/loaders/texture-loader/texture-loader.d.ts +2 -2
  148. package/materials/index.d.ts +1 -0
  149. package/materials/mesh-distort-material/mesh-distort-material.d.ts +25 -15
  150. package/materials/mesh-reflector-material/mesh-reflector-material.d.ts +74 -56
  151. package/materials/mesh-refraction-material/mesh-refraction-material.d.ts +33 -21
  152. package/materials/mesh-transmission-material/mesh-transmission-material.d.ts +55 -39
  153. package/materials/mesh-wobble-material/mesh-wobble-material.d.ts +19 -10
  154. package/materials/point-material/point-material.d.ts +24 -0
  155. package/metadata.json +1 -0
  156. package/misc/animations/animations.d.ts +6 -4
  157. package/misc/caustics/caustics.d.ts +87 -0
  158. package/misc/decal/decal.d.ts +49 -0
  159. package/misc/depth-buffer/depth-buffer.d.ts +2 -2
  160. package/misc/example/example.d.ts +81 -0
  161. package/misc/fbo/fbo.d.ts +2 -2
  162. package/misc/html/html-wrapper.d.ts +559 -0
  163. package/misc/html/html.d.ts +214 -0
  164. package/misc/index.d.ts +9 -0
  165. package/misc/sampler/sampler.d.ts +67 -0
  166. package/misc/shadow/shadow.d.ts +37 -0
  167. package/misc/stats-gl/stats-gl.d.ts +24 -0
  168. package/misc/trail/trail.d.ts +57 -0
  169. package/misc/trail-texture/inject-trail-texture.d.ts +9 -0
  170. package/misc/trail-texture/trail-texture.d.ts +50 -0
  171. package/modifiers/README.md +3 -0
  172. package/modifiers/curve-modifier/curve-modifier.d.ts +23 -0
  173. package/modifiers/index.d.ts +1 -0
  174. package/package.json +30 -22
  175. package/performances/README.md +3 -0
  176. package/performances/adaptive-dpr/adaptive-dpr.d.ts +14 -0
  177. package/{performance/adaptive → performances/adaptive-events}/adaptive-events.d.ts +3 -0
  178. package/performances/index.d.ts +5 -0
  179. package/performances/points/points-input.d.ts +32 -0
  180. package/performances/points/points.d.ts +92 -0
  181. package/{performance/instances/position-mesh.d.ts → performances/points/position-point.d.ts} +4 -3
  182. package/performances/segments/segment-object.d.ts +7 -0
  183. package/performances/segments/segments.d.ts +124 -0
  184. package/shaders/grid-material/grid-material.d.ts +33 -0
  185. package/shaders/index.d.ts +4 -2
  186. package/shaders/mesh-distort-material/mesh-distort-material.d.ts +146 -1
  187. package/shaders/mesh-transmission-material/mesh-transmission-material.d.ts +1 -1
  188. package/shaders/shader-material/shader-material.d.ts +2 -2
  189. package/shaders/soft-shadow-material/soft-shadow-material.d.ts +10 -1
  190. package/shaders/sparkles-material/sparkles-material.d.ts +15 -1
  191. package/shaders/spot-light-material/spot-light-material.d.ts +11 -2
  192. package/shaders/star-field-material/star-field-material.d.ts +11 -1
  193. package/shaders/wireframe-material/wireframe-material.d.ts +58 -0
  194. package/staging/accumulative-shadows/accumulative-shadows.d.ts +89 -39
  195. package/staging/accumulative-shadows/randomized-lights.d.ts +40 -27
  196. package/staging/backdrop/backdrop.d.ts +30 -0
  197. package/staging/bb-anchor/bb-anchor.d.ts +27 -0
  198. package/staging/bounds/bounds.d.ts +100 -24
  199. package/staging/camera-shake/camera-shake.d.ts +30 -19
  200. package/staging/center/center.d.ts +43 -35
  201. package/staging/cloud/cloud.d.ts +26 -23
  202. package/staging/contact-shadows/contact-shadows.d.ts +41 -28
  203. package/staging/environment/assets.d.ts +9 -9
  204. package/staging/environment/environment-cube.d.ts +9 -5
  205. package/staging/environment/environment-ground.d.ts +7 -7
  206. package/staging/environment/environment-input.d.ts +36 -36
  207. package/staging/environment/environment-map.d.ts +10 -5
  208. package/staging/environment/environment-portal.d.ts +10 -5
  209. package/staging/environment/environment.d.ts +0 -4
  210. package/staging/environment/utils.d.ts +2 -2
  211. package/staging/float/float.d.ts +14 -10
  212. package/staging/index.d.ts +6 -2
  213. package/staging/matcap-texture/matcap-texture.d.ts +13 -0
  214. package/staging/normal-texture/normal-texture.d.ts +16 -0
  215. package/staging/sky/sky.d.ts +28 -21
  216. package/staging/sparkles/sparkles.d.ts +35 -21
  217. package/staging/spot-light/shadow-mesh-input.d.ts +29 -0
  218. package/staging/spot-light/shadow-mesh.d.ts +37 -0
  219. package/staging/spot-light/spot-light-input.d.ts +25 -25
  220. package/staging/spot-light/spot-light.d.ts +31 -15
  221. package/staging/spot-light/volumetric-mesh.d.ts +15 -9
  222. package/staging/stage/stage.d.ts +88 -63
  223. package/staging/stars/stars.d.ts +27 -16
  224. package/staging/wireframe/wireframe-input.d.ts +65 -0
  225. package/staging/wireframe/wireframe.d.ts +28 -0
  226. package/utils/README.md +3 -0
  227. package/utils/content/content.d.ts +8 -0
  228. package/utils/index.d.ts +1 -0
  229. package/web-types.json +1 -0
  230. package/abstractions/catmull-rom-line/catmull-rom-line.d.ts +0 -25
  231. package/abstractions/cubic-bezier-line/cubic-bezier-line.d.ts +0 -25
  232. package/abstractions/gizmo-helper/gizmo-helper.d.ts +0 -34
  233. package/abstractions/gizmo-helper/gizmo-viewcube/constants.d.ts +0 -12
  234. package/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.d.ts +0 -22
  235. package/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.d.ts +0 -30
  236. package/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-inputs.d.ts +0 -32
  237. package/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube.d.ts +0 -14
  238. package/abstractions/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.d.ts +0 -47
  239. package/abstractions/gizmo-helper/gizmo-viewport/gizmo-viewport.d.ts +0 -40
  240. package/abstractions/line/line-input.d.ts +0 -42
  241. package/abstractions/line/line.d.ts +0 -35
  242. package/abstractions/quadratic-bezier-line/quadratic-bezier-line.d.ts +0 -23
  243. package/esm2022/abstractions/catmull-rom-line/catmull-rom-line.mjs +0 -131
  244. package/esm2022/abstractions/cubic-bezier-line/cubic-bezier-line.mjs +0 -113
  245. package/esm2022/abstractions/gizmo-helper/gizmo-helper.mjs +0 -210
  246. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/constants.mjs +0 -31
  247. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.mjs +0 -95
  248. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.mjs +0 -155
  249. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-inputs.mjs +0 -62
  250. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube.mjs +0 -80
  251. package/esm2022/abstractions/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.mjs +0 -206
  252. package/esm2022/abstractions/gizmo-helper/gizmo-viewport/gizmo-viewport.mjs +0 -273
  253. package/esm2022/abstractions/line/line-input.mjs +0 -113
  254. package/esm2022/abstractions/line/line.mjs +0 -165
  255. package/esm2022/abstractions/quadratic-bezier-line/quadratic-bezier-line.mjs +0 -128
  256. package/esm2022/performance/adaptive/adaptive-dpr.mjs +0 -46
  257. package/esm2022/performance/adaptive/adaptive-events.mjs +0 -31
  258. package/esm2022/performance/angular-three-soba-performance.mjs +0 -5
  259. package/esm2022/performance/detailed/detailed.mjs +0 -61
  260. package/esm2022/performance/index.mjs +0 -7
  261. package/esm2022/performance/instances/instance.mjs +0 -48
  262. package/esm2022/performance/instances/instances.mjs +0 -189
  263. package/esm2022/performance/instances/position-mesh.mjs +0 -52
  264. package/esm2022/performance/stats/stats.mjs +0 -79
  265. package/esm2022/shaders/caustics-material/caustics-material.mjs +0 -128
  266. package/esm2022/shaders/caustics-material/caustics-projection-material.mjs +0 -33
  267. package/esm2022/staging/caustics/caustisc.mjs +0 -384
  268. package/esm2022/staging/spot-light/spot-light-shadow-mesh-input.mjs +0 -57
  269. package/esm2022/staging/spot-light/spot-light-shadow-mesh.mjs +0 -258
  270. package/fesm2022/angular-three-soba-performance.mjs +0 -487
  271. package/fesm2022/angular-three-soba-performance.mjs.map +0 -1
  272. package/performance/README.md +0 -3
  273. package/performance/adaptive/adaptive-dpr.d.ts +0 -8
  274. package/performance/detailed/detailed.d.ts +0 -20
  275. package/performance/index.d.ts +0 -6
  276. package/performance/instances/instance.d.ts +0 -9
  277. package/performance/instances/instances.d.ts +0 -35
  278. package/performance/stats/stats.d.ts +0 -18
  279. package/plugin/generators.json +0 -19
  280. package/plugin/libs/plugin/README.md +0 -11
  281. package/plugin/package.json +0 -9
  282. package/plugin/src/generators/init/compat.d.ts +0 -2
  283. package/plugin/src/generators/init/compat.js +0 -6
  284. package/plugin/src/generators/init/compat.js.map +0 -1
  285. package/plugin/src/generators/init/init.d.ts +0 -7
  286. package/plugin/src/generators/init/init.js +0 -28
  287. package/plugin/src/generators/init/init.js.map +0 -1
  288. package/plugin/src/generators/init/schema.json +0 -6
  289. package/plugin/src/index.d.ts +0 -1
  290. package/plugin/src/index.js +0 -6
  291. package/plugin/src/index.js.map +0 -1
  292. package/staging/caustics/caustisc.d.ts +0 -70
  293. package/staging/spot-light/spot-light-shadow-mesh-input.d.ts +0 -29
  294. package/staging/spot-light/spot-light-shadow-mesh.d.ts +0 -38
  295. /package/shaders/{caustics-material → caustics}/caustics-material.d.ts +0 -0
  296. /package/shaders/{caustics-material → caustics}/caustics-projection-material.d.ts +0 -0
@@ -0,0 +1,5 @@
1
+ export * from './adaptive-dpr/adaptive-dpr';
2
+ export * from './adaptive-events/adaptive-events';
3
+ export * from './points/points';
4
+ export * from './segments/segment-object';
5
+ export * from './segments/segments';
@@ -0,0 +1,32 @@
1
+ import type { Points } from 'three';
2
+ import * as i0 from "@angular/core";
3
+ export type NgtsPointsInstancesState = {
4
+ limit: number;
5
+ range?: number;
6
+ };
7
+ export type NgtsPointsBuffersState = {
8
+ positions: Float32Array;
9
+ colors?: Float32Array;
10
+ sizes?: Float32Array;
11
+ stride: 2 | 3;
12
+ };
13
+ export declare abstract class NgtsPointsInput {
14
+ protected inputs: import("angular-three").NgtSignalStore<NgtsPointsBuffersState & NgtsPointsInstancesState>;
15
+ pointsRef: import("angular-three").NgtInjectedRef<Points<import("three").BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[]>>;
16
+ set _range(range: number);
17
+ set _limit(limit: number);
18
+ set _positions(positions: Float32Array);
19
+ set _colors(colors: Float32Array);
20
+ set _sizes(sizes: Float32Array);
21
+ set _stride(stride: 2 | 3);
22
+ limit: import("@angular/core").Signal<number>;
23
+ range: import("@angular/core").Signal<number | undefined>;
24
+ positions: import("@angular/core").Signal<Float32Array>;
25
+ colors: import("@angular/core").Signal<Float32Array | undefined>;
26
+ colorsLength: import("@angular/core").Signal<number>;
27
+ sizes: import("@angular/core").Signal<Float32Array | undefined>;
28
+ sizesLength: import("@angular/core").Signal<number>;
29
+ stride: import("@angular/core").Signal<2 | 3>;
30
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtsPointsInput, never>;
31
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgtsPointsInput, never, never, { "pointsRef": { "alias": "pointsRef"; "required": false; }; "_range": { "alias": "range"; "required": false; }; "_limit": { "alias": "limit"; "required": false; }; "_positions": { "alias": "positions"; "required": false; }; "_colors": { "alias": "colors"; "required": false; }; "_sizes": { "alias": "sizes"; "required": false; }; "_stride": { "alias": "stride"; "required": false; }; }, {}, never, never, false, never>;
32
+ }
@@ -0,0 +1,92 @@
1
+ import { Injector, OnInit, TemplateRef } from '@angular/core';
2
+ import { type NgtGroup, type NgtPoints, type NgtRef } from 'angular-three';
3
+ import * as THREE from 'three';
4
+ import { NgtsPointsInput, type NgtsPointsBuffersState, type NgtsPointsInstancesState } from './points-input';
5
+ import { PositionPoint } from './position-point';
6
+ import * as i0 from "@angular/core";
7
+ declare global {
8
+ interface HTMLElementTagNameMap {
9
+ /**
10
+ * @extends ngt-points
11
+ */
12
+ 'ngts-points-instances': NgtsPointsInstancesState & NgtPoints;
13
+ /**
14
+ * @extends ngt-points
15
+ */
16
+ 'ngts-points-buffers': NgtsPointsBuffersState & NgtPoints;
17
+ /**
18
+ * @extends ngt-points
19
+ */
20
+ 'ngts-points': (NgtsPointsBuffersState | NgtsPointsInstancesState) & NgtsPoints;
21
+ /**
22
+ * @extends ngt-group
23
+ */
24
+ 'ngt-position-point': PositionPoint & NgtGroup;
25
+ }
26
+ }
27
+ export declare const injectNgtsPointsInstanceApi: {
28
+ (): import("@angular/core").Signal<{
29
+ getParent: () => import("angular-three").NgtInjectedRef<THREE.Points<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[]>>;
30
+ subscribe: (pointRef: NgtRef<PositionPoint>) => () => void;
31
+ }>;
32
+ (injectOptions: import("@angular/core").InjectOptions & {
33
+ optional?: false | undefined;
34
+ }): import("@angular/core").Signal<{
35
+ getParent: () => import("angular-three").NgtInjectedRef<THREE.Points<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[]>>;
36
+ subscribe: (pointRef: NgtRef<PositionPoint>) => () => void;
37
+ }>;
38
+ (injectOptions: import("@angular/core").InjectOptions): import("@angular/core").Signal<{
39
+ getParent: () => import("angular-three").NgtInjectedRef<THREE.Points<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[]>>;
40
+ subscribe: (pointRef: NgtRef<PositionPoint>) => () => void;
41
+ }> | null;
42
+ }, provideNgtsPointsInstancesApi: (value?: import("@angular/core").Signal<{
43
+ getParent: () => import("angular-three").NgtInjectedRef<THREE.Points<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[]>>;
44
+ subscribe: (pointRef: NgtRef<PositionPoint>) => () => void;
45
+ }> | undefined) => import("@angular/core").Provider;
46
+ export declare class NgtsPointsInstances {
47
+ nullRaycast: () => null;
48
+ DynamicDrawUsage: 35048;
49
+ pointsInput: NgtsPointsInput;
50
+ private positionPoints;
51
+ private parentMatrix;
52
+ private position;
53
+ points: import("@angular/core").Signal<NgtRef<PositionPoint>[]>;
54
+ positions: import("@angular/core").Signal<Float32Array>;
55
+ colors: import("@angular/core").Signal<Float32Array>;
56
+ sizes: import("@angular/core").Signal<Float32Array>;
57
+ injector: Injector;
58
+ api: import("@angular/core").Signal<{
59
+ getParent: () => import("angular-three").NgtInjectedRef<THREE.Points<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[]>>;
60
+ subscribe: (pointRef: NgtRef<PositionPoint>) => () => void;
61
+ }>;
62
+ constructor();
63
+ private checkUpdatePositionAttribute;
64
+ private beforeRender;
65
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtsPointsInstances, never>;
66
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtsPointsInstances, "ngts-points-instances", never, {}, {}, never, ["*"], true, never>;
67
+ }
68
+ export declare class NgtsPoint implements OnInit {
69
+ pointRef: import("angular-three").NgtInjectedRef<PositionPoint>;
70
+ private zone;
71
+ private injector;
72
+ pointsInstancesApi: import("@angular/core").Signal<{
73
+ getParent: () => import("angular-three").NgtInjectedRef<THREE.Points<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[]>>;
74
+ subscribe: (pointRef: NgtRef<PositionPoint>) => () => void;
75
+ }>;
76
+ ngOnInit(): void;
77
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtsPoint, never>;
78
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtsPoint, "ngts-point", never, { "pointRef": { "alias": "pointRef"; "required": false; }; }, {}, never, ["*"], true, never>;
79
+ }
80
+ export declare class NgtsPointsBuffers {
81
+ DynamicDrawUsage: 35048;
82
+ pointsInput: NgtsPointsInput;
83
+ store: import("angular-three").NgtSignalStore<import("angular-three").NgtState>;
84
+ constructor();
85
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtsPointsBuffers, never>;
86
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtsPointsBuffers, "ngts-points-buffers", never, {}, {}, never, ["*"], true, never>;
87
+ }
88
+ export declare class NgtsPoints extends NgtsPointsInput {
89
+ content: TemplateRef<unknown>;
90
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtsPoints, never>;
91
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtsPoints, "ngts-points", never, {}, {}, ["content"], never, true, never>;
92
+ }
@@ -1,9 +1,10 @@
1
1
  import { ElementRef } from '@angular/core';
2
2
  import * as THREE from 'three';
3
- export declare class PositionMesh extends THREE.Group {
3
+ export declare class PositionPoint extends THREE.Group {
4
+ size: number;
4
5
  color: THREE.Color;
5
- instance: ElementRef<THREE.InstancedMesh | undefined>;
6
- instanceKey: ElementRef<PositionMesh | undefined>;
6
+ instance: ElementRef<THREE.Points | undefined>;
7
+ instanceKey: ElementRef<any>;
7
8
  constructor();
8
9
  get geometry(): THREE.BufferGeometry<THREE.NormalBufferAttributes> | undefined;
9
10
  raycast(raycaster: THREE.Raycaster, intersects: THREE.Intersection[]): void;
@@ -0,0 +1,7 @@
1
+ import * as THREE from 'three';
2
+ export declare class SegmentObject {
3
+ color: THREE.Color;
4
+ start: THREE.Vector3;
5
+ end: THREE.Vector3;
6
+ constructor();
7
+ }
@@ -0,0 +1,124 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { NgtRef, type NgtColor, type NgtVector3 } from 'angular-three';
3
+ import * as THREE from 'three';
4
+ import { Line2, LineMaterial, LineSegmentsGeometry } from 'three-stdlib';
5
+ import { SegmentObject } from './segment-object';
6
+ import * as i0 from "@angular/core";
7
+ export type NgtsSegmentState = {
8
+ start?: NgtVector3;
9
+ end?: NgtVector3;
10
+ color?: NgtColor;
11
+ };
12
+ export type NgtsSegmentsState = {
13
+ limit: number;
14
+ lineWidth: number;
15
+ };
16
+ declare global {
17
+ interface HTMLElementTagNameMap {
18
+ 'ngt-segment-object': SegmentObject;
19
+ 'ngts-segment': NgtsSegmentState;
20
+ 'ngts-segments': NgtsSegmentsState;
21
+ }
22
+ }
23
+ export declare const injectNgtsSegmentsApi: {
24
+ (): import("@angular/core").Signal<{
25
+ subscribe: (segmentRef: NgtRef<SegmentObject>) => () => void;
26
+ }>;
27
+ (injectOptions: import("@angular/core").InjectOptions & {
28
+ optional?: false | undefined;
29
+ }): import("@angular/core").Signal<{
30
+ subscribe: (segmentRef: NgtRef<SegmentObject>) => () => void;
31
+ }>;
32
+ (injectOptions: import("@angular/core").InjectOptions): import("@angular/core").Signal<{
33
+ subscribe: (segmentRef: NgtRef<SegmentObject>) => () => void;
34
+ }> | null;
35
+ }, provideNgtsSegmentsApi: (value?: import("@angular/core").Signal<{
36
+ subscribe: (segmentRef: NgtRef<SegmentObject>) => () => void;
37
+ }> | undefined) => import("@angular/core").Provider;
38
+ export declare class NgtsSegment implements OnInit {
39
+ private inputs;
40
+ segmentRef: import("angular-three").NgtInjectedRef<SegmentObject>;
41
+ set _start(start: NgtVector3);
42
+ set _end(end: NgtVector3);
43
+ set _color(color: NgtColor);
44
+ private segmentsApi;
45
+ private injector;
46
+ private zone;
47
+ private start;
48
+ private end;
49
+ normalizedStart: import("@angular/core").Signal<THREE.Vector3>;
50
+ normalizedEnd: import("@angular/core").Signal<THREE.Vector3>;
51
+ color: import("@angular/core").Signal<import("angular-three").NgtExtendedColors<import("angular-three").NgtOverwrite<Partial<{
52
+ [Symbol.iterator]: () => Generator<number, void, unknown>;
53
+ set: {
54
+ (color: THREE.ColorRepresentation): THREE.Color;
55
+ (r: number, g: number, b: number): THREE.Color;
56
+ };
57
+ setScalar: (scalar: number) => THREE.Color;
58
+ add: (color: THREE.Color) => THREE.Color;
59
+ toJSON: () => number;
60
+ clone: () => THREE.Color;
61
+ copy: (color: THREE.Color) => THREE.Color;
62
+ readonly isColor: true;
63
+ r: number;
64
+ g: number;
65
+ b: number;
66
+ setFromVector3: (vector: THREE.Vector3) => THREE.Color;
67
+ setHex: (hex: number, colorSpace?: THREE.ColorSpace | undefined) => THREE.Color;
68
+ setRGB: (r: number, g: number, b: number, colorSpace?: THREE.ColorSpace | undefined) => THREE.Color;
69
+ setHSL: (h: number, s: number, l: number, colorSpace?: THREE.ColorSpace | undefined) => THREE.Color;
70
+ setStyle: (style: string, colorSpace?: THREE.ColorSpace | undefined) => THREE.Color;
71
+ setColorName: (style: string, colorSpace?: THREE.ColorSpace | undefined) => THREE.Color;
72
+ copySRGBToLinear: (color: THREE.Color) => THREE.Color;
73
+ copyLinearToSRGB: (color: THREE.Color) => THREE.Color;
74
+ convertSRGBToLinear: () => THREE.Color;
75
+ convertLinearToSRGB: () => THREE.Color;
76
+ getHex: (colorSpace?: THREE.ColorSpace | undefined) => number;
77
+ getHexString: (colorSpace?: THREE.ColorSpace | undefined) => string;
78
+ getHSL: (target: THREE.HSL, colorSpace?: THREE.ColorSpace | undefined) => THREE.HSL;
79
+ getRGB: (target: THREE.RGB, colorSpace?: THREE.ColorSpace | undefined) => THREE.RGB;
80
+ getStyle: (colorSpace?: THREE.ColorSpace | undefined) => string;
81
+ offsetHSL: (h: number, s: number, l: number) => THREE.Color;
82
+ addColors: (color1: THREE.Color, color2: THREE.Color) => THREE.Color;
83
+ addScalar: (s: number) => THREE.Color;
84
+ applyMatrix3: (m: THREE.Matrix3) => THREE.Color;
85
+ sub: (color: THREE.Color) => THREE.Color;
86
+ multiply: (color: THREE.Color) => THREE.Color;
87
+ multiplyScalar: (s: number) => THREE.Color;
88
+ lerp: (color: THREE.Color, alpha: number) => THREE.Color;
89
+ lerpColors: (color1: THREE.Color, color2: THREE.Color, alpha: number) => THREE.Color;
90
+ lerpHSL: (color: THREE.Color, alpha: number) => THREE.Color;
91
+ equals: (color: THREE.Color) => boolean;
92
+ fromArray: (array: number[] | ArrayLike<number>, offset?: number | undefined) => THREE.Color;
93
+ toArray: {
94
+ (array?: number[] | undefined, offset?: number | undefined): number[];
95
+ (xyz: ArrayLike<number>, offset?: number | undefined): ArrayLike<number>;
96
+ };
97
+ fromBufferAttribute: (attribute: THREE.BufferAttribute | THREE.InterleavedBufferAttribute, index: number) => THREE.Color;
98
+ }>, import("angular-three").NgtNodeElement<THREE.Color, THREE.ColorRepresentation>>> | undefined>;
99
+ ngOnInit(): void;
100
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtsSegment, never>;
101
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtsSegment, "ngts-segment", never, { "segmentRef": { "alias": "segmentRef"; "required": false; }; "_start": { "alias": "start"; "required": false; }; "_end": { "alias": "end"; "required": false; }; "_color": { "alias": "color"; "required": false; }; }, {}, never, never, true, never>;
102
+ }
103
+ export declare class NgtsSegments {
104
+ private inputs;
105
+ segmentsRef: import("angular-three").NgtInjectedRef<Line2>;
106
+ set _limit(limit: number);
107
+ set _lineWidth(lineWidth: number);
108
+ private segments;
109
+ private limit;
110
+ private positions;
111
+ private colors;
112
+ resolution: THREE.Vector2;
113
+ lineWidth: import("@angular/core").Signal<number>;
114
+ line: Line2;
115
+ material: LineMaterial;
116
+ geometry: LineSegmentsGeometry;
117
+ api: import("@angular/core").Signal<{
118
+ subscribe: (segmentRef: NgtRef<SegmentObject>) => () => void;
119
+ }>;
120
+ constructor();
121
+ private beforeRender;
122
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtsSegments, never>;
123
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtsSegments, "ngts-segments", never, { "segmentsRef": { "alias": "segmentsRef"; "required": false; }; "_limit": { "alias": "limit"; "required": false; }; "_lineWidth": { "alias": "lineWidth"; "required": false; }; }, {}, never, ["*"], true, never>;
124
+ }
@@ -1,4 +1,37 @@
1
+ import type { NgtShaderMaterial } from 'angular-three';
1
2
  import * as THREE from 'three';
2
3
  export declare const GridMaterial: typeof THREE.ShaderMaterial & {
3
4
  key: string;
4
5
  };
6
+ export type NgtGridMaterialState = {
7
+ /** Cell size, default: 0.5 */
8
+ cellSize?: number;
9
+ /** Cell thickness, default: 0.5 */
10
+ cellThickness?: number;
11
+ /** Cell color, default: black */
12
+ cellColor?: THREE.ColorRepresentation;
13
+ /** Section size, default: 1 */
14
+ sectionSize?: number;
15
+ /** Section thickness, default: 1 */
16
+ sectionThickness?: number;
17
+ /** Section color, default: #2080ff */
18
+ sectionColor?: THREE.ColorRepresentation;
19
+ /** Follow camera, default: false */
20
+ followCamera?: boolean;
21
+ /** Display the grid infinitely, default: false */
22
+ infiniteGrid?: boolean;
23
+ /** Fade distance, default: 100 */
24
+ fadeDistance?: number;
25
+ /** Fade strength, default: 1 */
26
+ fadeStrength?: number;
27
+ /** Material side, default: THREE.BackSide */
28
+ side?: THREE.Side;
29
+ };
30
+ declare global {
31
+ interface HTMLElementTagNameMap {
32
+ /**
33
+ * @extends ngt-shader-material
34
+ */
35
+ 'ngt-grid-material': NgtGridMaterialState & NgtShaderMaterial;
36
+ }
37
+ }
@@ -1,6 +1,6 @@
1
1
  export * from './blur-pass/blur-pass';
2
- export * from './caustics-material/caustics-material';
3
- export * from './caustics-material/caustics-projection-material';
2
+ export * from './caustics/caustics-material';
3
+ export * from './caustics/caustics-projection-material';
4
4
  export * from './convolution-material/convolution-material';
5
5
  export * from './discard-material/discard-material';
6
6
  export * from './grid-material/grid-material';
@@ -9,7 +9,9 @@ export * from './mesh-reflector-material/mesh-reflector-material';
9
9
  export * from './mesh-refraction-material/mesh-refraction-material';
10
10
  export * from './mesh-transmission-material/mesh-transmission-material';
11
11
  export * from './mesh-wobble-material/mesh-wobble-material';
12
+ export * from './shader-material/shader-material';
12
13
  export * from './soft-shadow-material/soft-shadow-material';
13
14
  export * from './sparkles-material/sparkles-material';
14
15
  export * from './spot-light-material/spot-light-material';
15
16
  export * from './star-field-material/star-field-material';
17
+ export * from './wireframe-material/wireframe-material';
@@ -7,7 +7,14 @@ interface Uniform<T> {
7
7
  * npm i -D raw-loader glslify-loader glsl-noise
8
8
  * Usage: import distort from 'raw-loader!glslify-loader!angular-three-soba/assets/distort.vert.glsl'
9
9
  *
10
- * provideNgtsMeshDistortMaterialShader(distort)
10
+ * using provider:
11
+ * - provideNgtsMeshDistortMaterialShader(distort)
12
+ * - readonly MeshDistortMaterial = injectNgtsMeshDistortMaterial()
13
+ * - material = new this.MeshDistortMaterial(); // then use this with primitive
14
+ *
15
+ * using createMeshDistortMaterial: createMeshDistortMaterial(distort);
16
+ * - const MeshDistortMaterial = createMeshDistortMaterial(distort);
17
+ * - extend({ MeshDistortMaterial }); // then use as ngt-mesh-distort-material
11
18
  */
12
19
  export type MeshDistortMaterial = Type<{
13
20
  time: number;
@@ -15,6 +22,140 @@ export type MeshDistortMaterial = Type<{
15
22
  radius: number;
16
23
  } & THREE.MeshPhysicalMaterial>;
17
24
  export declare const NGTS_DISTORT_MATERIAL_SHADER: InjectionToken<MeshDistortMaterial>;
25
+ export declare function injectNgtsMeshDistortMaterial(): MeshDistortMaterial;
26
+ export declare function createMeshDistortMaterial(distortShader: string): {
27
+ new (parameters?: THREE.MeshPhysicalMaterialParameters): {
28
+ _time: Uniform<number>;
29
+ _distort: Uniform<number>;
30
+ _radius: Uniform<number>;
31
+ onBeforeCompile(shader: THREE.Shader): void;
32
+ time: number;
33
+ distort: number;
34
+ radius: number;
35
+ type: string;
36
+ defines: {
37
+ [key: string]: any;
38
+ };
39
+ clearcoat: number;
40
+ clearcoatMap: THREE.Texture | null;
41
+ clearcoatRoughness: number;
42
+ clearcoatRoughnessMap: THREE.Texture | null;
43
+ clearcoatNormalScale: THREE.Vector2;
44
+ clearcoatNormalMap: THREE.Texture | null;
45
+ reflectivity: number;
46
+ ior: number;
47
+ sheen: number;
48
+ sheenColor: THREE.Color;
49
+ sheenColorMap: THREE.Texture | null;
50
+ sheenRoughness: number;
51
+ sheenRoughnessMap: THREE.Texture | null;
52
+ transmission: number;
53
+ transmissionMap: THREE.Texture | null;
54
+ thickness: number;
55
+ thicknessMap: THREE.Texture | null;
56
+ attenuationDistance: number;
57
+ attenuationColor: THREE.Color;
58
+ specularIntensity: number;
59
+ specularColor: THREE.Color;
60
+ specularIntensityMap: THREE.Texture | null;
61
+ specularColorMap: THREE.Texture | null;
62
+ iridescenceMap: THREE.Texture | null;
63
+ iridescenceIOR: number;
64
+ iridescence: number;
65
+ iridescenceThicknessRange: [number, number];
66
+ iridescenceThicknessMap: THREE.Texture | null;
67
+ anisotropy?: number | undefined;
68
+ anisotropyRotation?: number | undefined;
69
+ anisotropyMap?: THREE.Texture | null | undefined;
70
+ color: THREE.Color;
71
+ roughness: number;
72
+ metalness: number;
73
+ map: THREE.Texture | null;
74
+ lightMap: THREE.Texture | null;
75
+ lightMapIntensity: number;
76
+ aoMap: THREE.Texture | null;
77
+ aoMapIntensity: number;
78
+ emissive: THREE.Color;
79
+ emissiveIntensity: number;
80
+ emissiveMap: THREE.Texture | null;
81
+ bumpMap: THREE.Texture | null;
82
+ bumpScale: number;
83
+ normalMap: THREE.Texture | null;
84
+ normalMapType: THREE.NormalMapTypes;
85
+ normalScale: THREE.Vector2;
86
+ displacementMap: THREE.Texture | null;
87
+ displacementScale: number;
88
+ displacementBias: number;
89
+ roughnessMap: THREE.Texture | null;
90
+ metalnessMap: THREE.Texture | null;
91
+ alphaMap: THREE.Texture | null;
92
+ envMap: THREE.Texture | null;
93
+ envMapIntensity: number;
94
+ wireframe: boolean;
95
+ wireframeLinewidth: number;
96
+ wireframeLinecap: string;
97
+ wireframeLinejoin: string;
98
+ flatShading: boolean;
99
+ fog: boolean;
100
+ isMeshStandardMaterial: boolean;
101
+ setValues(parameters: THREE.MeshStandardMaterialParameters): void;
102
+ alphaHash: boolean;
103
+ alphaTest: number;
104
+ alphaToCoverage: boolean;
105
+ blendDst: THREE.BlendingDstFactor;
106
+ blendDstAlpha: number | null;
107
+ blendEquation: THREE.BlendingEquation;
108
+ blendEquationAlpha: number | null;
109
+ blending: THREE.Blending;
110
+ blendSrc: 210 | THREE.BlendingDstFactor;
111
+ blendSrcAlpha: number | null;
112
+ clipIntersection: boolean;
113
+ clippingPlanes: any;
114
+ clipShadows: boolean;
115
+ colorWrite: boolean;
116
+ depthFunc: THREE.DepthModes;
117
+ depthTest: boolean;
118
+ depthWrite: boolean;
119
+ id: number;
120
+ stencilWrite: boolean;
121
+ stencilFunc: THREE.StencilFunc;
122
+ stencilRef: number;
123
+ stencilWriteMask: number;
124
+ stencilFuncMask: number;
125
+ stencilFail: THREE.StencilOp;
126
+ stencilZFail: THREE.StencilOp;
127
+ stencilZPass: THREE.StencilOp;
128
+ readonly isMaterial: true;
129
+ name: string;
130
+ needsUpdate: boolean;
131
+ opacity: number;
132
+ polygonOffset: boolean;
133
+ polygonOffsetFactor: number;
134
+ polygonOffsetUnits: number;
135
+ precision: "highp" | "mediump" | "lowp" | null;
136
+ premultipliedAlpha: boolean;
137
+ forceSinglePass: boolean;
138
+ dithering: boolean;
139
+ side: THREE.Side;
140
+ shadowSide: THREE.Side | null;
141
+ toneMapped: boolean;
142
+ transparent: boolean;
143
+ uuid: string;
144
+ vertexColors: boolean;
145
+ visible: boolean;
146
+ userData: any;
147
+ version: number;
148
+ clone(): any;
149
+ copy(material: THREE.Material): any;
150
+ dispose(): void;
151
+ customProgramCacheKey(): string;
152
+ toJSON(meta?: any): any;
153
+ addEventListener<T extends string>(type: T, listener: THREE.EventListener<THREE.Event, T, any>): void;
154
+ hasEventListener<T_1 extends string>(type: T_1, listener: THREE.EventListener<THREE.Event, T_1, any>): boolean;
155
+ removeEventListener<T_2 extends string>(type: T_2, listener: THREE.EventListener<THREE.Event, T_2, any>): void;
156
+ dispatchEvent(event: THREE.Event): void;
157
+ };
158
+ };
18
159
  export declare function provideNgtsMeshDistortMaterialShader(distortShader: string): {
19
160
  provide: InjectionToken<MeshDistortMaterial>;
20
161
  useFactory: () => {
@@ -58,6 +199,9 @@ export declare function provideNgtsMeshDistortMaterialShader(distortShader: stri
58
199
  iridescence: number;
59
200
  iridescenceThicknessRange: [number, number];
60
201
  iridescenceThicknessMap: THREE.Texture | null;
202
+ anisotropy?: number | undefined;
203
+ anisotropyRotation?: number | undefined;
204
+ anisotropyMap?: THREE.Texture | null | undefined;
61
205
  color: THREE.Color;
62
206
  roughness: number;
63
207
  metalness: number;
@@ -90,6 +234,7 @@ export declare function provideNgtsMeshDistortMaterialShader(distortShader: stri
90
234
  fog: boolean;
91
235
  isMeshStandardMaterial: boolean;
92
236
  setValues(parameters: THREE.MeshStandardMaterialParameters): void;
237
+ alphaHash: boolean;
93
238
  alphaTest: number;
94
239
  alphaToCoverage: boolean;
95
240
  blendDst: THREE.BlendingDstFactor;
@@ -13,7 +13,7 @@ export declare class MeshTransmissionMaterial extends THREE.MeshPhysicalMaterial
13
13
  thicknessMap: Uniform<THREE.Texture | null>;
14
14
  attenuationDistance: Uniform<number>;
15
15
  attenuationColor: Uniform<THREE.Color>;
16
- anisotropy: Uniform<number>;
16
+ anisotropicBlur: Uniform<number>;
17
17
  time: Uniform<number>;
18
18
  distortion: Uniform<number>;
19
19
  distortionScale: Uniform<number>;
@@ -1,6 +1,6 @@
1
1
  import * as THREE from 'three';
2
- export declare function shaderMaterial(uniforms: {
2
+ export declare function shaderMaterial<Uniforms extends {
3
3
  [name: string]: THREE.CubeTexture | THREE.Texture | Int32Array | Float32Array | THREE.Matrix4 | THREE.Matrix3 | THREE.Quaternion | THREE.Vector4 | THREE.Vector3 | THREE.Vector2 | THREE.Color | number | boolean | Array<any> | null;
4
- }, vertexShader: string, fragmentShader: string, onInit?: (material?: THREE.ShaderMaterial) => void): typeof THREE.ShaderMaterial & {
4
+ }>(uniforms: Uniforms, vertexShader: string, fragmentShader: string, onInit?: (material?: THREE.ShaderMaterial) => void): typeof THREE.ShaderMaterial & {
5
5
  key: string;
6
6
  };
@@ -1,10 +1,19 @@
1
+ import type { NgtShaderMaterial } from 'angular-three';
1
2
  import * as THREE from 'three';
2
3
  export declare const SoftShadowMaterial: typeof THREE.ShaderMaterial & {
3
4
  key: string;
4
5
  };
5
- export interface SoftShadowMaterialInputs {
6
+ export type NgtSoftShadowMaterialState = {
6
7
  map: THREE.Texture;
7
8
  color?: THREE.ColorRepresentation;
8
9
  alphaTest?: number;
9
10
  blend?: number;
11
+ };
12
+ declare global {
13
+ interface HTMLElementTagNameMap {
14
+ /**
15
+ * @extends ngt-shader-material
16
+ */
17
+ 'ngt-soft-shadow-material': NgtSoftShadowMaterialState & NgtShaderMaterial;
18
+ }
10
19
  }
@@ -1,3 +1,17 @@
1
- export declare const SparklesMaterial: typeof import("three").ShaderMaterial & {
1
+ import type { NgtShaderMaterial } from 'angular-three';
2
+ import * as THREE from 'three';
3
+ export declare const SparklesMaterial: typeof THREE.ShaderMaterial & {
2
4
  key: string;
3
5
  };
6
+ export type NgtSparklesMaterialState = {
7
+ time?: number;
8
+ pixelRatio?: number;
9
+ };
10
+ declare global {
11
+ interface HTMLElementTagNameMap {
12
+ /**
13
+ * @extends ngt-shader-material
14
+ */
15
+ 'ngt-sparkles-material': NgtSparklesMaterialState & NgtShaderMaterial;
16
+ }
17
+ }
@@ -1,4 +1,13 @@
1
- import { ShaderMaterial } from 'three';
2
- export declare class SpotLightMaterial extends ShaderMaterial {
1
+ import type { NgtShaderMaterial } from 'angular-three';
2
+ import * as THREE from 'three';
3
+ export declare class SpotLightMaterial extends THREE.ShaderMaterial {
3
4
  constructor();
4
5
  }
6
+ declare global {
7
+ interface HTMLElementTagNameMap {
8
+ /**
9
+ * @extends ngt-shader-material
10
+ */
11
+ 'ngt-spot-light-material': NgtShaderMaterial;
12
+ }
13
+ }
@@ -1,3 +1,13 @@
1
- export declare const StarFieldMaterial: typeof import("three").ShaderMaterial & {
1
+ import type { NgtShaderMaterial } from 'angular-three';
2
+ import * as THREE from 'three';
3
+ export declare const StarFieldMaterial: typeof THREE.ShaderMaterial & {
2
4
  key: string;
3
5
  };
6
+ declare global {
7
+ interface HTMLElementTagNameMap {
8
+ /**
9
+ * @extends ngt-shader-material
10
+ */
11
+ 'ngt-star-field-material': NgtShaderMaterial;
12
+ }
13
+ }
@@ -0,0 +1,58 @@
1
+ import { type Injector } from '@angular/core';
2
+ import { type NgtShaderMaterial } from 'angular-three';
3
+ import * as THREE from 'three';
4
+ export type WireframeMaterialState = {
5
+ fillOpacity?: number;
6
+ fillMix?: number;
7
+ strokeOpacity?: number;
8
+ thickness?: number;
9
+ colorBackfaces?: boolean;
10
+ dashInvert?: boolean;
11
+ dash?: boolean;
12
+ dashRepeats?: number;
13
+ dashLength?: number;
14
+ squeeze?: boolean;
15
+ squeezeMin?: number;
16
+ squeezeMax?: number;
17
+ stroke?: THREE.ColorRepresentation;
18
+ backfaceStroke?: THREE.ColorRepresentation;
19
+ fill?: THREE.ColorRepresentation;
20
+ };
21
+ export declare const WireframeMaterialShaders: {
22
+ uniforms: {
23
+ strokeOpacity: number;
24
+ fillOpacity: number;
25
+ fillMix: number;
26
+ thickness: number;
27
+ colorBackfaces: boolean;
28
+ dashInvert: boolean;
29
+ dash: boolean;
30
+ dashRepeats: number;
31
+ dashLength: number;
32
+ squeeze: boolean;
33
+ squeezeMin: number;
34
+ squeezeMax: number;
35
+ stroke: THREE.Color;
36
+ backfaceStroke: THREE.Color;
37
+ fill: THREE.Color;
38
+ };
39
+ vertex: string;
40
+ fragment: string;
41
+ };
42
+ export declare const WireframeMaterial: typeof THREE.ShaderMaterial & {
43
+ key: string;
44
+ };
45
+ declare global {
46
+ interface HTMLElementTagNameMap {
47
+ /**
48
+ * @extends ngt-shader-material
49
+ */
50
+ 'ngt-wireframe-material': WireframeMaterialState & NgtShaderMaterial;
51
+ }
52
+ }
53
+ export declare function setWireframeOverride(material: THREE.Material, uniforms: {
54
+ [key: string]: THREE.IUniform<any>;
55
+ }): void;
56
+ export declare function injectNgtsWireframeUniforms(uniformsFactory: () => Record<string, THREE.IUniform<any>>, stateFactory: () => Partial<WireframeMaterialState>, { injector }?: {
57
+ injector?: Injector;
58
+ }): void;