@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.
Files changed (132) hide show
  1. three/README.md +1 -1
  2. three/examples/jsm/controls/TransformControls.d.ts +8 -6
  3. three/examples/jsm/exporters/USDZExporter.d.ts +4 -2
  4. three/examples/jsm/loaders/FontLoader.d.ts +1 -1
  5. three/examples/jsm/loaders/GLTFLoader.d.ts +9 -6
  6. three/examples/jsm/loaders/LDrawLoader.d.ts +1 -1
  7. three/examples/jsm/modifiers/EdgeSplitModifier.d.ts +17 -10
  8. three/examples/jsm/nodes/Nodes.d.ts +11 -54
  9. three/examples/jsm/nodes/accessors/BitangentNode.d.ts +4 -22
  10. three/examples/jsm/nodes/accessors/BufferAttributeNode.d.ts +49 -0
  11. three/examples/jsm/nodes/accessors/BufferNode.d.ts +3 -4
  12. three/examples/jsm/nodes/accessors/CameraNode.d.ts +11 -20
  13. three/examples/jsm/nodes/accessors/CubeTextureNode.d.ts +1 -1
  14. three/examples/jsm/nodes/accessors/MaterialNode.d.ts +4 -1
  15. three/examples/jsm/nodes/accessors/ModelNode.d.ts +3 -0
  16. three/examples/jsm/nodes/accessors/ModelViewProjectionNode.d.ts +1 -2
  17. three/examples/jsm/nodes/accessors/NormalNode.d.ts +9 -17
  18. three/examples/jsm/nodes/accessors/PositionNode.d.ts +6 -26
  19. three/examples/jsm/nodes/accessors/ReferenceNode.d.ts +3 -4
  20. three/examples/jsm/nodes/accessors/ReflectVectorNode.d.ts +3 -8
  21. three/examples/jsm/nodes/accessors/RendererReferenceNode.d.ts +2 -3
  22. three/examples/jsm/nodes/accessors/StorageBufferNode.d.ts +9 -4
  23. three/examples/jsm/nodes/accessors/TangentNode.d.ts +8 -23
  24. three/examples/jsm/nodes/accessors/Texture3DNode.d.ts +16 -0
  25. three/examples/jsm/nodes/accessors/TextureNode.d.ts +1 -1
  26. three/examples/jsm/nodes/accessors/UVNode.d.ts +1 -8
  27. three/examples/jsm/nodes/accessors/UniformsNode.d.ts +0 -2
  28. three/examples/jsm/nodes/accessors/UserDataNode.d.ts +4 -3
  29. three/examples/jsm/nodes/code/CodeNode.d.ts +0 -1
  30. three/examples/jsm/nodes/code/ExpressionNode.d.ts +2 -3
  31. three/examples/jsm/nodes/core/AttributeNode.d.ts +11 -4
  32. three/examples/jsm/nodes/core/ConstNode.d.ts +1 -2
  33. three/examples/jsm/nodes/core/InputNode.d.ts +1 -2
  34. three/examples/jsm/nodes/core/Node.d.ts +99 -42
  35. three/examples/jsm/nodes/core/NodeAttribute.d.ts +7 -4
  36. three/examples/jsm/nodes/core/NodeBuilder.d.ts +24 -24
  37. three/examples/jsm/nodes/core/NodeCache.d.ts +38 -4
  38. three/examples/jsm/nodes/core/NodeKeywords.d.ts +10 -7
  39. three/examples/jsm/nodes/core/NodeParser.d.ts +4 -4
  40. three/examples/jsm/nodes/core/NodeUniform.d.ts +8 -11
  41. three/examples/jsm/nodes/core/NodeVar.d.ts +5 -4
  42. three/examples/jsm/nodes/core/NodeVarying.d.ts +5 -6
  43. three/examples/jsm/nodes/core/PropertyNode.d.ts +4 -4
  44. three/examples/jsm/nodes/core/StackNode.d.ts +7 -1
  45. three/examples/jsm/nodes/core/StructTypeNode.d.ts +8 -0
  46. three/examples/jsm/nodes/core/TempNode.d.ts +1 -2
  47. three/examples/jsm/nodes/core/UniformGroup.d.ts +7 -0
  48. three/examples/jsm/nodes/core/UniformGroupNode.d.ts +21 -0
  49. three/examples/jsm/nodes/core/UniformNode.d.ts +14 -11
  50. three/examples/jsm/nodes/core/VaryingNode.d.ts +4 -0
  51. three/examples/jsm/nodes/core/constants.d.ts +27 -79
  52. three/examples/jsm/nodes/functions/PhysicalLightingModel.d.ts +2 -0
  53. three/examples/jsm/nodes/functions/ToonLightingModel.d.ts +4 -0
  54. three/examples/jsm/nodes/loaders/NodeLoader.d.ts +3 -3
  55. three/examples/jsm/nodes/loaders/NodeObjectLoader.d.ts +2 -3
  56. three/examples/jsm/nodes/materials/LineBasicNodeMaterial.d.ts +2 -0
  57. three/examples/jsm/nodes/materials/Materials.d.ts +3 -0
  58. three/examples/jsm/nodes/materials/MeshBasicNodeMaterial.d.ts +5 -1
  59. three/examples/jsm/nodes/materials/MeshMatcapNodeMaterial.d.ts +28 -0
  60. three/examples/jsm/nodes/materials/MeshNormalNodeMaterial.d.ts +2 -0
  61. three/examples/jsm/nodes/materials/MeshPhongNodeMaterial.d.ts +5 -1
  62. three/examples/jsm/nodes/materials/MeshPhysicalNodeMaterial.d.ts +8 -0
  63. three/examples/jsm/nodes/materials/MeshStandardNodeMaterial.d.ts +5 -1
  64. three/examples/jsm/nodes/materials/MeshToonNodeMaterial.d.ts +38 -0
  65. three/examples/jsm/nodes/materials/NodeMaterial.d.ts +9 -4
  66. three/examples/jsm/nodes/materials/PointsNodeMaterial.d.ts +1 -0
  67. three/examples/jsm/nodes/materials/ShadowNodeMaterial.d.ts +1 -0
  68. three/examples/jsm/nodes/materials/SpriteNodeMaterial.d.ts +1 -0
  69. three/examples/jsm/nodes/materials/VolumeNodeMaterial.d.ts +10 -0
  70. three/examples/jsm/nodes/shadernode/ShaderNode.d.ts +58 -36
  71. three/examples/jsm/nodes/utils/ConvertNode.d.ts +2 -3
  72. three/examples/jsm/nodes/utils/EquirectUVNode.d.ts +2 -2
  73. three/examples/jsm/nodes/utils/SplitNode.d.ts +1 -1
  74. three/examples/jsm/nodes/utils/TriplanarTexturesNode.d.ts +4 -5
  75. three/examples/jsm/objects/Sky.d.ts +18 -0
  76. three/examples/jsm/renderers/common/Animation.d.ts +14 -0
  77. three/examples/jsm/renderers/common/Attributes.d.ts +20 -0
  78. three/examples/jsm/renderers/common/Background.d.ts +22 -0
  79. three/examples/jsm/renderers/common/Binding.d.ts +8 -0
  80. three/examples/jsm/renderers/common/Bindings.d.ts +45 -0
  81. three/examples/jsm/renderers/common/Buffer.d.ts +11 -0
  82. three/examples/jsm/renderers/common/BufferUtils.d.ts +4 -0
  83. three/examples/jsm/renderers/common/ChainMap.d.ts +9 -0
  84. three/examples/jsm/renderers/common/ClippingContext.d.ts +18 -0
  85. three/examples/jsm/renderers/common/Color4.d.ts +6 -5
  86. three/examples/jsm/renderers/common/ComputePipeline.d.ts +8 -0
  87. three/examples/jsm/renderers/common/Constants.d.ts +9 -0
  88. three/examples/jsm/renderers/common/CubeRenderTarget.d.ts +7 -0
  89. three/examples/jsm/renderers/common/DataMap.d.ts +20 -0
  90. three/examples/jsm/renderers/common/Geometries.d.ts +28 -0
  91. three/examples/jsm/renderers/common/Info.d.ts +20 -13
  92. three/examples/jsm/renderers/common/Pipeline.d.ts +6 -0
  93. three/examples/jsm/renderers/common/Pipelines.d.ts +68 -0
  94. three/examples/jsm/renderers/common/ProgrammableStage.d.ts +15 -0
  95. three/examples/jsm/renderers/common/RenderBundle.d.ts +8 -0
  96. three/examples/jsm/renderers/common/RenderBundles.d.ts +10 -0
  97. three/examples/jsm/renderers/common/RenderContext.d.ts +38 -0
  98. three/examples/jsm/renderers/common/RenderContexts.d.ts +13 -0
  99. three/examples/jsm/renderers/common/RenderList.d.ts +62 -0
  100. three/examples/jsm/renderers/common/RenderLists.d.ts +10 -0
  101. three/examples/jsm/renderers/common/RenderObject.d.ts +73 -0
  102. three/examples/jsm/renderers/common/RenderObjects.d.ts +59 -0
  103. three/examples/jsm/renderers/common/RenderPipeline.d.ts +8 -0
  104. three/examples/jsm/renderers/common/Renderer.d.ts +175 -208
  105. three/examples/jsm/renderers/common/StorageBufferAttribute.d.ts +7 -0
  106. three/examples/jsm/renderers/common/StorageInstancedBufferAttribute.d.ts +7 -0
  107. three/examples/jsm/renderers/common/Textures.d.ts +64 -0
  108. three/examples/jsm/renderers/common/Uniform.d.ts +40 -0
  109. three/examples/jsm/renderers/common/UniformBuffer.d.ts +6 -0
  110. three/examples/jsm/renderers/common/UniformsGroup.d.ts +30 -0
  111. three/examples/jsm/renderers/common/nodes/NodeBuilderState.d.ts +26 -0
  112. three/examples/jsm/renderers/common/nodes/NodeUniform.d.ts +63 -0
  113. three/examples/jsm/renderers/common/nodes/NodeUniformsGroup.d.ts +12 -0
  114. three/examples/jsm/renderers/common/nodes/Nodes.d.ts +94 -0
  115. three/examples/jsm/utils/SceneUtils.d.ts +9 -3
  116. three/package.json +2 -2
  117. three/src/animation/tracks/StringKeyframeTrack.d.ts +1 -2
  118. three/src/core/BufferGeometry.d.ts +19 -17
  119. three/src/core/InterleavedBuffer.d.ts +2 -0
  120. three/src/loaders/LoaderUtils.d.ts +9 -6
  121. three/src/math/Color.d.ts +1 -1
  122. three/src/math/Matrix3.d.ts +2 -0
  123. three/src/math/Matrix4.d.ts +2 -0
  124. three/src/objects/BatchedMesh.d.ts +15 -0
  125. three/src/objects/InstancedMesh.d.ts +3 -3
  126. three/src/renderers/WebGLRenderer.d.ts +41 -19
  127. three/src/renderers/webgl/WebGLPrograms.d.ts +1 -1
  128. three/src/renderers/webxr/WebXRDepthSensing.d.ts +1 -1
  129. three/src/textures/CompressedArrayTexture.d.ts +32 -15
  130. three/src/textures/DataArrayTexture.d.ts +37 -20
  131. three/src/textures/FramebufferTexture.d.ts +1 -1
  132. three/src/utils.d.ts +2 -0
@@ -0,0 +1,38 @@
1
+ import { DepthTexture, RenderTarget, Texture, Vector4 } from "three";
2
+ import ClippingContext from "./ClippingContext.js";
3
+ declare class RenderContext {
4
+ id: number;
5
+ color: boolean;
6
+ clearColor: boolean;
7
+ clearColorValue: {
8
+ r: number;
9
+ g: number;
10
+ b: number;
11
+ a: number;
12
+ };
13
+ depth: boolean;
14
+ clearDepth: boolean;
15
+ clearDepthValue: number;
16
+ stencil: boolean;
17
+ clearStencil: boolean;
18
+ clearStencilValue: number;
19
+ viewport: boolean;
20
+ viewportValue: Vector4;
21
+ scissor: boolean;
22
+ scissorValue: Vector4;
23
+ textures: Texture[] | null;
24
+ depthTexture: DepthTexture | null;
25
+ activeCubeFace: number;
26
+ sampleCount: number;
27
+ width: number;
28
+ height: number;
29
+ readonly isRenderContext: true;
30
+ clippingContext?: ClippingContext | undefined;
31
+ depthClearValue?: number | undefined;
32
+ stencilClearValue?: number | undefined;
33
+ renderTarget?: RenderTarget | undefined;
34
+ activeMipmapLevel?: number | undefined;
35
+ occlusionQueryCount?: number | undefined;
36
+ constructor();
37
+ }
38
+ export default RenderContext;
@@ -0,0 +1,13 @@
1
+ import { Camera, RenderTarget, Scene } from "three";
2
+ import ChainMap from "./ChainMap.js";
3
+ import RenderContext from "./RenderContext.js";
4
+ declare class RenderContexts {
5
+ chainMaps: {
6
+ [attachmentState: string]: ChainMap<readonly [Scene, Camera], RenderContext> | undefined;
7
+ };
8
+ constructor();
9
+ get(scene: Scene, camera: Camera, renderTarget?: RenderTarget | null): RenderContext;
10
+ getChainMap(attachmentState: string): ChainMap<readonly [Scene, Camera], RenderContext>;
11
+ dispose(): void;
12
+ }
13
+ export default RenderContexts;
@@ -0,0 +1,62 @@
1
+ import { BufferGeometry, Camera, GeometryGroup, Light, Material, Object3D } from "three";
2
+ import { LightsNode } from "../../nodes/Nodes.js";
3
+ export interface Bundle {
4
+ object: Object3D;
5
+ camera: Camera;
6
+ renderList: RenderList;
7
+ }
8
+ export interface RenderItem {
9
+ id: number | null;
10
+ object: Object3D | null;
11
+ geometry: BufferGeometry | null;
12
+ material: Material | null;
13
+ groupOrder: number | null;
14
+ renderOrder: number | null;
15
+ z: number | null;
16
+ group: GeometryGroup | null;
17
+ }
18
+ declare class RenderList {
19
+ renderItems: RenderItem[];
20
+ renderItemsIndex: number;
21
+ opaque: RenderItem[];
22
+ transparent: RenderItem[];
23
+ bundles: Bundle[];
24
+ lightsNode: LightsNode;
25
+ lightsArray: Light[];
26
+ occlusionQueryCount: number;
27
+ constructor();
28
+ begin(): this;
29
+ getNextRenderItem(
30
+ object: Object3D,
31
+ geometry: BufferGeometry,
32
+ material: Material,
33
+ groupOrder: number,
34
+ z: number,
35
+ group: GeometryGroup | null,
36
+ ): RenderItem;
37
+ push(
38
+ object: Object3D,
39
+ geometry: BufferGeometry,
40
+ material: Material,
41
+ groupOrder: number,
42
+ z: number,
43
+ group: GeometryGroup | null,
44
+ ): void;
45
+ unshift(
46
+ object: Object3D,
47
+ geometry: BufferGeometry,
48
+ material: Material,
49
+ groupOrder: number,
50
+ z: number,
51
+ group: GeometryGroup | null,
52
+ ): void;
53
+ pushBundle(group: Bundle): void;
54
+ pushLight(light: Light): void;
55
+ getLightsNode(): LightsNode;
56
+ sort(
57
+ customOpaqueSort: ((a: RenderItem, b: RenderItem) => number) | null,
58
+ customTransparentSort: ((a: RenderItem, b: RenderItem) => number) | null,
59
+ ): void;
60
+ finish(): void;
61
+ }
62
+ export default RenderList;
@@ -0,0 +1,10 @@
1
+ import { Camera, Object3D } from "three";
2
+ import ChainMap from "./ChainMap.js";
3
+ import RenderList from "./RenderList.js";
4
+ declare class RenderLists {
5
+ lists: ChainMap<readonly [Object3D, Camera], RenderList>;
6
+ constructor();
7
+ get(scene: Object3D, camera: Camera): RenderList;
8
+ dispose(): void;
9
+ }
10
+ export default RenderLists;
@@ -0,0 +1,73 @@
1
+ import {
2
+ BufferAttribute,
3
+ BufferGeometry,
4
+ Camera,
5
+ InterleavedBuffer,
6
+ InterleavedBufferAttribute,
7
+ Material,
8
+ Object3D,
9
+ Scene,
10
+ } from "three";
11
+ import LightsNode from "../../nodes/lighting/LightsNode.js";
12
+ import Binding from "./Binding.js";
13
+ import ClippingContext from "./ClippingContext.js";
14
+ import Geometries from "./Geometries.js";
15
+ import NodeBuilderState from "./nodes/NodeBuilderState.js";
16
+ import Nodes from "./nodes/Nodes.js";
17
+ import RenderContext from "./RenderContext.js";
18
+ import Renderer from "./Renderer.js";
19
+ import RenderPipeline from "./RenderPipeline.js";
20
+ export default class RenderObject {
21
+ _nodes: Nodes;
22
+ _geometries: Geometries;
23
+ id: number;
24
+ renderer: Renderer;
25
+ object: Object3D;
26
+ material: Material;
27
+ scene: Scene;
28
+ camera: Camera;
29
+ lightsNode: LightsNode;
30
+ context: RenderContext;
31
+ geometry: BufferGeometry;
32
+ version: number;
33
+ drawRange: {
34
+ start: number;
35
+ count: number;
36
+ } | null;
37
+ attributes: Array<BufferAttribute | InterleavedBufferAttribute> | null;
38
+ pipeline: RenderPipeline | null;
39
+ vertexBuffers: Array<BufferAttribute | InterleavedBuffer> | null;
40
+ clippingContext: ClippingContext;
41
+ clippingContextVersion: number;
42
+ initialNodesCacheKey: string;
43
+ initialCacheKey: string;
44
+ _nodeBuilderState: NodeBuilderState | null;
45
+ _bindings: Binding[] | null;
46
+ onDispose: (() => void) | null;
47
+ readonly isRenderObject: true;
48
+ onMaterialDispose: () => void;
49
+ constructor(
50
+ nodes: Nodes,
51
+ geometries: Geometries,
52
+ renderer: Renderer,
53
+ object: Object3D,
54
+ material: Material,
55
+ scene: Scene,
56
+ camera: Camera,
57
+ lightsNode: LightsNode,
58
+ renderContext: RenderContext,
59
+ );
60
+ updateClipping(parent: ClippingContext): void;
61
+ get clippingNeedsUpdate(): boolean;
62
+ getNodeBuilderState(): NodeBuilderState;
63
+ getBindings(): Binding[];
64
+ getIndex(): BufferAttribute | null;
65
+ getChainArray(): readonly [Object3D<import("three").Object3DEventMap>, Material, RenderContext, LightsNode];
66
+ getAttributes(): (InterleavedBufferAttribute | BufferAttribute)[];
67
+ getVertexBuffers(): (InterleavedBuffer | BufferAttribute)[] | null;
68
+ getMaterialCacheKey(): string;
69
+ get needsUpdate(): boolean;
70
+ getNodesCacheKey(): string;
71
+ getCacheKey(): string;
72
+ dispose(): void;
73
+ }
@@ -0,0 +1,59 @@
1
+ import { Camera, Material, Object3D, Scene } from "three";
2
+ import LightsNode from "../../nodes/lighting/LightsNode.js";
3
+ import Bindings from "./Bindings.js";
4
+ import ChainMap from "./ChainMap.js";
5
+ import Geometries from "./Geometries.js";
6
+ import Info from "./Info.js";
7
+ import Nodes from "./nodes/Nodes.js";
8
+ import Pipelines from "./Pipelines.js";
9
+ import RenderContext from "./RenderContext.js";
10
+ import Renderer from "./Renderer.js";
11
+ import RenderObject from "./RenderObject.js";
12
+ declare class RenderObjects {
13
+ renderer: Renderer;
14
+ nodes: Nodes;
15
+ geometries: Geometries;
16
+ pipelines: Pipelines;
17
+ bindings: Bindings;
18
+ info: Info;
19
+ chainMaps: {
20
+ [passId: string]: ChainMap<readonly [Object3D, Material, RenderContext, LightsNode], RenderObject>;
21
+ };
22
+ constructor(
23
+ renderer: Renderer,
24
+ nodes: Nodes,
25
+ geometries: Geometries,
26
+ pipelines: Pipelines,
27
+ bindings: Bindings,
28
+ info: Info,
29
+ );
30
+ get(
31
+ object: Object3D,
32
+ material: Material,
33
+ scene: Scene,
34
+ camera: Camera,
35
+ lightsNode: LightsNode,
36
+ renderContext: RenderContext,
37
+ passId: string | undefined,
38
+ ): RenderObject;
39
+ getChainMap(
40
+ passId?: string,
41
+ ): ChainMap<
42
+ readonly [Object3D<import("three").Object3DEventMap>, Material, RenderContext, LightsNode],
43
+ RenderObject
44
+ >;
45
+ dispose(): void;
46
+ createRenderObject(
47
+ nodes: Nodes,
48
+ geometries: Geometries,
49
+ renderer: Renderer,
50
+ object: Object3D,
51
+ material: Material,
52
+ scene: Scene,
53
+ camera: Camera,
54
+ lightsNode: LightsNode,
55
+ renderContext: RenderContext,
56
+ passId: string | undefined,
57
+ ): RenderObject;
58
+ }
59
+ export default RenderObjects;
@@ -0,0 +1,8 @@
1
+ import Pipeline from "./Pipeline.js";
2
+ import ProgrammableStage from "./ProgrammableStage.js";
3
+ declare class RenderPipeline extends Pipeline {
4
+ vertexProgram: ProgrammableStage;
5
+ fragmentProgram: ProgrammableStage;
6
+ constructor(cacheKey: string, vertexProgram: ProgrammableStage, fragmentProgram: ProgrammableStage);
7
+ }
8
+ export default RenderPipeline;