@types/three 0.170.0 → 0.172.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 (197) hide show
  1. three/README.md +1 -1
  2. three/build/three.core.d.ts +1 -0
  3. three/build/three.core.min.d.ts +1 -0
  4. three/build/three.tsl.d.ts +1 -0
  5. three/build/three.tsl.min.d.ts +1 -0
  6. three/examples/jsm/Addons.d.ts +0 -5
  7. three/examples/jsm/controls/ArcballControls.d.ts +6 -1
  8. three/examples/jsm/controls/OrbitControls.d.ts +5 -0
  9. three/examples/jsm/controls/TransformControls.d.ts +1 -1
  10. three/examples/jsm/csm/CSMShadowNode.d.ts +2 -4
  11. three/examples/jsm/exporters/GLTFExporter.d.ts +23 -7
  12. three/examples/jsm/geometries/DecalGeometry.d.ts +1 -1
  13. three/examples/jsm/geometries/InstancedPointsGeometry.d.ts +13 -0
  14. three/examples/jsm/helpers/VertexNormalsHelper.d.ts +2 -0
  15. three/examples/jsm/lines/LineSegments2.d.ts +3 -1
  16. three/examples/jsm/materials/LDrawConditionalLineNodeMaterial.d.ts +1 -1
  17. three/examples/jsm/modifiers/CurveModifier.d.ts +1 -1
  18. three/examples/jsm/modifiers/CurveModifierGPU.d.ts +1 -1
  19. three/examples/jsm/objects/InstancedPoints.d.ts +10 -0
  20. three/examples/jsm/objects/SkyMesh.d.ts +2 -2
  21. three/examples/jsm/objects/Water2Mesh.d.ts +13 -2
  22. three/examples/jsm/objects/WaterMesh.d.ts +11 -2
  23. three/examples/jsm/postprocessing/OutlinePass.d.ts +1 -1
  24. three/examples/jsm/postprocessing/UnrealBloomPass.d.ts +1 -1
  25. three/examples/jsm/tsl/display/AfterImageNode.d.ts +2 -1
  26. three/examples/jsm/tsl/display/AnaglyphPassNode.d.ts +1 -1
  27. three/examples/jsm/tsl/display/AnamorphicNode.d.ts +2 -2
  28. three/examples/jsm/tsl/display/BleachBypass.d.ts +2 -1
  29. three/examples/jsm/tsl/display/BloomNode.d.ts +2 -1
  30. three/examples/jsm/tsl/display/DenoiseNode.d.ts +3 -4
  31. three/examples/jsm/tsl/display/DepthOfFieldNode.d.ts +2 -1
  32. three/examples/jsm/tsl/display/DotScreenNode.d.ts +2 -2
  33. three/examples/jsm/tsl/display/FXAANode.d.ts +2 -1
  34. three/examples/jsm/tsl/display/FilmNode.d.ts +2 -1
  35. three/examples/jsm/tsl/display/GTAONode.d.ts +5 -8
  36. three/examples/jsm/tsl/display/GaussianBlurNode.d.ts +2 -2
  37. three/examples/jsm/tsl/display/LensflareNode.d.ts +2 -2
  38. three/examples/jsm/tsl/display/Lut3DNode.d.ts +2 -2
  39. three/examples/jsm/tsl/display/MotionBlur.d.ts +2 -1
  40. three/examples/jsm/tsl/display/OutlineNode.d.ts +2 -2
  41. three/examples/jsm/tsl/display/ParallaxBarrierPassNode.d.ts +1 -1
  42. three/examples/jsm/tsl/display/PixelationPassNode.d.ts +2 -2
  43. three/examples/jsm/tsl/display/RGBShiftNode.d.ts +2 -1
  44. three/examples/jsm/tsl/display/SMAANode.d.ts +2 -1
  45. three/examples/jsm/tsl/display/SSAAPassNode.d.ts +2 -2
  46. three/examples/jsm/tsl/display/SSRNode.d.ts +2 -2
  47. three/examples/jsm/tsl/display/Sepia.d.ts +2 -1
  48. three/examples/jsm/tsl/display/SobelOperatorNode.d.ts +2 -1
  49. three/examples/jsm/tsl/display/StereoCompositePassNode.d.ts +1 -2
  50. three/examples/jsm/tsl/display/StereoPassNode.d.ts +2 -2
  51. three/examples/jsm/tsl/display/TRAAPassNode.d.ts +2 -2
  52. three/examples/jsm/tsl/display/TransitionNode.d.ts +2 -1
  53. three/examples/jsm/tsl/display/hashBlur.d.ts +2 -1
  54. three/examples/jsm/tsl/lighting/TiledLightsNode.d.ts +2 -1
  55. three/examples/jsm/utils/ShadowMapViewer.d.ts +2 -2
  56. three/package.json +4 -4
  57. three/src/Three.Core.d.ts +159 -0
  58. three/src/Three.TSL.d.ts +533 -0
  59. three/src/Three.WebGPU.Nodes.d.ts +14 -195
  60. three/src/Three.WebGPU.d.ts +14 -196
  61. three/src/Three.d.ts +2 -158
  62. three/src/animation/AnimationClip.d.ts +3 -1
  63. three/src/cameras/CubeCamera.d.ts +19 -2
  64. three/src/core/Clock.d.ts +4 -6
  65. three/src/core/InterleavedBuffer.d.ts +12 -0
  66. three/src/core/RenderTarget.d.ts +3 -5
  67. three/src/core/RenderTarget3D.d.ts +9 -0
  68. three/src/core/RenderTargetArray.d.ts +9 -0
  69. three/src/materials/Material.d.ts +9 -5
  70. three/src/materials/MeshDepthMaterial.d.ts +0 -5
  71. three/src/materials/MeshDistanceMaterial.d.ts +0 -5
  72. three/src/materials/nodes/Line2NodeMaterial.d.ts +1 -0
  73. three/src/materials/nodes/LineDashedNodeMaterial.d.ts +3 -0
  74. three/src/materials/nodes/MeshSSSNodeMaterial.d.ts +6 -6
  75. three/src/materials/nodes/NodeMaterial.d.ts +7 -1
  76. three/src/materials/nodes/manager/NodeMaterialObserver.d.ts +56 -0
  77. three/src/nodes/Nodes.d.ts +2 -7
  78. three/src/nodes/TSL.d.ts +10 -5
  79. three/src/nodes/accessors/Arrays.d.ts +7 -0
  80. three/src/nodes/accessors/BufferAttributeNode.d.ts +117 -0
  81. three/src/nodes/accessors/BufferNode.d.ts +4 -4
  82. three/src/nodes/accessors/BuiltinNode.d.ts +14 -0
  83. three/src/nodes/accessors/ClippingNode.d.ts +6 -0
  84. three/src/nodes/accessors/InstanceNode.d.ts +15 -3
  85. three/src/nodes/accessors/InstancedMeshNode.d.ts +11 -0
  86. three/src/nodes/accessors/Lights.d.ts +15 -0
  87. three/src/nodes/accessors/MaterialNode.d.ts +3 -3
  88. three/src/nodes/accessors/ModelNode.d.ts +10 -2
  89. three/src/nodes/accessors/ModelViewProjectionNode.d.ts +2 -6
  90. three/src/nodes/accessors/StorageBufferNode.d.ts +25 -12
  91. three/src/nodes/accessors/StorageTextureNode.d.ts +5 -3
  92. three/src/nodes/accessors/TextureNode.d.ts +5 -0
  93. three/src/nodes/accessors/UniformArrayNode.d.ts +3 -2
  94. three/src/nodes/core/IndexNode.d.ts +2 -0
  95. three/src/nodes/core/Node.d.ts +237 -0
  96. three/src/nodes/core/NodeAttribute.d.ts +13 -0
  97. three/src/nodes/core/NodeBuilder.d.ts +1 -2
  98. three/src/nodes/core/NodeCache.d.ts +21 -0
  99. three/src/nodes/core/NodeParser.d.ts +11 -0
  100. three/src/nodes/core/NodeUniform.d.ts +28 -0
  101. three/src/nodes/core/NodeUtils.d.ts +7 -0
  102. three/src/nodes/core/NodeVar.d.ts +12 -0
  103. three/src/nodes/core/NodeVarying.d.ts +14 -0
  104. three/src/nodes/core/StackNode.d.ts +6 -1
  105. three/src/nodes/core/StructTypeNode.d.ts +19 -1
  106. three/src/nodes/core/UniformNode.d.ts +44 -0
  107. three/src/nodes/core/VaryingNode.d.ts +3 -0
  108. three/src/nodes/core/constants.d.ts +41 -0
  109. three/src/nodes/display/BlendModes.d.ts +32 -0
  110. three/src/nodes/display/PassNode.d.ts +1 -1
  111. three/src/nodes/display/ScreenNode.d.ts +5 -0
  112. three/src/nodes/display/ViewportDepthNode.d.ts +3 -1
  113. three/src/nodes/fog/Fog.d.ts +26 -0
  114. three/src/nodes/gpgpu/AtomicFunctionNode.d.ts +88 -0
  115. three/src/nodes/gpgpu/BarrierNode.d.ts +12 -0
  116. three/src/nodes/gpgpu/ComputeBuiltinNode.d.ts +13 -0
  117. three/src/nodes/gpgpu/ComputeNode.d.ts +6 -1
  118. three/src/nodes/gpgpu/WorkgroupInfoNode.d.ts +19 -0
  119. three/src/nodes/lighting/AnalyticLightNode.d.ts +11 -0
  120. three/src/nodes/lighting/LightsNode.d.ts +2 -2
  121. three/src/nodes/lighting/PointLightNode.d.ts +3 -0
  122. three/src/nodes/lighting/PointShadowNode.d.ts +30 -0
  123. three/src/nodes/lighting/ShadowBaseNode.d.ts +15 -0
  124. three/src/nodes/lighting/ShadowNode.d.ts +28 -4
  125. three/src/nodes/math/MathNode.d.ts +13 -4
  126. three/src/nodes/math/OperatorNode.d.ts +3 -0
  127. three/src/nodes/tsl/TSLBase.d.ts +5 -0
  128. three/src/nodes/tsl/TSLCore.d.ts +51 -16
  129. three/src/nodes/utils/EquirectUVNode.d.ts +2 -2
  130. three/src/nodes/utils/LoopNode.d.ts +23 -2
  131. three/src/nodes/utils/SplitNode.d.ts +1 -1
  132. three/src/objects/BatchedMesh.d.ts +4 -4
  133. three/src/objects/ClippingGroup.d.ts +41 -0
  134. three/src/renderers/WebGLRenderer.d.ts +10 -8
  135. three/src/renderers/common/Animation.d.ts +41 -4
  136. three/src/renderers/common/Attributes.d.ts +31 -0
  137. three/src/renderers/common/Backend.d.ts +11 -0
  138. three/src/renderers/common/Background.d.ts +22 -0
  139. three/src/renderers/common/BindGroup.d.ts +15 -0
  140. three/src/renderers/common/Binding.d.ts +24 -0
  141. three/src/renderers/common/Bindings.d.ts +54 -0
  142. three/src/renderers/common/Buffer.d.ts +31 -0
  143. three/src/renderers/common/BufferUtils.d.ts +26 -0
  144. three/src/renderers/common/BundleGroup.d.ts +22 -0
  145. three/src/renderers/common/ChainMap.d.ts +31 -1
  146. three/src/renderers/common/ClippingContext.d.ts +61 -14
  147. three/src/renderers/common/Color4.d.ts +36 -0
  148. three/src/renderers/common/ComputePipeline.d.ts +12 -0
  149. three/src/renderers/common/CubeRenderTarget.d.ts +13 -0
  150. three/src/renderers/common/DataMap.d.ts +30 -0
  151. three/src/renderers/common/Geometries.d.ts +52 -0
  152. three/src/renderers/common/Info.d.ts +27 -0
  153. three/src/renderers/common/Pipeline.d.ts +11 -0
  154. three/src/renderers/common/Pipelines.d.ts +104 -0
  155. three/src/renderers/common/ProgrammableStage.d.ts +19 -1
  156. three/src/renderers/common/RenderBundle.d.ts +15 -4
  157. three/src/renderers/common/RenderBundles.d.ts +20 -2
  158. three/src/renderers/common/RenderContext.d.ts +22 -0
  159. three/src/renderers/common/RenderContexts.d.ts +42 -3
  160. three/src/renderers/common/RenderList.d.ts +90 -0
  161. three/src/renderers/common/RenderLists.d.ts +21 -0
  162. three/src/renderers/common/RenderObject.d.ts +160 -5
  163. three/src/renderers/common/RenderObjects.d.ts +56 -0
  164. three/src/renderers/common/RenderPipeline.d.ts +13 -0
  165. three/src/renderers/common/Renderer.d.ts +596 -6
  166. three/src/renderers/common/{PostProcessingUtils.d.ts → RendererUtils.d.ts} +16 -4
  167. three/src/renderers/common/StorageBufferAttribute.d.ts +1 -1
  168. three/src/renderers/common/Textures.d.ts +66 -0
  169. three/src/renderers/common/Uniform.d.ts +106 -0
  170. three/src/renderers/common/UniformBuffer.d.ts +12 -0
  171. three/src/renderers/common/UniformsGroup.d.ts +104 -0
  172. three/src/renderers/common/extras/PMREMGenerator.d.ts +15 -1
  173. three/src/renderers/common/nodes/NodeBuilderState.d.ts +30 -0
  174. three/src/renderers/common/nodes/NodeLibrary.d.ts +73 -4
  175. three/src/renderers/common/nodes/NodeUniform.d.ts +161 -0
  176. three/src/renderers/common/nodes/NodeUniformsGroup.d.ts +14 -2
  177. three/src/renderers/common/nodes/Nodes.d.ts +185 -11
  178. three/src/renderers/webgl/WebGLState.d.ts +1 -1
  179. three/src/renderers/webgpu/nodes/BasicNodeLibrary.d.ts +10 -0
  180. three/src/renderers/webgpu/nodes/StandardNodeLibrary.d.ts +11 -0
  181. three/src/textures/Data3DTexture.d.ts +4 -2
  182. three/src/textures/DataArrayTexture.d.ts +1 -1
  183. three/src/textures/DataTexture.d.ts +7 -2
  184. three/src/textures/Texture.d.ts +3 -0
  185. three/examples/jsm/animation/MMDAnimationHelper.d.ts +0 -99
  186. three/examples/jsm/animation/MMDPhysics.d.ts +0 -128
  187. three/examples/jsm/exporters/MMDExporter.d.ts +0 -11
  188. three/examples/jsm/loaders/MMDLoader.d.ts +0 -60
  189. three/examples/jsm/shaders/MMDToonShader.d.ts +0 -15
  190. three/src/Three.Legacy.d.ts +0 -20
  191. three/src/nodes/core/UniformGroup.d.ts +0 -7
  192. three/src/nodes/display/BlendMode.d.ts +0 -10
  193. three/src/nodes/fog/FogExp2Node.d.ts +0 -14
  194. three/src/nodes/fog/FogNode.d.ts +0 -20
  195. three/src/nodes/fog/FogRangeNode.d.ts +0 -19
  196. three/src/nodes/lighting/LightNode.d.ts +0 -18
  197. three/src/textures/types.d.ts +0 -9
three/README.md CHANGED
@@ -8,7 +8,7 @@ This package contains type definitions for three (https://threejs.org/).
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/three.
9
9
 
10
10
  ### Additional Details
11
- * Last updated: Tue, 12 Nov 2024 10:02:27 GMT
11
+ * Last updated: Mon, 06 Jan 2025 09:02:31 GMT
12
12
  * Dependencies: [@tweenjs/tween.js](https://npmjs.com/package/@tweenjs/tween.js), [@types/stats.js](https://npmjs.com/package/@types/stats.js), [@types/webxr](https://npmjs.com/package/@types/webxr), [@webgpu/types](https://npmjs.com/package/@webgpu/types), [fflate](https://npmjs.com/package/fflate), [meshoptimizer](https://npmjs.com/package/meshoptimizer)
13
13
 
14
14
  # Credits
@@ -0,0 +1 @@
1
+ export * from "../src/Three.Core.js";
@@ -0,0 +1 @@
1
+ export * from "../src/Three.Core.js";
@@ -0,0 +1 @@
1
+ export * from "../src/Three.TSL.js";
@@ -0,0 +1 @@
1
+ export * from "../src/Three.TSL.js";
@@ -1,7 +1,5 @@
1
1
  export * from "./animation/AnimationClipCreator.js";
2
2
  export * from "./animation/CCDIKSolver.js";
3
- export * from "./animation/MMDAnimationHelper.js";
4
- export * from "./animation/MMDPhysics.js";
5
3
 
6
4
  export { default as WebGL } from "./capabilities/WebGL.js";
7
5
 
@@ -40,7 +38,6 @@ export * from "./exporters/DRACOExporter.js";
40
38
  export * from "./exporters/EXRExporter.js";
41
39
  export * from "./exporters/GLTFExporter.js";
42
40
  export * from "./exporters/KTX2Exporter.js";
43
- export * from "./exporters/MMDExporter.js";
44
41
  export * from "./exporters/OBJExporter.js";
45
42
  export * from "./exporters/PLYExporter.js";
46
43
  export * from "./exporters/STLExporter.js";
@@ -104,7 +101,6 @@ export * from "./loaders/LUTCubeLoader.js";
104
101
  export * from "./loaders/LWOLoader.js";
105
102
  export * from "./loaders/MD2Loader.js";
106
103
  export * from "./loaders/MDDLoader.js";
107
- export * from "./loaders/MMDLoader.js";
108
104
  export * from "./loaders/MTLLoader.js";
109
105
  export * from "./loaders/NRRDLoader.js";
110
106
  export * from "./loaders/OBJLoader.js";
@@ -241,7 +237,6 @@ export * from "./shaders/KaleidoShader.js";
241
237
  export * from "./shaders/LuminosityHighPassShader.js";
242
238
  export * from "./shaders/LuminosityShader.js";
243
239
  export * from "./shaders/MirrorShader.js";
244
- export * from "./shaders/MMDToonShader.js";
245
240
  export * from "./shaders/NormalMapShader.js";
246
241
  export * from "./shaders/OutputShader.js";
247
242
  export * from "./shaders/RGBShiftShader.js";
@@ -69,6 +69,11 @@ declare class ArcballControls extends Controls<ArcballControlsEventMap> {
69
69
  */
70
70
  enableAnimations: boolean;
71
71
 
72
+ /**
73
+ * Enable or disable camera focusing on double-tap (or click) operations. Default is true.
74
+ */
75
+ enableFocus: boolean;
76
+
72
77
  /**
73
78
  * When set to true, a grid will appear when panning operation is being performed (desktop interaction only). Default is false.
74
79
  */
@@ -163,7 +168,7 @@ declare class ArcballControls extends Controls<ArcballControlsEventMap> {
163
168
  setGizmosVisible(value: boolean): void;
164
169
 
165
170
  /**
166
- * Update the `radiusFactor` value, redraw the gizmo and send a `changeEvent` to visualise the changes.
171
+ * Update the `radiusFactor` value, redraw the gizmo and send a `changeEvent` to visualize the changes.
167
172
  */
168
173
  setTbRadius(value: number): void;
169
174
 
@@ -121,6 +121,11 @@ declare class OrbitControls extends Controls<OrbitControlsEventMap> {
121
121
  */
122
122
  rotateSpeed: number;
123
123
 
124
+ /**
125
+ * How fast to rotate the camera when the keyboard is used. Default is 1.
126
+ */
127
+ keyRotateSpeed: number;
128
+
124
129
  /**
125
130
  * Enable or disable camera panning. Default is true.
126
131
  */
@@ -1,6 +1,6 @@
1
1
  import { Camera, Controls, Mesh, Object3D, Quaternion, Raycaster, Vector3 } from "three";
2
2
 
3
- type TransformControlsMode = "translate" | "rotate" | "scale";
3
+ export type TransformControlsMode = "translate" | "rotate" | "scale";
4
4
 
5
5
  export interface TransformControlsEventMap {
6
6
  /**
@@ -1,5 +1,4 @@
1
- import { Camera, DirectionalLightShadow, Light, Object3D } from "three";
2
- import { Node } from "three/tsl";
1
+ import { Camera, DirectionalLightShadow, Light, Object3D, ShadowBaseNode } from "three/webgpu";
3
2
  import { CSMFrustum } from "./CSMFrustum.js";
4
3
 
5
4
  export type CSMShadowNodeMode = "uniform" | "logarithmic" | "practical" | "custom";
@@ -21,8 +20,7 @@ declare class LwLight extends Object3D {
21
20
  constructor();
22
21
  }
23
22
 
24
- declare class CSMShadowNode extends Node {
25
- light: Light;
23
+ declare class CSMShadowNode extends ShadowBaseNode {
26
24
  camera: Camera | null;
27
25
  cascades: number;
28
26
  maxFar: number;
@@ -87,7 +87,7 @@ declare class GLTFExporter {
87
87
  */
88
88
  parse(
89
89
  input: Object3D | Object3D[],
90
- onDone: (gltf: ArrayBuffer | { [key: string]: any }) => void,
90
+ onDone: (gltf: ArrayBuffer | { [key: string]: unknown }) => void,
91
91
  onError: (error: ErrorEvent) => void,
92
92
  options?: GLTFExporterOptions,
93
93
  ): void;
@@ -101,18 +101,34 @@ declare class GLTFExporter {
101
101
  parseAsync(
102
102
  input: Object3D | Object3D[],
103
103
  options?: GLTFExporterOptions,
104
- ): Promise<ArrayBuffer | { [key: string]: any }>;
104
+ ): Promise<ArrayBuffer | { [key: string]: unknown }>;
105
105
  }
106
106
 
107
107
  declare class GLTFWriter {
108
108
  textureUtils: TextureUtils | null;
109
109
 
110
+ extensionsUsed: { [name: string]: boolean };
111
+ extensionsRequired: { [name: string]: boolean };
112
+
110
113
  constructor();
111
114
 
112
115
  setPlugins(plugins: GLTFExporterPlugin[]): void;
113
116
 
114
117
  setTextureUtils(utils: TextureUtils | null): this;
115
118
 
119
+ /**
120
+ * Process texture
121
+ * @param map Map to process
122
+ * @return Index of the processed texture in the "textures" array
123
+ */
124
+ processTextureAsync(map: Texture): Promise<number>;
125
+
126
+ /**
127
+ * Applies a texture transform, if present, to the map definition. Requires
128
+ * the KHR_texture_transform extension.
129
+ */
130
+ applyTextureTransform(mapDef: { [key: string]: unknown }, texture: Texture): void;
131
+
116
132
  /**
117
133
  * Parse scenes and generate GLTF output
118
134
  *
@@ -122,16 +138,16 @@ declare class GLTFWriter {
122
138
  */
123
139
  writeAsync(
124
140
  input: Object3D | Object3D[],
125
- onDone: (gltf: ArrayBuffer | { [key: string]: any }) => void,
141
+ onDone: (gltf: ArrayBuffer | { [key: string]: unknown }) => void,
126
142
  options?: GLTFExporterOptions,
127
143
  ): Promise<void>;
128
144
  }
129
145
 
130
146
  export interface GLTFExporterPlugin {
131
- writeTexture?: (map: Texture, textureDef: { [key: string]: any }) => void;
132
- writeMaterial?: (material: Material, materialDef: { [key: string]: any }) => void;
133
- writeMesh?: (mesh: Mesh, meshDef: { [key: string]: any }) => void;
134
- writeNode?: (object: Object3D, nodeDef: { [key: string]: any }) => void;
147
+ writeTexture?: (map: Texture, textureDef: { [key: string]: unknown }) => void;
148
+ writeMaterialAsync?: (material: Material, materialDef: { [key: string]: unknown }) => Promise<void>;
149
+ writeMesh?: (mesh: Mesh, meshDef: { [key: string]: unknown }) => void;
150
+ writeNode?: (object: Object3D, nodeDef: { [key: string]: unknown }) => void;
135
151
  beforeParse?: (input: Object3D | Object3D[]) => void;
136
152
  afterParse?: (input: Object3D | Object3D[]) => void;
137
153
  }
@@ -1,7 +1,7 @@
1
1
  import { BufferGeometry, Euler, Mesh, Vector3 } from "three";
2
2
 
3
3
  declare class DecalGeometry extends BufferGeometry {
4
- constructor(mesh: Mesh, position: Vector3, orientation: Euler, size: Vector3);
4
+ constructor(mesh?: Mesh, position?: Vector3, orientation?: Euler, size?: Vector3);
5
5
  }
6
6
 
7
7
  declare class DecalVertex {
@@ -0,0 +1,13 @@
1
+ import { InstancedBufferGeometry } from "three";
2
+
3
+ declare class InstancedPointsGeometry extends InstancedBufferGeometry {
4
+ readonly isInstancedPointsGeometry: true;
5
+
6
+ constructor();
7
+
8
+ setPositions(array: Float32Array | ArrayLike<number>): this;
9
+
10
+ setColors(array: Float32Array | ArrayLike<number>): this;
11
+ }
12
+
13
+ export default InstancedPointsGeometry;
@@ -1,6 +1,8 @@
1
1
  import { LineSegments, Object3D } from "three";
2
2
 
3
3
  export class VertexNormalsHelper extends LineSegments {
4
+ readonly isVertexNormalsHelper: true;
5
+
4
6
  constructor(object: Object3D, size?: number, hex?: number);
5
7
 
6
8
  object: Object3D;
@@ -1,4 +1,4 @@
1
- import { Mesh, WebGLRenderer } from "three";
1
+ import { Mesh, Vector2, WebGLRenderer } from "three";
2
2
 
3
3
  import { LineMaterial } from "./LineMaterial.js";
4
4
  import { LineSegmentsGeometry } from "./LineSegmentsGeometry.js";
@@ -18,6 +18,8 @@ export class LineSegments2 extends Mesh {
18
18
  */
19
19
  readonly isLineSegments2: true;
20
20
 
21
+ resolution: Vector2;
22
+
21
23
  /**
22
24
  * @param geometry (optional) Pair(s) of vertices representing each line segment.
23
25
  * @param material (optional) Material for the line. Default is a {@link LineMaterial} with random color.
@@ -1,4 +1,4 @@
1
- import { NodeMaterial, NodeMaterialParameters } from "three/tsl";
1
+ import { NodeMaterial, NodeMaterialParameters } from "three/webgpu";
2
2
 
3
3
  declare class LDrawConditionalLineMaterial extends NodeMaterial {
4
4
  readonly isLDrawConditionalLineMaterial: true;
@@ -20,7 +20,7 @@ export class Flow {
20
20
  curveLengthArray: number[];
21
21
 
22
22
  object3D: Mesh;
23
- splineTexure: DataTexture;
23
+ splineTexture: DataTexture;
24
24
  uniforms: SplineUniform;
25
25
 
26
26
  constructor(mesh: Mesh, numberOfCurves?: number);
@@ -21,7 +21,7 @@ export class Flow {
21
21
  curveLengthArray: number[];
22
22
 
23
23
  object3D: Mesh;
24
- splineTexure: DataTexture;
24
+ splineTexture: DataTexture;
25
25
  uniforms: SplineUniform;
26
26
 
27
27
  constructor(mesh: Mesh, numberOfCurves?: number);
@@ -0,0 +1,10 @@
1
+ import { InstancedPointsNodeMaterial, Mesh } from "three/webgpu";
2
+ import InstancedPointsGeometry from "../geometries/InstancedPointsGeometry.js";
3
+
4
+ declare class InstancedPoints extends Mesh<InstancedPointsGeometry, InstancedPointsNodeMaterial> {
5
+ readonly isInstancedPoints: true;
6
+
7
+ constructor(geometry?: InstancedPointsGeometry, material?: InstancedPointsNodeMaterial);
8
+ }
9
+
10
+ export default InstancedPoints;
@@ -1,5 +1,5 @@
1
- import { ShaderNodeObject, UniformNode } from "three/tsl";
2
- import { BoxGeometry, Mesh, NodeMaterial, Vector3 } from "three/webgpu";
1
+ import { ShaderNodeObject } from "three/tsl";
2
+ import { BoxGeometry, Mesh, NodeMaterial, UniformNode, Vector3 } from "three/webgpu";
3
3
 
4
4
  declare class SkyMesh extends Mesh<BoxGeometry, NodeMaterial> {
5
5
  turbidity: ShaderNodeObject<UniformNode<number>>;
@@ -1,5 +1,16 @@
1
- import { TempNode, TextureNode, UniformNode, Vector2, Vector3 } from "three/tsl";
2
- import { BufferGeometry, Color, ColorRepresentation, Mesh, NodeMaterial, Texture } from "three/webgpu";
1
+ import {
2
+ BufferGeometry,
3
+ Color,
4
+ ColorRepresentation,
5
+ Mesh,
6
+ NodeMaterial,
7
+ TempNode,
8
+ Texture,
9
+ TextureNode,
10
+ UniformNode,
11
+ Vector2,
12
+ Vector3,
13
+ } from "three/webgpu";
3
14
 
4
15
  export interface WaterMeshOptions {
5
16
  normalMap0: Texture;
@@ -1,5 +1,14 @@
1
- import { TextureNode, UniformNode } from "three/tsl";
2
- import { BufferGeometry, Color, ColorRepresentation, Mesh, NodeMaterial, Texture, Vector3 } from "three/webgpu";
1
+ import {
2
+ BufferGeometry,
3
+ Color,
4
+ ColorRepresentation,
5
+ Mesh,
6
+ NodeMaterial,
7
+ Texture,
8
+ TextureNode,
9
+ UniformNode,
10
+ Vector3,
11
+ } from "three/webgpu";
3
12
 
4
13
  export interface WaterMeshOptions {
5
14
  resolution?: number | undefined;
@@ -59,6 +59,6 @@ export class OutlinePass extends Pass {
59
59
  updateTextureMatrix(): void;
60
60
  getPrepareMaskMaterial(): ShaderMaterial;
61
61
  getEdgeDetectionMaterial(): ShaderMaterial;
62
- getSeperableBlurMaterial(): ShaderMaterial;
62
+ getSeparableBlurMaterial(): ShaderMaterial;
63
63
  getOverlayMaterial(): ShaderMaterial;
64
64
  }
@@ -26,6 +26,6 @@ export class UnrealBloomPass extends Pass {
26
26
  fsQuad: FullScreenQuad;
27
27
 
28
28
  dispose(): void;
29
- getSeperableBlurMaterial(): ShaderMaterial;
29
+ getSeparableBlurMaterial(): ShaderMaterial;
30
30
  getCompositeMaterial(): ShaderMaterial;
31
31
  }
@@ -1,4 +1,5 @@
1
- import { Node, ShaderNodeObject, TempNode, TextureNode, UniformNode } from "three/tsl";
1
+ import { ShaderNodeObject } from "three/tsl";
2
+ import { Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
2
3
 
3
4
  export default class AfterImageNode extends TempNode {
4
5
  textureNode: TextureNode;
@@ -1,5 +1,5 @@
1
- import { Camera, Scene } from "three";
2
1
  import { ShaderNodeObject } from "three/tsl";
2
+ import { Camera, Scene } from "three/webgpu";
3
3
  import StereoCompositePassNode from "./StereoCompositePassNode.js";
4
4
 
5
5
  declare class AnaglyphPassNode extends StereoCompositePassNode {
@@ -1,5 +1,5 @@
1
- import { Vector2 } from "three";
2
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node, TempNode, Vector2 } from "three/webgpu";
3
3
 
4
4
  export default class AnamorphicNode extends TempNode {
5
5
  textureNode: Node;
@@ -1,3 +1,4 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node } from "three/webgpu";
2
3
 
3
4
  export const bleach: (color: NodeRepresentation, opacity?: number) => ShaderNodeObject<Node>;
@@ -1,4 +1,5 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, TextureNode, UniformNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
2
3
 
3
4
  declare class BloomNode extends TempNode {
4
5
  inputNode: Node;
@@ -1,13 +1,13 @@
1
- import { Camera, Matrix4 } from "three";
2
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, UniformNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Camera, Node, TempNode, UniformNode } from "three/webgpu";
3
3
 
4
4
  declare class DenoiseNode extends TempNode {
5
5
  textureNode: Node;
6
6
  depthNode: Node;
7
7
  normalNode: Node;
8
+
8
9
  noiseNode: Node;
9
10
 
10
- cameraProjectionMatrixInversion: UniformNode<Matrix4>;
11
11
  lumaPhi: UniformNode<number>;
12
12
  depthPhi: UniformNode<number>;
13
13
  normalPhi: UniformNode<number>;
@@ -23,6 +23,5 @@ export const denoise: (
23
23
  node: NodeRepresentation,
24
24
  depthNode: NodeRepresentation,
25
25
  normalNode: NodeRepresentation,
26
- noiseNode: NodeRepresentation,
27
26
  camera: Camera,
28
27
  ) => ShaderNodeObject<DenoiseNode>;
@@ -1,4 +1,5 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, TextureNode, UniformNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
2
3
 
3
4
  declare class DepthOfFieldNode extends TempNode {
4
5
  textureNode: TextureNode;
@@ -1,5 +1,5 @@
1
- import { Vector2 } from "three";
2
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, UniformNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node, TempNode, UniformNode, Vector2 } from "three/webgpu";
3
3
 
4
4
  declare class DotScreenNode extends TempNode {
5
5
  inputNode: Node;
@@ -1,4 +1,5 @@
1
- import { NodeRepresentation, ShaderNodeObject, TempNode, TextureNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { TempNode, TextureNode } from "three/webgpu";
2
3
 
3
4
  declare class FXAANode extends TempNode {
4
5
  textureNode: TextureNode;
@@ -1,4 +1,5 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node, TempNode } from "three/webgpu";
2
3
 
3
4
  declare class FilmNode extends TempNode {
4
5
  inputNode: Node;
@@ -1,22 +1,19 @@
1
- import { Camera, Matrix4, Vector2 } from "three";
2
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, TextureNode, UniformNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Camera, Node, TempNode, TextureNode, UniformNode, Vector2 } from "three/webgpu";
3
3
 
4
4
  declare class GTAONode extends TempNode {
5
5
  depthNode: Node;
6
6
  normalNode: Node;
7
7
 
8
+ resolutionScale: number;
9
+
8
10
  radius: ShaderNodeObject<UniformNode<number>>;
9
11
  resolution: ShaderNodeObject<UniformNode<Vector2>>;
10
12
  thickness: ShaderNodeObject<UniformNode<number>>;
11
13
  distanceExponent: ShaderNodeObject<UniformNode<number>>;
12
14
  distanceFallOff: ShaderNodeObject<UniformNode<number>>;
13
15
  scale: ShaderNodeObject<UniformNode<number>>;
14
- noiseNode: ShaderNodeObject<TextureNode>;
15
-
16
- cameraProjectionMatrix: ShaderNodeObject<UniformNode<Matrix4>>;
17
- cameraProjectionMatrixInverse: ShaderNodeObject<UniformNode<Matrix4>>;
18
-
19
- SAMPLES: ShaderNodeObject<UniformNode<number>>;
16
+ samples: ShaderNodeObject<UniformNode<number>>;
20
17
 
21
18
  constructor(depthNode: Node, normalNode: Node, camera: Camera);
22
19
 
@@ -1,5 +1,5 @@
1
- import { Vector2 } from "three";
2
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, TextureNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node, TempNode, TextureNode, Vector2 } from "three/webgpu";
3
3
 
4
4
  declare class GaussianBlurNode extends TempNode {
5
5
  textureNode: TextureNode;
@@ -1,5 +1,5 @@
1
- import { Vector3 } from "three";
2
- import { NodeRepresentation, ShaderNodeObject, TempNode, TextureNode, UniformNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { TempNode, TextureNode, UniformNode, Vector3 } from "three/webgpu";
3
3
 
4
4
  interface LensflareNodeParams {
5
5
  ghostTint?: NodeRepresentation | undefined;
@@ -1,5 +1,5 @@
1
- import { Data3DTexture } from "three";
2
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, Texture3DNode, UniformNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Data3DTexture, Node, TempNode, Texture3DNode, UniformNode } from "three/webgpu";
3
3
 
4
4
  declare class Lut3DNode extends TempNode {
5
5
  inputNode: Node;
@@ -1,4 +1,5 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node } from "three/webgpu";
2
3
 
3
4
  export const motionBlur: (
4
5
  inputNode: NodeRepresentation,
@@ -1,5 +1,5 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, TextureNode, UniformNode } from "three/tsl";
2
- import { Camera, Object3D, Scene } from "three/webgpu";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Camera, Node, Object3D, Scene, TempNode, TextureNode, UniformNode } from "three/webgpu";
3
3
 
4
4
  export interface OutlineNodeParams {
5
5
  selectedObjects?: Object3D[] | undefined;
@@ -1,5 +1,5 @@
1
- import { Camera, Scene } from "three";
2
1
  import { ShaderNodeObject } from "three/tsl";
2
+ import { Camera, Scene } from "three/webgpu";
3
3
  import StereoCompositePassNode from "./StereoCompositePassNode.js";
4
4
 
5
5
  declare class ParallaxBarrierPassNode extends StereoCompositePassNode {
@@ -1,5 +1,5 @@
1
- import { Camera, Scene } from "three";
2
- import { PassNode, ShaderNodeObject, UniformNode } from "three/tsl";
1
+ import { ShaderNodeObject } from "three/tsl";
2
+ import { Camera, PassNode, Scene, UniformNode } from "three/webgpu";
3
3
 
4
4
  declare class PixelationPassNode extends PassNode {
5
5
  pixelSize: UniformNode<number>;
@@ -1,4 +1,5 @@
1
- import { NodeRepresentation, ShaderNodeObject, TempNode, TextureNode, UniformNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { TempNode, TextureNode, UniformNode } from "three/webgpu";
2
3
 
3
4
  export default class RGBShiftNode extends TempNode {
4
5
  textureNode: TextureNode;
@@ -1,4 +1,5 @@
1
- import { NodeRepresentation, ShaderNodeObject, TempNode, TextureNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { TempNode, TextureNode } from "three/webgpu";
2
3
 
3
4
  declare class SMAANode extends TempNode {
4
5
  textureNode: TextureNode;
@@ -1,5 +1,5 @@
1
- import { Camera, Color, RenderTarget, Scene } from "three";
2
- import { PassNode, ShaderNodeObject, UniformNode } from "three/tsl";
1
+ import { ShaderNodeObject } from "three/tsl";
2
+ import { Camera, Color, PassNode, RenderTarget, Scene, UniformNode } from "three/webgpu";
3
3
 
4
4
  declare class SSAAPassNode extends PassNode {
5
5
  readonly isSSAAPassNode: boolean;
@@ -1,5 +1,5 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, TextureNode, UniformNode } from "three/tsl";
2
- import { Camera } from "three/webgpu";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Camera, Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
3
3
 
4
4
  declare class SSRNode extends TempNode {
5
5
  colorNode: ShaderNodeObject<Node>;
@@ -1,3 +1,4 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node } from "three/webgpu";
2
3
 
3
4
  export const sepia: (color: NodeRepresentation) => ShaderNodeObject<Node>;
@@ -1,4 +1,5 @@
1
- import { NodeRepresentation, ShaderNodeObject, TempNode, TextureNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { TempNode, TextureNode } from "three/webgpu";
2
3
 
3
4
  declare class SobelOperatorNode extends TempNode {
4
5
  textureNode: TextureNode;
@@ -1,5 +1,4 @@
1
- import { Camera, CoordinateSystem, Scene, StereoCamera } from "three";
2
- import { PassNode } from "three/tsl";
1
+ import { Camera, CoordinateSystem, PassNode, Scene, StereoCamera } from "three/webgpu";
3
2
 
4
3
  declare class StereoCompositePassNode extends PassNode {
5
4
  readonly isStereoCompositePassNode: true;
@@ -1,5 +1,5 @@
1
- import { Camera, Scene, StereoCamera } from "three";
2
- import { PassNode, ShaderNodeObject } from "three/tsl";
1
+ import { ShaderNodeObject } from "three/tsl";
2
+ import { Camera, PassNode, Scene, StereoCamera } from "three/webgpu";
3
3
 
4
4
  declare class StereoPassNode extends PassNode {
5
5
  readonly isStereoPassNode: true;
@@ -1,5 +1,5 @@
1
- import { Camera, ColorRepresentation, Scene } from "three";
2
- import { PassNode, ShaderNodeObject } from "three/tsl";
1
+ import { ShaderNodeObject } from "three/tsl";
2
+ import { Camera, ColorRepresentation, PassNode, Scene } from "three/webgpu";
3
3
 
4
4
  declare class TRAAPassNode extends PassNode {
5
5
  readonly isTRAAPassNode: true;
@@ -1,4 +1,5 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject, TempNode, TextureNode, UniformNode } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
2
3
 
3
4
  declare class TransitionNode extends TempNode {
4
5
  textureNodeA: TextureNode;
@@ -1,4 +1,5 @@
1
- import { Node, NodeRepresentation, ShaderNodeObject } from "three/tsl";
1
+ import { NodeRepresentation, ShaderNodeObject } from "three/tsl";
2
+ import { Node } from "three/webgpu";
2
3
 
3
4
  export const hashBlur: (
4
5
  textureNode: NodeRepresentation,