@types/three 0.164.1 → 0.165.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.
- three/README.md +1 -1
- three/examples/jsm/controls/TransformControls.d.ts +8 -6
- three/examples/jsm/exporters/USDZExporter.d.ts +4 -2
- three/examples/jsm/loaders/FontLoader.d.ts +1 -1
- three/examples/jsm/loaders/GLTFLoader.d.ts +9 -6
- three/examples/jsm/loaders/LDrawLoader.d.ts +1 -1
- three/examples/jsm/modifiers/EdgeSplitModifier.d.ts +17 -10
- three/examples/jsm/nodes/Nodes.d.ts +11 -54
- three/examples/jsm/nodes/accessors/BitangentNode.d.ts +4 -22
- three/examples/jsm/nodes/accessors/BufferAttributeNode.d.ts +49 -0
- three/examples/jsm/nodes/accessors/BufferNode.d.ts +3 -4
- three/examples/jsm/nodes/accessors/CameraNode.d.ts +11 -20
- three/examples/jsm/nodes/accessors/CubeTextureNode.d.ts +1 -1
- three/examples/jsm/nodes/accessors/MaterialNode.d.ts +4 -1
- three/examples/jsm/nodes/accessors/ModelNode.d.ts +3 -0
- three/examples/jsm/nodes/accessors/ModelViewProjectionNode.d.ts +1 -2
- three/examples/jsm/nodes/accessors/NormalNode.d.ts +9 -17
- three/examples/jsm/nodes/accessors/PositionNode.d.ts +6 -26
- three/examples/jsm/nodes/accessors/ReferenceNode.d.ts +3 -4
- three/examples/jsm/nodes/accessors/ReflectVectorNode.d.ts +3 -8
- three/examples/jsm/nodes/accessors/RendererReferenceNode.d.ts +2 -3
- three/examples/jsm/nodes/accessors/StorageBufferNode.d.ts +9 -4
- three/examples/jsm/nodes/accessors/TangentNode.d.ts +8 -23
- three/examples/jsm/nodes/accessors/Texture3DNode.d.ts +16 -0
- three/examples/jsm/nodes/accessors/TextureNode.d.ts +1 -1
- three/examples/jsm/nodes/accessors/UVNode.d.ts +1 -8
- three/examples/jsm/nodes/accessors/UniformsNode.d.ts +0 -2
- three/examples/jsm/nodes/accessors/UserDataNode.d.ts +4 -3
- three/examples/jsm/nodes/code/CodeNode.d.ts +0 -1
- three/examples/jsm/nodes/code/ExpressionNode.d.ts +2 -3
- three/examples/jsm/nodes/core/AttributeNode.d.ts +11 -4
- three/examples/jsm/nodes/core/ConstNode.d.ts +1 -2
- three/examples/jsm/nodes/core/InputNode.d.ts +1 -2
- three/examples/jsm/nodes/core/Node.d.ts +99 -42
- three/examples/jsm/nodes/core/NodeAttribute.d.ts +7 -4
- three/examples/jsm/nodes/core/NodeBuilder.d.ts +24 -24
- three/examples/jsm/nodes/core/NodeCache.d.ts +38 -4
- three/examples/jsm/nodes/core/NodeKeywords.d.ts +10 -7
- three/examples/jsm/nodes/core/NodeParser.d.ts +4 -4
- three/examples/jsm/nodes/core/NodeUniform.d.ts +8 -11
- three/examples/jsm/nodes/core/NodeVar.d.ts +5 -4
- three/examples/jsm/nodes/core/NodeVarying.d.ts +5 -6
- three/examples/jsm/nodes/core/PropertyNode.d.ts +4 -4
- three/examples/jsm/nodes/core/StackNode.d.ts +7 -1
- three/examples/jsm/nodes/core/StructTypeNode.d.ts +8 -0
- three/examples/jsm/nodes/core/TempNode.d.ts +1 -2
- three/examples/jsm/nodes/core/UniformGroup.d.ts +7 -0
- three/examples/jsm/nodes/core/UniformGroupNode.d.ts +21 -0
- three/examples/jsm/nodes/core/UniformNode.d.ts +14 -11
- three/examples/jsm/nodes/core/VaryingNode.d.ts +4 -0
- three/examples/jsm/nodes/core/constants.d.ts +27 -79
- three/examples/jsm/nodes/functions/PhysicalLightingModel.d.ts +2 -0
- three/examples/jsm/nodes/functions/ToonLightingModel.d.ts +4 -0
- three/examples/jsm/nodes/loaders/NodeLoader.d.ts +3 -3
- three/examples/jsm/nodes/loaders/NodeObjectLoader.d.ts +2 -3
- three/examples/jsm/nodes/materials/LineBasicNodeMaterial.d.ts +2 -0
- three/examples/jsm/nodes/materials/Materials.d.ts +3 -0
- three/examples/jsm/nodes/materials/MeshBasicNodeMaterial.d.ts +5 -1
- three/examples/jsm/nodes/materials/MeshMatcapNodeMaterial.d.ts +28 -0
- three/examples/jsm/nodes/materials/MeshNormalNodeMaterial.d.ts +2 -0
- three/examples/jsm/nodes/materials/MeshPhongNodeMaterial.d.ts +5 -1
- three/examples/jsm/nodes/materials/MeshPhysicalNodeMaterial.d.ts +8 -0
- three/examples/jsm/nodes/materials/MeshStandardNodeMaterial.d.ts +5 -1
- three/examples/jsm/nodes/materials/MeshToonNodeMaterial.d.ts +38 -0
- three/examples/jsm/nodes/materials/NodeMaterial.d.ts +9 -4
- three/examples/jsm/nodes/materials/PointsNodeMaterial.d.ts +1 -0
- three/examples/jsm/nodes/materials/ShadowNodeMaterial.d.ts +1 -0
- three/examples/jsm/nodes/materials/SpriteNodeMaterial.d.ts +1 -0
- three/examples/jsm/nodes/materials/VolumeNodeMaterial.d.ts +10 -0
- three/examples/jsm/nodes/shadernode/ShaderNode.d.ts +58 -36
- three/examples/jsm/nodes/utils/ConvertNode.d.ts +2 -3
- three/examples/jsm/nodes/utils/EquirectUVNode.d.ts +2 -2
- three/examples/jsm/nodes/utils/SplitNode.d.ts +1 -1
- three/examples/jsm/nodes/utils/TriplanarTexturesNode.d.ts +4 -5
- three/examples/jsm/objects/Sky.d.ts +18 -0
- three/examples/jsm/renderers/common/Animation.d.ts +14 -0
- three/examples/jsm/renderers/common/Attributes.d.ts +20 -0
- three/examples/jsm/renderers/common/Background.d.ts +22 -0
- three/examples/jsm/renderers/common/Binding.d.ts +8 -0
- three/examples/jsm/renderers/common/Bindings.d.ts +45 -0
- three/examples/jsm/renderers/common/Buffer.d.ts +11 -0
- three/examples/jsm/renderers/common/BufferUtils.d.ts +4 -0
- three/examples/jsm/renderers/common/ChainMap.d.ts +9 -0
- three/examples/jsm/renderers/common/ClippingContext.d.ts +18 -0
- three/examples/jsm/renderers/common/Color4.d.ts +6 -5
- three/examples/jsm/renderers/common/ComputePipeline.d.ts +8 -0
- three/examples/jsm/renderers/common/Constants.d.ts +9 -0
- three/examples/jsm/renderers/common/CubeRenderTarget.d.ts +7 -0
- three/examples/jsm/renderers/common/DataMap.d.ts +20 -0
- three/examples/jsm/renderers/common/Geometries.d.ts +28 -0
- three/examples/jsm/renderers/common/Info.d.ts +20 -13
- three/examples/jsm/renderers/common/Pipeline.d.ts +6 -0
- three/examples/jsm/renderers/common/Pipelines.d.ts +68 -0
- three/examples/jsm/renderers/common/ProgrammableStage.d.ts +15 -0
- three/examples/jsm/renderers/common/RenderBundle.d.ts +8 -0
- three/examples/jsm/renderers/common/RenderBundles.d.ts +10 -0
- three/examples/jsm/renderers/common/RenderContext.d.ts +38 -0
- three/examples/jsm/renderers/common/RenderContexts.d.ts +13 -0
- three/examples/jsm/renderers/common/RenderList.d.ts +62 -0
- three/examples/jsm/renderers/common/RenderLists.d.ts +10 -0
- three/examples/jsm/renderers/common/RenderObject.d.ts +73 -0
- three/examples/jsm/renderers/common/RenderObjects.d.ts +59 -0
- three/examples/jsm/renderers/common/RenderPipeline.d.ts +8 -0
- three/examples/jsm/renderers/common/Renderer.d.ts +175 -208
- three/examples/jsm/renderers/common/StorageBufferAttribute.d.ts +7 -0
- three/examples/jsm/renderers/common/StorageInstancedBufferAttribute.d.ts +7 -0
- three/examples/jsm/renderers/common/Textures.d.ts +64 -0
- three/examples/jsm/renderers/common/Uniform.d.ts +40 -0
- three/examples/jsm/renderers/common/UniformBuffer.d.ts +6 -0
- three/examples/jsm/renderers/common/UniformsGroup.d.ts +30 -0
- three/examples/jsm/renderers/common/nodes/NodeBuilderState.d.ts +26 -0
- three/examples/jsm/renderers/common/nodes/NodeUniform.d.ts +63 -0
- three/examples/jsm/renderers/common/nodes/NodeUniformsGroup.d.ts +12 -0
- three/examples/jsm/renderers/common/nodes/Nodes.d.ts +94 -0
- three/examples/jsm/utils/SceneUtils.d.ts +9 -3
- three/package.json +2 -2
- three/src/animation/tracks/StringKeyframeTrack.d.ts +1 -2
- three/src/core/BufferGeometry.d.ts +19 -17
- three/src/core/InterleavedBuffer.d.ts +2 -0
- three/src/loaders/LoaderUtils.d.ts +9 -6
- three/src/math/Color.d.ts +1 -1
- three/src/math/Matrix3.d.ts +2 -0
- three/src/math/Matrix4.d.ts +2 -0
- three/src/objects/BatchedMesh.d.ts +15 -0
- three/src/objects/InstancedMesh.d.ts +3 -3
- three/src/renderers/WebGLRenderer.d.ts +41 -19
- three/src/renderers/webgl/WebGLPrograms.d.ts +1 -1
- three/src/renderers/webxr/WebXRDepthSensing.d.ts +1 -1
- three/src/textures/CompressedArrayTexture.d.ts +32 -15
- three/src/textures/DataArrayTexture.d.ts +37 -20
- three/src/textures/FramebufferTexture.d.ts +1 -1
- three/src/utils.d.ts +2 -0
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:
|
|
11
|
+
* Last updated: Fri, 31 May 2024 15:07:05 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), [fflate](https://npmjs.com/package/fflate), [meshoptimizer](https://npmjs.com/package/meshoptimizer)
|
|
13
13
|
|
|
14
14
|
# Credits
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { Camera, Mesh, MOUSE, Object3D, Object3DEventMap, Quaternion, Raycaster, Vector3 } from "three";
|
|
2
2
|
|
|
3
|
+
type TransformControlsMode = "translate" | "rotate" | "scale";
|
|
4
|
+
|
|
3
5
|
export interface TransformControlsEventMap extends Object3DEventMap {
|
|
4
6
|
change: {};
|
|
5
|
-
mouseDown: {};
|
|
6
|
-
mouseUp: {};
|
|
7
|
+
mouseDown: { mode: TransformControlsMode };
|
|
8
|
+
mouseUp: { mode: TransformControlsMode };
|
|
7
9
|
objectChange: {};
|
|
8
10
|
"camera-changed": { value: unknown };
|
|
9
11
|
"object-changed": { value: unknown };
|
|
@@ -43,7 +45,7 @@ export class TransformControls extends Object3D<TransformControlsEventMap> {
|
|
|
43
45
|
object: Object3D | undefined;
|
|
44
46
|
enabled: boolean;
|
|
45
47
|
axis: "X" | "Y" | "Z" | "E" | "XY" | "YZ" | "XZ" | "XYZ" | "XYZE" | null;
|
|
46
|
-
mode:
|
|
48
|
+
mode: TransformControlsMode;
|
|
47
49
|
translationSnap: number | null;
|
|
48
50
|
rotationSnap: number | null;
|
|
49
51
|
space: "world" | "local";
|
|
@@ -67,9 +69,9 @@ export class TransformControls extends Object3D<TransformControlsEventMap> {
|
|
|
67
69
|
|
|
68
70
|
attach(object: Object3D): this;
|
|
69
71
|
detach(): this;
|
|
70
|
-
getMode():
|
|
72
|
+
getMode(): TransformControlsMode;
|
|
71
73
|
getRaycaster(): Raycaster;
|
|
72
|
-
setMode(mode:
|
|
74
|
+
setMode(mode: TransformControlsMode): void;
|
|
73
75
|
setTranslationSnap(translationSnap: number | null): void;
|
|
74
76
|
setRotationSnap(rotationSnap: number | null): void;
|
|
75
77
|
setScaleSnap(scaleSnap: number | null): void;
|
|
@@ -108,7 +110,7 @@ export class TransformControlsPlane extends Mesh {
|
|
|
108
110
|
|
|
109
111
|
constructor();
|
|
110
112
|
|
|
111
|
-
mode:
|
|
113
|
+
mode: TransformControlsMode;
|
|
112
114
|
|
|
113
115
|
axis: "X" | "Y" | "Z" | "XY" | "YZ" | "XZ" | "XYZ" | "E";
|
|
114
116
|
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { Object3D } from "three";
|
|
2
2
|
|
|
3
3
|
export interface USDZExporterOptions {
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
ar?: { anchoring: { type: "plane" }; planeAnchoring: { alignment: "horizontal" | "vertical" | "any" } } | undefined;
|
|
5
|
+
includeAnchoringProperties?: boolean | undefined;
|
|
6
|
+
quickLookCompatible?: boolean | undefined;
|
|
7
|
+
maxTextureSize?: number | undefined;
|
|
6
8
|
}
|
|
7
9
|
|
|
8
10
|
export class USDZExporter {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Loader, LoadingManager, Shape } from "three";
|
|
2
2
|
|
|
3
3
|
export interface FontData {
|
|
4
|
-
glyphs: Record<string, { ha: number; x_min: number; x_max: number; o
|
|
4
|
+
glyphs: Record<string, { ha: number; x_min: number; x_max: number; o?: string | undefined }>;
|
|
5
5
|
familyName: string;
|
|
6
6
|
ascender: number;
|
|
7
7
|
descender: number;
|
|
@@ -19,6 +19,7 @@ import {
|
|
|
19
19
|
TextureLoader,
|
|
20
20
|
} from "three";
|
|
21
21
|
|
|
22
|
+
import { MeshoptDecoder } from "../libs/meshopt_decoder.module.js";
|
|
22
23
|
import { DRACOLoader } from "./DRACOLoader.js";
|
|
23
24
|
import { KTX2Loader } from "./KTX2Loader.js";
|
|
24
25
|
|
|
@@ -40,16 +41,18 @@ export interface GLTF {
|
|
|
40
41
|
}
|
|
41
42
|
|
|
42
43
|
export class GLTFLoader extends Loader<GLTF> {
|
|
43
|
-
constructor(manager?: LoadingManager);
|
|
44
44
|
dracoLoader: DRACOLoader | null;
|
|
45
|
+
ktx2Loader: KTX2Loader | null;
|
|
46
|
+
meshoptDecoder: typeof MeshoptDecoder | null;
|
|
45
47
|
|
|
46
|
-
|
|
48
|
+
constructor(manager?: LoadingManager);
|
|
47
49
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
+
setDRACOLoader(dracoLoader: DRACOLoader): this;
|
|
51
|
+
setKTX2Loader(ktx2Loader: KTX2Loader | null): this;
|
|
52
|
+
setMeshoptDecoder(meshoptDecoder: typeof MeshoptDecoder | null): this;
|
|
50
53
|
|
|
51
|
-
|
|
52
|
-
|
|
54
|
+
register(callback: (parser: GLTFParser) => GLTFLoaderPlugin): this;
|
|
55
|
+
unregister(callback: (parser: GLTFParser) => GLTFLoaderPlugin): this;
|
|
53
56
|
|
|
54
57
|
parse(
|
|
55
58
|
data: ArrayBuffer | string,
|
|
@@ -12,7 +12,7 @@ export class LDrawLoader extends Loader<Group> {
|
|
|
12
12
|
setFileMap(fileMap: Record<string, string>): void;
|
|
13
13
|
setMaterials(materials: Material[]): void;
|
|
14
14
|
|
|
15
|
-
parse(text: string, path: string, onLoad: (data: Group) => void): void;
|
|
15
|
+
parse(text: string, path: string, onLoad: (data: Group) => void, onError?: (error: unknown) => void): void;
|
|
16
16
|
|
|
17
17
|
addMaterial(material: Material): void;
|
|
18
18
|
getMaterial(colourCode: string): Material | null;
|
|
@@ -1,19 +1,26 @@
|
|
|
1
1
|
import { BufferGeometry } from "three";
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* {@link EdgeSplitModifier} is intended to modify the geometry "dissolving" the edges to give a smoother look.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* const geometry = new THREE.IcosahedronGeometry( 10, 3 );
|
|
8
|
+
* const modifier = new EdgeSplitModifier();
|
|
9
|
+
* const cutOffAngle = 0.5;
|
|
10
|
+
* const tryKeepNormals = false;
|
|
11
|
+
*
|
|
12
|
+
* modifier.modify( geometry, cutOffAngle, tryKeepNormals );
|
|
13
|
+
*/
|
|
3
14
|
export class EdgeSplitModifier {
|
|
15
|
+
/**
|
|
16
|
+
* Create a new {@link EdgeSplitModifier} object.
|
|
17
|
+
*/
|
|
4
18
|
constructor();
|
|
5
19
|
|
|
6
20
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* @param cutOffPoint The cutoff angle in radians. If the angle between two face normals is higher
|
|
12
|
-
* than this value, a split will be made.
|
|
13
|
-
*
|
|
14
|
-
* @param [tryKeepNormals = true] Set to true to keep the normal values for vertices that won't be split.
|
|
15
|
-
* To use this feature, you also need to pass an indexed geometry with a 'normal'
|
|
16
|
-
* BufferAttribute.
|
|
21
|
+
* Using interpolated vertex normals, the mesh faces will blur at the edges and appear smooth.
|
|
22
|
+
* You can control the smoothness by setting the `cutOffAngle`.
|
|
23
|
+
* To try to keep the original normals, set `tryKeepNormals` to `true`.
|
|
17
24
|
*/
|
|
18
25
|
modify(geometry: BufferGeometry, cutOffPoint: number, tryKeepNormals: boolean): BufferGeometry;
|
|
19
26
|
}
|
|
@@ -197,29 +197,9 @@ export * from "./shadernode/ShaderNode.js";
|
|
|
197
197
|
// accessors
|
|
198
198
|
export { parallaxDirection, parallaxUV, TBNViewMatrix, transformedBentNormalView } from "./accessors/AccessorsUtils.js";
|
|
199
199
|
export { batch, default as BatchNode } from "./accessors/BatchNode.js";
|
|
200
|
-
export
|
|
201
|
-
bitangentGeometry,
|
|
202
|
-
bitangentLocal,
|
|
203
|
-
BitangentNodeScope,
|
|
204
|
-
bitangentView,
|
|
205
|
-
bitangentWorld,
|
|
206
|
-
default as BitangentNode,
|
|
207
|
-
transformedBitangentView,
|
|
208
|
-
transformedBitangentWorld,
|
|
209
|
-
} from "./accessors/BitangentNode.js";
|
|
200
|
+
export * from "./accessors/BitangentNode.js";
|
|
210
201
|
export { buffer, default as BufferNode } from "./accessors/BufferNode.js";
|
|
211
|
-
export
|
|
212
|
-
cameraFar,
|
|
213
|
-
cameraLogDepth,
|
|
214
|
-
cameraNear,
|
|
215
|
-
cameraNormalMatrix,
|
|
216
|
-
cameraPosition,
|
|
217
|
-
cameraProjectionMatrix,
|
|
218
|
-
cameraProjectionMatrixInverse,
|
|
219
|
-
cameraViewMatrix,
|
|
220
|
-
cameraWorldMatrix,
|
|
221
|
-
default as CameraNode,
|
|
222
|
-
} from "./accessors/CameraNode.js";
|
|
202
|
+
export * from "./accessors/CameraNode.js";
|
|
223
203
|
export { cubeTexture, default as CubeTextureNode } from "./accessors/CubeTextureNode.js";
|
|
224
204
|
export { default as InstanceNode, instance } from "./accessors/InstanceNode.js";
|
|
225
205
|
export {
|
|
@@ -231,6 +211,7 @@ export {
|
|
|
231
211
|
materialClearcoatNormal,
|
|
232
212
|
materialClearcoatRoughness,
|
|
233
213
|
materialColor,
|
|
214
|
+
materialDispersion,
|
|
234
215
|
materialEmissive,
|
|
235
216
|
materialIridescence,
|
|
236
217
|
materialIridescenceIOR,
|
|
@@ -264,17 +245,10 @@ export {
|
|
|
264
245
|
modelViewMatrix,
|
|
265
246
|
modelViewPosition,
|
|
266
247
|
modelWorldMatrix,
|
|
248
|
+
modelWorldMatrixInverse,
|
|
267
249
|
} from "./accessors/ModelNode.js";
|
|
268
250
|
export { default as ModelViewProjectionNode, modelViewProjection } from "./accessors/ModelViewProjectionNode.js";
|
|
269
|
-
export
|
|
270
|
-
default as NormalNode,
|
|
271
|
-
normalGeometry,
|
|
272
|
-
normalLocal,
|
|
273
|
-
NormalNodeScope,
|
|
274
|
-
normalView,
|
|
275
|
-
normalWorld,
|
|
276
|
-
transformedNormalView,
|
|
277
|
-
} from "./accessors/NormalNode.js";
|
|
251
|
+
export * from "./accessors/NormalNode.js";
|
|
278
252
|
export {
|
|
279
253
|
default as Object3DNode,
|
|
280
254
|
objectDirection,
|
|
@@ -286,36 +260,19 @@ export {
|
|
|
286
260
|
objectWorldMatrix,
|
|
287
261
|
} from "./accessors/Object3DNode.js";
|
|
288
262
|
export { default as PointUVNode, pointUV } from "./accessors/PointUVNode.js";
|
|
289
|
-
export
|
|
290
|
-
default as PositionNode,
|
|
291
|
-
positionGeometry,
|
|
292
|
-
positionLocal,
|
|
293
|
-
PositionNodeScope,
|
|
294
|
-
positionView,
|
|
295
|
-
positionViewDirection,
|
|
296
|
-
positionWorld,
|
|
297
|
-
positionWorldDirection,
|
|
298
|
-
} from "./accessors/PositionNode.js";
|
|
263
|
+
export * from "./accessors/PositionNode.js";
|
|
299
264
|
export { default as ReferenceNode, reference, referenceBuffer } from "./accessors/ReferenceNode.js";
|
|
300
|
-
export
|
|
265
|
+
export * from "./accessors/ReflectVectorNode.js";
|
|
301
266
|
export { default as RendererReferenceNode, rendererReference } from "./accessors/RendererReferenceNode.js";
|
|
302
267
|
export { default as SkinningNode, skinning } from "./accessors/SkinningNode.js";
|
|
303
268
|
export { default as StorageBufferNode, storage, storageObject } from "./accessors/StorageBufferNode.js";
|
|
304
|
-
export
|
|
305
|
-
|
|
306
|
-
tangentGeometry,
|
|
307
|
-
tangentLocal,
|
|
308
|
-
TangentNodeScope,
|
|
309
|
-
tangentView,
|
|
310
|
-
tangentWorld,
|
|
311
|
-
transformedTangentView,
|
|
312
|
-
transformedTangentWorld,
|
|
313
|
-
} from "./accessors/TangentNode.js";
|
|
269
|
+
export * from "./accessors/TangentNode.js";
|
|
270
|
+
export { default as Texture3DNode, texture3D } from "./accessors/Texture3DNode.js";
|
|
314
271
|
export { default as TextureBicubicNode, textureBicubic } from "./accessors/TextureBicubicNode.js";
|
|
315
272
|
export { default as TextureNode, sampler, texture } from "./accessors/TextureNode.js";
|
|
316
273
|
export { default as UniformsNode, uniforms } from "./accessors/UniformsNode.js";
|
|
317
274
|
export { default as UserDataNode, userData } from "./accessors/UserDataNode.js";
|
|
318
|
-
export
|
|
275
|
+
export * from "./accessors/UVNode.js";
|
|
319
276
|
export { default as VertexColorNode, vertexColor } from "./accessors/VertexColorNode.js";
|
|
320
277
|
|
|
321
278
|
// display
|
|
@@ -369,7 +326,7 @@ export {
|
|
|
369
326
|
export { default as ViewportSharedTextureNode, viewportSharedTexture } from "./display/ViewportSharedTextureNode.js";
|
|
370
327
|
export { default as ViewportTextureNode, viewportMipTexture, viewportTexture } from "./display/ViewportTextureNode.js";
|
|
371
328
|
|
|
372
|
-
export { default as PassNode, depthPass, pass, PassNodeScope } from "./display/PassNode.js";
|
|
329
|
+
export { default as PassNode, depthPass, pass, PassNodeScope, texturePass } from "./display/PassNode.js";
|
|
373
330
|
|
|
374
331
|
// code
|
|
375
332
|
export { code, CodeNodeInclude, default as CodeNode, glsl, js, wgsl } from "./code/CodeNode.js";
|
|
@@ -1,27 +1,9 @@
|
|
|
1
|
-
import Node from "../core/Node.js";
|
|
2
1
|
import MathNode from "../math/MathNode.js";
|
|
3
2
|
import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
4
3
|
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
| typeof BitangentNode.GEOMETRY;
|
|
10
|
-
|
|
11
|
-
export default class BitangentNode extends Node {
|
|
12
|
-
static GEOMETRY: "geometry";
|
|
13
|
-
static LOCAL: "local";
|
|
14
|
-
static VIEW: "view";
|
|
15
|
-
static WORLD: "world";
|
|
16
|
-
|
|
17
|
-
scope: BitangentNodeScope;
|
|
18
|
-
|
|
19
|
-
constructor(scope?: BitangentNodeScope);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export const bitangentGeometry: ShaderNodeObject<BitangentNode>;
|
|
23
|
-
export const bitangentLocal: ShaderNodeObject<BitangentNode>;
|
|
24
|
-
export const bitangentView: ShaderNodeObject<BitangentNode>;
|
|
25
|
-
export const bitangentWorld: ShaderNodeObject<BitangentNode>;
|
|
4
|
+
export const bitangentGeometry: ShaderNodeObject<MathNode>;
|
|
5
|
+
export const bitangentLocal: ShaderNodeObject<MathNode>;
|
|
6
|
+
export const bitangentView: ShaderNodeObject<MathNode>;
|
|
7
|
+
export const bitangentWorld: ShaderNodeObject<MathNode>;
|
|
26
8
|
export const transformedBitangentView: ShaderNodeObject<MathNode>;
|
|
27
9
|
export const transformedBitangentWorld: ShaderNodeObject<MathNode>;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { BufferAttribute, InterleavedBuffer, InterleavedBufferAttribute, TypedArray, Usage } from "three";
|
|
2
|
+
import InputNode from "../core/InputNode.js";
|
|
3
|
+
import NodeBuilder from "../core/NodeBuilder.js";
|
|
4
|
+
declare class BufferAttributeNode extends InputNode<TypedArray | InterleavedBuffer | BufferAttribute> {
|
|
5
|
+
readonly isBufferNode: true;
|
|
6
|
+
bufferType: string | null;
|
|
7
|
+
bufferStride: number;
|
|
8
|
+
bufferOffset: number;
|
|
9
|
+
usage: Usage;
|
|
10
|
+
instanced: boolean;
|
|
11
|
+
attribute: BufferAttribute | InterleavedBufferAttribute | null;
|
|
12
|
+
constructor(
|
|
13
|
+
value: TypedArray | InterleavedBuffer | BufferAttribute,
|
|
14
|
+
bufferType?: string | null,
|
|
15
|
+
bufferStride?: number,
|
|
16
|
+
bufferOffset?: number,
|
|
17
|
+
);
|
|
18
|
+
getNodeType(builder: NodeBuilder): string | null;
|
|
19
|
+
setup(builder: NodeBuilder): void;
|
|
20
|
+
generate(builder: NodeBuilder): string | null | undefined;
|
|
21
|
+
getInputType(): string;
|
|
22
|
+
setUsage(value: Usage): this;
|
|
23
|
+
setInstanced(value: boolean): this;
|
|
24
|
+
}
|
|
25
|
+
export default BufferAttributeNode;
|
|
26
|
+
export declare const bufferAttribute: (
|
|
27
|
+
array: TypedArray | InterleavedBuffer | BufferAttribute,
|
|
28
|
+
type?: string | null,
|
|
29
|
+
stride?: number,
|
|
30
|
+
offset?: number,
|
|
31
|
+
) => import("../shadernode/ShaderNode.js").ShaderNodeObject<BufferAttributeNode>;
|
|
32
|
+
export declare const dynamicBufferAttribute: (
|
|
33
|
+
array: TypedArray | InterleavedBuffer | BufferAttribute,
|
|
34
|
+
type?: string | null,
|
|
35
|
+
stride?: number,
|
|
36
|
+
offset?: number,
|
|
37
|
+
) => import("../shadernode/ShaderNode.js").ShaderNodeObject<BufferAttributeNode>;
|
|
38
|
+
export declare const instancedBufferAttribute: (
|
|
39
|
+
array: TypedArray | InterleavedBuffer | BufferAttribute,
|
|
40
|
+
type?: string | null,
|
|
41
|
+
stride?: number,
|
|
42
|
+
offset?: number,
|
|
43
|
+
) => import("../shadernode/ShaderNode.js").ShaderNodeObject<BufferAttributeNode>;
|
|
44
|
+
export declare const instancedDynamicBufferAttribute: (
|
|
45
|
+
array: TypedArray | InterleavedBuffer | BufferAttribute,
|
|
46
|
+
type?: string | null,
|
|
47
|
+
stride?: number,
|
|
48
|
+
offset?: number,
|
|
49
|
+
) => import("../shadernode/ShaderNode.js").ShaderNodeObject<BufferAttributeNode>;
|
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
import { NodeTypeOption } from "../core/constants.js";
|
|
2
1
|
import UniformNode from "../core/UniformNode.js";
|
|
3
2
|
import { NodeOrType, ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
4
3
|
|
|
5
|
-
export default class BufferNode extends UniformNode<
|
|
4
|
+
export default class BufferNode extends UniformNode<unknown> {
|
|
6
5
|
isBufferNode: true;
|
|
7
6
|
|
|
8
7
|
bufferType: string;
|
|
9
8
|
bufferCount: number;
|
|
10
9
|
|
|
11
|
-
constructor(value:
|
|
10
|
+
constructor(value: unknown, bufferType: string, bufferCount?: number);
|
|
12
11
|
}
|
|
13
12
|
|
|
14
13
|
export const buffer: (
|
|
15
|
-
value:
|
|
14
|
+
value: unknown,
|
|
16
15
|
nodeOrType: NodeOrType,
|
|
17
16
|
count: number,
|
|
18
17
|
) => ShaderNodeObject<BufferNode>;
|
|
@@ -1,22 +1,13 @@
|
|
|
1
|
+
import { Matrix3, Matrix4, Vector3 } from "three";
|
|
2
|
+
import UniformNode from "../core/UniformNode.js";
|
|
1
3
|
import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
2
|
-
import Object3DNode from "./Object3DNode.js";
|
|
3
4
|
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
export const cameraProjectionMatrix: ShaderNodeObject<CameraNode>;
|
|
15
|
-
export const cameraProjectionMatrixInverse: ShaderNodeObject<CameraNode>;
|
|
16
|
-
export const cameraNear: ShaderNodeObject<CameraNode>;
|
|
17
|
-
export const cameraFar: ShaderNodeObject<CameraNode>;
|
|
18
|
-
export const cameraLogDepth: ShaderNodeObject<CameraNode>;
|
|
19
|
-
export const cameraViewMatrix: ShaderNodeObject<CameraNode>;
|
|
20
|
-
export const cameraNormalMatrix: ShaderNodeObject<CameraNode>;
|
|
21
|
-
export const cameraWorldMatrix: ShaderNodeObject<CameraNode>;
|
|
22
|
-
export const cameraPosition: ShaderNodeObject<CameraNode>;
|
|
5
|
+
export const cameraNear: ShaderNodeObject<UniformNode<number>>;
|
|
6
|
+
export const cameraFar: ShaderNodeObject<UniformNode<number>>;
|
|
7
|
+
export const cameraLogDepth: ShaderNodeObject<UniformNode<number>>;
|
|
8
|
+
export const cameraProjectionMatrix: ShaderNodeObject<UniformNode<Matrix4>>;
|
|
9
|
+
export const cameraProjectionMatrixInverse: ShaderNodeObject<UniformNode<Matrix4>>;
|
|
10
|
+
export const cameraViewMatrix: ShaderNodeObject<UniformNode<Matrix4>>;
|
|
11
|
+
export const cameraWorldMatrix: ShaderNodeObject<UniformNode<Matrix4>>;
|
|
12
|
+
export const cameraNormalMatrix: ShaderNodeObject<UniformNode<Matrix3>>;
|
|
13
|
+
export const cameraPosition: ShaderNodeObject<UniformNode<Vector3>>;
|
|
@@ -8,7 +8,7 @@ export default class CubeTextureNode extends TextureNode {
|
|
|
8
8
|
uvNode: ShaderNodeObject<Node> | null;
|
|
9
9
|
levelNode: ShaderNodeObject<Node> | null;
|
|
10
10
|
|
|
11
|
-
constructor(value: CubeTexture, uvNode?: Node | null, levelNode?: Node | null);
|
|
11
|
+
constructor(value: CubeTexture, uvNode?: ShaderNodeObject<Node> | null, levelNode?: ShaderNodeObject<Node> | null);
|
|
12
12
|
|
|
13
13
|
getDefaultUV(): Node;
|
|
14
14
|
}
|
|
@@ -37,7 +37,8 @@ export type MaterialNodeScope =
|
|
|
37
37
|
| typeof MaterialNode.LINE_GAP_SIZE
|
|
38
38
|
| typeof MaterialNode.LINE_WIDTH
|
|
39
39
|
| typeof MaterialNode.LINE_DASH_OFFSET
|
|
40
|
-
| typeof MaterialNode.POINT_WIDTH
|
|
40
|
+
| typeof MaterialNode.POINT_WIDTH
|
|
41
|
+
| typeof MaterialNode.DISPERSION;
|
|
41
42
|
|
|
42
43
|
export default class MaterialNode extends Node {
|
|
43
44
|
static ALPHA_TEST: "alphaTest";
|
|
@@ -74,6 +75,7 @@ export default class MaterialNode extends Node {
|
|
|
74
75
|
static LINE_WIDTH: "linewidth";
|
|
75
76
|
static LINE_DASH_OFFSET: "dashOffset";
|
|
76
77
|
static POINT_WIDTH: "pointWidth";
|
|
78
|
+
static DISPERSION: "dispersion";
|
|
77
79
|
|
|
78
80
|
scope: MaterialNodeScope;
|
|
79
81
|
constructor(scope?: MaterialNodeScope);
|
|
@@ -115,4 +117,5 @@ export const materialLineGapSize: ShaderNodeObject<MaterialNode>;
|
|
|
115
117
|
export const materialLineWidth: ShaderNodeObject<MaterialNode>;
|
|
116
118
|
export const materialLineDashOffset: ShaderNodeObject<MaterialNode>;
|
|
117
119
|
export const materialPointWidth: ShaderNodeObject<MaterialNode>;
|
|
120
|
+
export const materialDispersion: ShaderNodeObject<MaterialNode>;
|
|
118
121
|
export const materialAnisotropyVector: ShaderNodeObject<UniformNode<Vector2>>;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Matrix4 } from "three/src/Three.js";
|
|
2
|
+
import { UniformNode } from "../Nodes.js";
|
|
1
3
|
import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
2
4
|
import Object3DNode from "./Object3DNode.js";
|
|
3
5
|
|
|
@@ -15,3 +17,4 @@ export const modelWorldMatrix: ShaderNodeObject<ModelNode>;
|
|
|
15
17
|
export const modelPosition: ShaderNodeObject<ModelNode>;
|
|
16
18
|
export const modelScale: ShaderNodeObject<ModelNode>;
|
|
17
19
|
export const modelViewPosition: ShaderNodeObject<ModelNode>;
|
|
20
|
+
export const modelWorldMatrixInverse: ShaderNodeObject<UniformNode<Matrix4>>;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import Node from "../core/Node.js";
|
|
2
2
|
import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
3
|
-
import PositionNode from "./PositionNode.js";
|
|
4
3
|
|
|
5
4
|
export default class ModelViewProjectionNode extends Node {
|
|
6
|
-
constructor(positionNode?:
|
|
5
|
+
constructor(positionNode?: Node);
|
|
7
6
|
}
|
|
8
7
|
|
|
9
8
|
export const modelViewProjection: (position?: NodeRepresentation) => ShaderNodeObject<ModelViewProjectionNode>;
|
|
@@ -1,20 +1,12 @@
|
|
|
1
|
-
import
|
|
1
|
+
import AttributeNode from "../core/AttributeNode.js";
|
|
2
|
+
import PropertyNode from "../core/PropertyNode.js";
|
|
2
3
|
import VarNode from "../core/VarNode.js";
|
|
4
|
+
import MathNode from "../math/MathNode.js";
|
|
3
5
|
import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
4
6
|
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
scope: NormalNodeScope;
|
|
12
|
-
|
|
13
|
-
constructor(scope?: NormalNodeScope);
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export const normalGeometry: ShaderNodeObject<NormalNode>;
|
|
17
|
-
export const normalLocal: ShaderNodeObject<NormalNode>;
|
|
18
|
-
export const normalView: ShaderNodeObject<NormalNode>;
|
|
19
|
-
export const normalWorld: ShaderNodeObject<NormalNode>;
|
|
20
|
-
export const transformedNormalView: ShaderNodeObject<VarNode>;
|
|
7
|
+
export const normalGeometry: ShaderNodeObject<AttributeNode>;
|
|
8
|
+
export const normalLocal: ShaderNodeObject<VarNode>;
|
|
9
|
+
export const normalView: ShaderNodeObject<MathNode>;
|
|
10
|
+
export const normalWorld: ShaderNodeObject<MathNode>;
|
|
11
|
+
export const transformedNormalView: ShaderNodeObject<PropertyNode>;
|
|
12
|
+
export const transformedClearcoatNormalView: ShaderNodeObject<PropertyNode>;
|
|
@@ -1,29 +1,9 @@
|
|
|
1
1
|
import Node from "../core/Node.js";
|
|
2
2
|
import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
3
3
|
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
| typeof PositionNode.VIEW_DIRECTION;
|
|
11
|
-
|
|
12
|
-
export default class PositionNode extends Node {
|
|
13
|
-
static GEOMETRY: "geometry";
|
|
14
|
-
static LOCAL: "local";
|
|
15
|
-
static WORLD: "world";
|
|
16
|
-
static WORLD_DIRECTION: "worldDirection";
|
|
17
|
-
static VIEW: "view";
|
|
18
|
-
static VIEW_DIRECTION: "viewDirection";
|
|
19
|
-
scope: PositionNodeScope;
|
|
20
|
-
|
|
21
|
-
constructor(scope?: PositionNodeScope);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export const positionGeometry: ShaderNodeObject<PositionNode>;
|
|
25
|
-
export const positionLocal: ShaderNodeObject<PositionNode>;
|
|
26
|
-
export const positionWorld: ShaderNodeObject<PositionNode>;
|
|
27
|
-
export const positionWorldDirection: ShaderNodeObject<PositionNode>;
|
|
28
|
-
export const positionView: ShaderNodeObject<PositionNode>;
|
|
29
|
-
export const positionViewDirection: ShaderNodeObject<PositionNode>;
|
|
4
|
+
export const positionGeometry: ShaderNodeObject<Node>;
|
|
5
|
+
export const positionLocal: ShaderNodeObject<Node>;
|
|
6
|
+
export const positionWorld: ShaderNodeObject<Node>;
|
|
7
|
+
export const positionWorldDirection: ShaderNodeObject<Node>;
|
|
8
|
+
export const positionView: ShaderNodeObject<Node>;
|
|
9
|
+
export const positionViewDirection: ShaderNodeObject<Node>;
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { NodeTypeOption } from "../core/constants.js";
|
|
2
1
|
import Node from "../core/Node.js";
|
|
3
2
|
import { NodeOrType, NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
4
3
|
|
|
5
4
|
export default class ReferenceNode<T> extends Node {
|
|
6
5
|
property: string;
|
|
7
6
|
|
|
8
|
-
uniformType:
|
|
7
|
+
uniformType: string;
|
|
9
8
|
|
|
10
9
|
object: T;
|
|
11
10
|
count: number | null;
|
|
@@ -14,9 +13,9 @@ export default class ReferenceNode<T> extends Node {
|
|
|
14
13
|
reference: T | null;
|
|
15
14
|
node: Node | null;
|
|
16
15
|
|
|
17
|
-
constructor(property: string, uniformType:
|
|
16
|
+
constructor(property: string, uniformType: string, object?: T | null, count?: number | null);
|
|
18
17
|
|
|
19
|
-
setNodeType(uniformType:
|
|
18
|
+
setNodeType(uniformType: string): void;
|
|
20
19
|
}
|
|
21
20
|
|
|
22
21
|
export const reference: <T>(name: string, nodeOrType: NodeOrType, object: T) => ShaderNodeObject<ReferenceNode<T>>;
|
|
@@ -1,11 +1,6 @@
|
|
|
1
1
|
import Node from "../core/Node.js";
|
|
2
|
+
import VarNode from "../core/VarNode.js";
|
|
2
3
|
import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
3
4
|
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
getHash(): "reflectVector";
|
|
8
|
-
setup(): Node;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export const reflectVector: ShaderNodeObject<ReflectVectorNode>;
|
|
5
|
+
export const reflectView: ShaderNodeObject<Node>;
|
|
6
|
+
export const reflectVector: ShaderNodeObject<VarNode>;
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import Renderer from "../../renderers/common/Renderer.js";
|
|
2
|
-
import { NodeTypeOption } from "../core/constants.js";
|
|
3
2
|
import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
4
3
|
import ReferenceNode from "./ReferenceNode.js";
|
|
5
4
|
|
|
6
5
|
export default class RendererReferenceNode extends ReferenceNode<Renderer> {
|
|
7
6
|
renderer: Renderer | null;
|
|
8
7
|
|
|
9
|
-
constructor(property: string, inputType:
|
|
8
|
+
constructor(property: string, inputType: string, renderer?: Renderer | null);
|
|
10
9
|
}
|
|
11
10
|
|
|
12
11
|
export const rendererReference: (
|
|
13
12
|
name: string,
|
|
14
|
-
type:
|
|
13
|
+
type: string,
|
|
15
14
|
renderer?: Renderer | null,
|
|
16
15
|
) => ShaderNodeObject<RendererReferenceNode>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import StorageBufferAttribute from "../../renderers/common/StorageBufferAttribute.js";
|
|
2
|
+
import StorageInstancedBufferAttribute from "../../renderers/common/StorageInstancedBufferAttribute.js";
|
|
2
3
|
import { NodeOrType, NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
|
|
3
4
|
import StorageArrayElementNode from "../utils/StoargeArrayElementNode.js";
|
|
4
5
|
import BufferNode from "./BufferNode.js";
|
|
@@ -7,7 +8,11 @@ export default class StorageBufferNode extends BufferNode {
|
|
|
7
8
|
readonly isStorageBufferNode: true;
|
|
8
9
|
bufferObject: boolean;
|
|
9
10
|
|
|
10
|
-
constructor(
|
|
11
|
+
constructor(
|
|
12
|
+
value: StorageBufferAttribute | StorageInstancedBufferAttribute,
|
|
13
|
+
bufferType: string,
|
|
14
|
+
bufferCount?: number,
|
|
15
|
+
);
|
|
11
16
|
|
|
12
17
|
element(indexNode: NodeRepresentation): ShaderNodeObject<StorageArrayElementNode>;
|
|
13
18
|
|
|
@@ -15,12 +20,12 @@ export default class StorageBufferNode extends BufferNode {
|
|
|
15
20
|
}
|
|
16
21
|
|
|
17
22
|
export const storage: (
|
|
18
|
-
value:
|
|
23
|
+
value: StorageBufferAttribute | StorageInstancedBufferAttribute,
|
|
19
24
|
nodeOrType: NodeOrType,
|
|
20
25
|
count: number,
|
|
21
26
|
) => ShaderNodeObject<StorageBufferNode>;
|
|
22
27
|
export const storageObject: (
|
|
23
|
-
value:
|
|
28
|
+
value: StorageBufferAttribute | StorageInstancedBufferAttribute,
|
|
24
29
|
nodeOrType: NodeOrType,
|
|
25
30
|
count: number,
|
|
26
31
|
) => ShaderNodeObject<StorageBufferNode>;
|