@types/three 0.136.0 → 0.138.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 (130) hide show
  1. three/README.md +1 -1
  2. three/examples/jsm/{WebGL.d.ts → capabilities/WebGL.d.ts} +3 -1
  3. three/examples/jsm/controls/OrbitControls.d.ts +4 -1
  4. three/examples/jsm/curves/CurveExtras.d.ts +52 -54
  5. three/examples/jsm/exporters/EXRExporter.d.ts +20 -0
  6. three/examples/jsm/geometries/ConvexGeometry.d.ts +1 -1
  7. three/examples/jsm/helpers/OctreeHelper.d.ts +14 -0
  8. three/examples/jsm/interactive/HTMLMesh.d.ts +1 -0
  9. three/examples/jsm/loaders/GLTFLoader.d.ts +2 -9
  10. three/examples/jsm/loaders/LDrawLoader.d.ts +6 -0
  11. three/examples/jsm/loaders/LUT3dlLoader.d.ts +2 -2
  12. three/examples/jsm/loaders/LUTCubeLoader.d.ts +2 -2
  13. three/examples/jsm/loaders/VOXLoader.d.ts +2 -2
  14. three/examples/jsm/math/OBB.d.ts +1 -1
  15. three/examples/jsm/objects/Reflector.d.ts +1 -0
  16. three/examples/jsm/objects/Refractor.d.ts +1 -0
  17. three/examples/jsm/postprocessing/LUTPass.d.ts +3 -3
  18. three/examples/jsm/utils/LDrawUtils.d.ts +5 -0
  19. three/examples/jsm/utils/PackedPhongMaterial.d.ts +10 -0
  20. three/examples/jsm/utils/SceneUtils.d.ts +10 -12
  21. three/index.d.ts +1 -1
  22. three/package.json +3 -3
  23. three/src/Three.d.ts +5 -0
  24. three/src/constants.d.ts +4 -19
  25. three/src/core/Raycaster.d.ts +3 -2
  26. three/src/extras/ImageUtils.d.ts +2 -0
  27. three/src/extras/PMREMGenerator.d.ts +2 -2
  28. three/src/materials/Material.d.ts +5 -6
  29. three/src/math/Box3.d.ts +2 -2
  30. three/src/math/Color.d.ts +2 -0
  31. three/src/math/Euler.d.ts +0 -1
  32. three/src/math/Vector3.d.ts +5 -0
  33. three/src/renderers/WebGL3DRenderTarget.d.ts +28 -0
  34. three/src/renderers/WebGLArrayRenderTarget.d.ts +28 -0
  35. three/src/renderers/WebGLMultipleRenderTargets.d.ts +9 -1
  36. three/src/renderers/WebGLMultisampleRenderTarget.d.ts +5 -12
  37. three/src/renderers/WebGLRenderTarget.d.ts +7 -1
  38. three/src/renderers/WebGLRenderer.d.ts +3 -4
  39. three/src/renderers/webgl/WebGLUtils.d.ts +3 -1
  40. three/src/renderers/webxr/WebXRManager.d.ts +1 -1
  41. three/src/textures/CompressedTexture.d.ts +2 -1
  42. three/src/textures/CubeTexture.d.ts +1 -1
  43. three/src/textures/Data3DTexture.d.ts +33 -0
  44. three/src/textures/DataArrayTexture.d.ts +33 -0
  45. three/src/textures/DataTexture.d.ts +2 -1
  46. three/src/textures/DataTexture2DArray.d.ts +5 -32
  47. three/src/textures/DataTexture3D.d.ts +5 -32
  48. three/src/textures/DepthTexture.d.ts +2 -1
  49. three/src/textures/Source.d.ts +39 -0
  50. three/src/textures/Texture.d.ts +30 -3
  51. three/src/textures/VideoTexture.d.ts +1 -1
  52. three/examples/jsm/loaders/VRMLoader.d.ts +0 -19
  53. three/examples/jsm/nodes/Nodes.d.ts +0 -106
  54. three/examples/jsm/nodes/accessors/CameraNode.d.ts +0 -29
  55. three/examples/jsm/nodes/accessors/ColorsNode.d.ts +0 -10
  56. three/examples/jsm/nodes/accessors/LightNode.d.ts +0 -12
  57. three/examples/jsm/nodes/accessors/NormalNode.d.ts +0 -13
  58. three/examples/jsm/nodes/accessors/PositionNode.d.ts +0 -15
  59. three/examples/jsm/nodes/accessors/ReflectNode.d.ts +0 -12
  60. three/examples/jsm/nodes/accessors/ResolutionNode.d.ts +0 -14
  61. three/examples/jsm/nodes/accessors/ScreenUVNode.d.ts +0 -11
  62. three/examples/jsm/nodes/accessors/UVNode.d.ts +0 -10
  63. three/examples/jsm/nodes/core/AttributeNode.d.ts +0 -13
  64. three/examples/jsm/nodes/core/ConstNode.d.ts +0 -22
  65. three/examples/jsm/nodes/core/ExpressionNode.d.ts +0 -5
  66. three/examples/jsm/nodes/core/FunctionCallNode.d.ts +0 -17
  67. three/examples/jsm/nodes/core/FunctionNode.d.ts +0 -28
  68. three/examples/jsm/nodes/core/InputNode.d.ts +0 -12
  69. three/examples/jsm/nodes/core/Node.d.ts +0 -34
  70. three/examples/jsm/nodes/core/NodeBuilder.d.ts +0 -149
  71. three/examples/jsm/nodes/core/NodeFrame.d.ts +0 -17
  72. three/examples/jsm/nodes/core/NodeLib.d.ts +0 -22
  73. three/examples/jsm/nodes/core/NodeUniform.d.ts +0 -17
  74. three/examples/jsm/nodes/core/NodeUtils.d.ts +0 -7
  75. three/examples/jsm/nodes/core/StructNode.d.ts +0 -19
  76. three/examples/jsm/nodes/core/TempNode.d.ts +0 -23
  77. three/examples/jsm/nodes/core/VarNode.d.ts +0 -12
  78. three/examples/jsm/nodes/effects/BlurNode.d.ts +0 -31
  79. three/examples/jsm/nodes/effects/ColorAdjustmentNode.d.ts +0 -27
  80. three/examples/jsm/nodes/effects/LuminanceNode.d.ts +0 -18
  81. three/examples/jsm/nodes/inputs/BoolNode.d.ts +0 -19
  82. three/examples/jsm/nodes/inputs/ColorNode.d.ts +0 -21
  83. three/examples/jsm/nodes/inputs/CubeTextureNode.d.ts +0 -17
  84. three/examples/jsm/nodes/inputs/FloatNode.d.ts +0 -19
  85. three/examples/jsm/nodes/inputs/IntNode.d.ts +0 -19
  86. three/examples/jsm/nodes/inputs/Matrix3Node.d.ts +0 -22
  87. three/examples/jsm/nodes/inputs/Matrix4Node.d.ts +0 -22
  88. three/examples/jsm/nodes/inputs/PropertyNode.d.ts +0 -10
  89. three/examples/jsm/nodes/inputs/RTTNode.d.ts +0 -27
  90. three/examples/jsm/nodes/inputs/ReflectorNode.d.ts +0 -21
  91. three/examples/jsm/nodes/inputs/ScreenNode.d.ts +0 -11
  92. three/examples/jsm/nodes/inputs/TextureNode.d.ts +0 -20
  93. three/examples/jsm/nodes/inputs/Vector2Node.d.ts +0 -21
  94. three/examples/jsm/nodes/inputs/Vector3Node.d.ts +0 -21
  95. three/examples/jsm/nodes/inputs/Vector4Node.d.ts +0 -21
  96. three/examples/jsm/nodes/materials/BasicNodeMaterial.d.ts +0 -11
  97. three/examples/jsm/nodes/materials/MeshStandardNodeMaterial.d.ts +0 -21
  98. three/examples/jsm/nodes/materials/NodeMaterial.d.ts +0 -28
  99. three/examples/jsm/nodes/materials/PhongNodeMaterial.d.ts +0 -21
  100. three/examples/jsm/nodes/materials/SpriteNodeMaterial.d.ts +0 -12
  101. three/examples/jsm/nodes/materials/StandardNodeMaterial.d.ts +0 -25
  102. three/examples/jsm/nodes/materials/nodes/BasicNode.d.ts +0 -15
  103. three/examples/jsm/nodes/materials/nodes/MeshStandardNode.d.ts +0 -25
  104. three/examples/jsm/nodes/materials/nodes/PhongNode.d.ts +0 -14
  105. three/examples/jsm/nodes/materials/nodes/RawNode.d.ts +0 -10
  106. three/examples/jsm/nodes/materials/nodes/SpriteNode.d.ts +0 -13
  107. three/examples/jsm/nodes/materials/nodes/StandardNode.d.ts +0 -15
  108. three/examples/jsm/nodes/math/CondNode.d.ts +0 -26
  109. three/examples/jsm/nodes/math/MathNode.d.ts +0 -57
  110. three/examples/jsm/nodes/math/OperatorNode.d.ts +0 -17
  111. three/examples/jsm/nodes/misc/BumpMapNode.d.ts +0 -21
  112. three/examples/jsm/nodes/misc/NormalMapNode.d.ts +0 -19
  113. three/examples/jsm/nodes/misc/TextureCubeNode.d.ts +0 -21
  114. three/examples/jsm/nodes/misc/TextureCubeUVNode.d.ts +0 -18
  115. three/examples/jsm/nodes/postprocessing/NodePass.d.ts +0 -15
  116. three/examples/jsm/nodes/postprocessing/NodePostProcessing.d.ts +0 -26
  117. three/examples/jsm/nodes/procedural/CheckerNode.d.ts +0 -17
  118. three/examples/jsm/nodes/procedural/NoiseNode.d.ts +0 -17
  119. three/examples/jsm/nodes/utils/BypassNode.d.ts +0 -11
  120. three/examples/jsm/nodes/utils/ColorSpaceNode.d.ts +0 -55
  121. three/examples/jsm/nodes/utils/JoinNode.d.ts +0 -15
  122. three/examples/jsm/nodes/utils/MaxMIPLevelNode.d.ts +0 -11
  123. three/examples/jsm/nodes/utils/SpecularMIPLevelNode.d.ts +0 -17
  124. three/examples/jsm/nodes/utils/SubSlot.d.ts +0 -9
  125. three/examples/jsm/nodes/utils/SwitchNode.d.ts +0 -11
  126. three/examples/jsm/nodes/utils/TimerNode.d.ts +0 -19
  127. three/examples/jsm/nodes/utils/UVTransformNode.d.ts +0 -15
  128. three/examples/jsm/nodes/utils/VelocityNode.d.ts +0 -28
  129. three/examples/jsm/objects/ReflectorRTT.d.ts +0 -6
  130. three/examples/jsm/utils/RoughnessMipmapper.d.ts +0 -7
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: Mon, 03 Jan 2022 15:01:28 GMT
11
+ * Last updated: Wed, 02 Mar 2022 16:01:44 GMT
12
12
  * Dependencies: none
13
13
  * Global values: `THREE`
14
14
 
@@ -1,7 +1,9 @@
1
- export namespace WEBGL {
1
+ declare namespace WEBGL {
2
2
  function isWebGLAvailable(): boolean;
3
3
  function isWebGL2Available(): boolean;
4
4
  function getWebGLErrorMessage(): HTMLElement;
5
5
  function getWebGL2ErrorMessage(): HTMLElement;
6
6
  function getErrorMessage(version: number): HTMLElement;
7
7
  }
8
+
9
+ export default WEBGL;
@@ -42,11 +42,14 @@ export class OrbitControls {
42
42
  autoRotate: boolean;
43
43
  autoRotateSpeed: number;
44
44
 
45
- enableKeys: boolean;
46
45
  keys: { LEFT: string; UP: string; RIGHT: string; BOTTOM: string };
47
46
  mouseButtons: { LEFT: MOUSE; MIDDLE: MOUSE; RIGHT: MOUSE };
48
47
  touches: { ONE: TOUCH; TWO: TOUCH };
49
48
 
49
+ target0: Vector3;
50
+ position0: Vector3;
51
+ zoomO: number;
52
+
50
53
  update(): boolean;
51
54
 
52
55
  listenToKeyEvents(domElement: HTMLElement): void;
@@ -1,70 +1,68 @@
1
1
  import { Curve, Vector3 } from '../../../src/Three';
2
2
 
3
- export namespace Curves {
4
- class GrannyKnot extends Curve<Vector3> {
5
- constructor();
6
- }
3
+ export class GrannyKnot extends Curve<Vector3> {
4
+ constructor();
5
+ }
7
6
 
8
- class HeartCurve extends Curve<Vector3> {
9
- constructor(scale?: number);
10
- scale: number;
11
- }
7
+ export class HeartCurve extends Curve<Vector3> {
8
+ constructor(scale?: number);
9
+ scale: number;
10
+ }
12
11
 
13
- class VivianiCurve extends Curve<Vector3> {
14
- constructor(scale?: number);
15
- scale: number;
16
- }
12
+ export class VivianiCurve extends Curve<Vector3> {
13
+ constructor(scale?: number);
14
+ scale: number;
15
+ }
17
16
 
18
- class KnotCurve extends Curve<Vector3> {
19
- constructor();
20
- }
17
+ export class KnotCurve extends Curve<Vector3> {
18
+ constructor();
19
+ }
21
20
 
22
- class HelixCurve extends Curve<Vector3> {
23
- constructor();
24
- }
21
+ export class HelixCurve extends Curve<Vector3> {
22
+ constructor();
23
+ }
25
24
 
26
- class TrefoilKnot extends Curve<Vector3> {
27
- constructor(scale?: number);
28
- scale: number;
29
- }
25
+ export class TrefoilKnot extends Curve<Vector3> {
26
+ constructor(scale?: number);
27
+ scale: number;
28
+ }
30
29
 
31
- class TorusKnot extends Curve<Vector3> {
32
- constructor(scale?: number);
33
- scale: number;
34
- }
30
+ export class TorusKnot extends Curve<Vector3> {
31
+ constructor(scale?: number);
32
+ scale: number;
33
+ }
35
34
 
36
- class CinquefoilKnot extends Curve<Vector3> {
37
- constructor(scale?: number);
38
- scale: number;
39
- }
35
+ export class CinquefoilKnot extends Curve<Vector3> {
36
+ constructor(scale?: number);
37
+ scale: number;
38
+ }
40
39
 
41
- class TrefoilPolynomialKnot extends Curve<Vector3> {
42
- constructor(scale?: number);
43
- scale: number;
44
- }
40
+ export class TrefoilPolynomialKnot extends Curve<Vector3> {
41
+ constructor(scale?: number);
42
+ scale: number;
43
+ }
45
44
 
46
- class FigureEightPolynomialKnot extends Curve<Vector3> {
47
- constructor(scale?: number);
48
- scale: number;
49
- }
45
+ export class FigureEightPolynomialKnot extends Curve<Vector3> {
46
+ constructor(scale?: number);
47
+ scale: number;
48
+ }
50
49
 
51
- class DecoratedTorusKnot4a extends Curve<Vector3> {
52
- constructor(scale?: number);
53
- scale: number;
54
- }
50
+ export class DecoratedTorusKnot4a extends Curve<Vector3> {
51
+ constructor(scale?: number);
52
+ scale: number;
53
+ }
55
54
 
56
- class DecoratedTorusKnot4b extends Curve<Vector3> {
57
- constructor(scale?: number);
58
- scale: number;
59
- }
55
+ export class DecoratedTorusKnot4b extends Curve<Vector3> {
56
+ constructor(scale?: number);
57
+ scale: number;
58
+ }
60
59
 
61
- class DecoratedTorusKnot5a extends Curve<Vector3> {
62
- constructor(scale?: number);
63
- scale: number;
64
- }
60
+ export class DecoratedTorusKnot5a extends Curve<Vector3> {
61
+ constructor(scale?: number);
62
+ scale: number;
63
+ }
65
64
 
66
- class DecoratedTorusKnot5c extends Curve<Vector3> {
67
- constructor(scale?: number);
68
- scale: number;
69
- }
65
+ export class DecoratedTorusKnot5c extends Curve<Vector3> {
66
+ constructor(scale?: number);
67
+ scale: number;
70
68
  }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @author sciecode / https://github.com/sciecode
3
+ *
4
+ * EXR format references: https://www.openexr.com/documentation/openexrfilelayout.pdf
5
+ */
6
+
7
+ import { WebGLRenderer, WebGLRenderTarget, TextureDataType } from '../../../src/Three';
8
+
9
+ export const NO_COMPRESSION: 0;
10
+ export const ZIPS_COMPRESSION: 2;
11
+ export const ZIP_COMPRESSION: 3;
12
+
13
+ export interface EXRExporterParseOptions {
14
+ compression?: number;
15
+ type?: TextureDataType;
16
+ }
17
+
18
+ export class EXRExporter {
19
+ parse(renderer: WebGLRenderer, renderTarget: WebGLRenderTarget, options?: EXRExporterParseOptions): Uint8Array;
20
+ }
@@ -1,5 +1,5 @@
1
1
  import { BufferGeometry, Vector3 } from '../../../src/Three';
2
2
 
3
3
  export class ConvexGeometry extends BufferGeometry {
4
- constructor(points: Vector3[]);
4
+ constructor(points?: Vector3[]);
5
5
  }
@@ -0,0 +1,14 @@
1
+ import { ColorRepresentation, LineSegments } from '../../../src/Three';
2
+ import { Octree } from '../math/Octree';
3
+
4
+ export class OctreeHelper extends LineSegments {
5
+ constructor(octree: Octree, color: ColorRepresentation);
6
+
7
+ octree: Octree;
8
+ color: ColorRepresentation;
9
+
10
+ /**
11
+ * @default 'OctreeHelper'
12
+ */
13
+ type: 'OctreeHelper' | string;
14
+ }
@@ -2,4 +2,5 @@ import { Mesh } from 'three';
2
2
 
3
3
  export class HTMLMesh extends Mesh {
4
4
  constructor(dom: HTMLElement);
5
+ dispose(): void;
5
6
  }
@@ -101,15 +101,8 @@ export class GLTFParser {
101
101
  loadBufferView: (bufferViewIndex: number) => Promise<ArrayBuffer>;
102
102
  loadAccessor: (accessorIndex: number) => Promise<BufferAttribute | InterleavedBufferAttribute>;
103
103
  loadTexture: (textureIndex: number) => Promise<Texture>;
104
- loadTextureImage: (
105
- textureIndex: number,
106
- /**
107
- * GLTF.Image
108
- * See: https://github.com/KhronosGroup/glTF/blob/master/specification/2.0/schema/image.schema.json
109
- */
110
- source: { [key: string]: any },
111
- loader: Loader,
112
- ) => Promise<Texture>;
104
+ loadTextureImage: (textureIndex: number, sourceIndex: number, loader: Loader) => Promise<Texture>;
105
+ loadImageSource: (sourceIndex: number, loader: Loader) => Promise<Texture>;
113
106
  assignTexture: (
114
107
  materialParams: { [key: string]: any },
115
108
  mapName: string,
@@ -1,6 +1,11 @@
1
1
  import { Loader, LoadingManager, Group, Material } from '../../../src/Three';
2
2
 
3
3
  export class LDrawLoader extends Loader {
4
+ materials: Material[];
5
+ materialsLibrary: Record<string, Material>;
6
+ fileMap: Record<string, string>;
7
+ smoothNormals: boolean;
8
+
4
9
  constructor(manager?: LoadingManager);
5
10
 
6
11
  load(
@@ -10,6 +15,7 @@ export class LDrawLoader extends Loader {
10
15
  onError?: (event: ErrorEvent) => void,
11
16
  ): void;
12
17
  loadAsync(url: string, onProgress?: (event: ProgressEvent) => void): Promise<Group>;
18
+ preloadMaterials(url: string): Promise<void>;
13
19
  setFileMap(fileMap: Record<string, string>): void;
14
20
  setMaterials(materials: Material[]): void;
15
21
 
@@ -1,9 +1,9 @@
1
- import { Loader, LoadingManager, DataTexture, DataTexture3D } from '../../../src/Three';
1
+ import { Loader, LoadingManager, DataTexture, Data3DTexture } from '../../../src/Three';
2
2
 
3
3
  export interface LUT3dlResult {
4
4
  size: number;
5
5
  texture: DataTexture;
6
- texture3D: DataTexture3D;
6
+ texture3D: Data3DTexture;
7
7
  }
8
8
 
9
9
  export class LUT3dlLoader extends Loader {
@@ -1,4 +1,4 @@
1
- import { Loader, LoadingManager, Vector3, DataTexture, DataTexture3D } from '../../../src/Three';
1
+ import { Loader, LoadingManager, Vector3, DataTexture, Data3DTexture } from '../../../src/Three';
2
2
 
3
3
  export interface LUTCubeResult {
4
4
  title: string;
@@ -6,7 +6,7 @@ export interface LUTCubeResult {
6
6
  domainMin: Vector3;
7
7
  domainMax: Vector3;
8
8
  texture: DataTexture;
9
- texture3D: DataTexture3D;
9
+ texture3D: Data3DTexture;
10
10
  }
11
11
 
12
12
  export class LUTCubeLoader extends Loader {
@@ -1,4 +1,4 @@
1
- import { DataTexture3D, Mesh, Loader, LoadingManager } from '../../../src/Three';
1
+ import { Data3DTexture, Mesh, Loader, LoadingManager } from '../../../src/Three';
2
2
 
3
3
  export interface Chunk {
4
4
  palette: number[];
@@ -23,6 +23,6 @@ export class VOXMesh extends Mesh {
23
23
  constructor(chunk: Chunk);
24
24
  }
25
25
 
26
- export class VOXDataTexture3D extends DataTexture3D {
26
+ export class VOXData3DTexture extends Data3DTexture {
27
27
  constructor(chunk: Chunk);
28
28
  }
@@ -14,7 +14,7 @@ export class OBB {
14
14
  containsPoint(point: Vector3): boolean;
15
15
  intersectsBox3(box3: Box3): boolean;
16
16
  intersectsSphere(sphere: Sphere): boolean;
17
- intersectsOBB(obb: OBB, epsilon: number): boolean;
17
+ intersectsOBB(obb: OBB, epsilon?: number): boolean;
18
18
  intersectsPlane(plane: Plane): boolean;
19
19
  intersectRay(ray: Ray, result: Vector3): Vector3 | null;
20
20
  intersectsRay(ray: Ray): boolean;
@@ -7,6 +7,7 @@ export interface ReflectorOptions {
7
7
  clipBias?: number;
8
8
  shader?: object;
9
9
  encoding?: TextureEncoding;
10
+ multisample?: number;
10
11
  }
11
12
 
12
13
  export class Reflector extends Mesh {
@@ -7,6 +7,7 @@ export interface RefractorOptions {
7
7
  clipBias?: number;
8
8
  shader?: object;
9
9
  encoding?: TextureEncoding;
10
+ multisample?: number;
10
11
  }
11
12
 
12
13
  export class Refractor extends Mesh {
@@ -1,13 +1,13 @@
1
- import { DataTexture, DataTexture3D } from '../../../src/Three';
1
+ import { DataTexture, Data3DTexture } from '../../../src/Three';
2
2
  import { ShaderPass } from './ShaderPass';
3
3
 
4
4
  export interface LUTPassParameters {
5
- lut?: DataTexture | DataTexture3D;
5
+ lut?: DataTexture | Data3DTexture;
6
6
  intensity?: number;
7
7
  }
8
8
 
9
9
  export class LUTPass extends ShaderPass {
10
- lut?: DataTexture | DataTexture3D;
10
+ lut?: DataTexture | Data3DTexture;
11
11
  intensity?: number;
12
12
  constructor(params: LUTPassParameters);
13
13
  }
@@ -0,0 +1,5 @@
1
+ import { Group, Object3D } from '../../../src/Three';
2
+
3
+ export namespace LDrawUtils {
4
+ function mergeObject(object: Object3D): Group;
5
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * `PackedPhongMaterial` inherited from THREE.MeshPhongMaterial
3
+ *
4
+ * @param {Object} parameters
5
+ */
6
+ import { MeshPhongMaterial, MeshPhongMaterialParameters } from '../../../src/Three';
7
+
8
+ export class PackedPhongMaterial extends MeshPhongMaterial {
9
+ constructor(parameters: MeshPhongMaterialParameters);
10
+ }
@@ -1,14 +1,12 @@
1
1
  import { BufferGeometry, Group, InstancedMesh, Material, Object3D, Scene } from '../../../src/Three';
2
2
 
3
- export namespace SceneUtils {
4
- function createMeshesFromInstancedMesh(instancedMesh: InstancedMesh): Group;
5
- function createMultiMaterialObject(geometry: BufferGeometry, materials: Material[]): Group;
6
- /**
7
- * @deprecated Use scene.attach( child ) instead.
8
- */
9
- function detach(child: Object3D, parent: Object3D, scene: Scene): void;
10
- /**
11
- * @deprecated Use parent.attach( child ) instead.
12
- */
13
- function attach(child: Object3D, scene: Scene, parent: Object3D): void;
14
- }
3
+ export function createMeshesFromInstancedMesh(instancedMesh: InstancedMesh): Group;
4
+ export function createMultiMaterialObject(geometry: BufferGeometry, materials: Material[]): Group;
5
+ /**
6
+ * @deprecated Use scene.attach( child ) instead.
7
+ */
8
+ export function detach(child: Object3D, parent: Object3D, scene: Scene): void;
9
+ /**
10
+ * @deprecated Use parent.attach( child ) instead.
11
+ */
12
+ export function attach(child: Object3D, scene: Scene, parent: Object3D): void;
three/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- // Type definitions for three 0.136
1
+ // Type definitions for three 0.138
2
2
  // Project: https://threejs.org/
3
3
  // Definitions by: Josh Ellis <https://github.com/joshuaellis>
4
4
  // Nathan Bierema <https://github.com/Methuselah96>
three/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@types/three",
3
- "version": "0.136.0",
3
+ "version": "0.138.0",
4
4
  "description": "TypeScript definitions for three",
5
5
  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/three",
6
6
  "license": "MIT",
@@ -25,6 +25,6 @@
25
25
  },
26
26
  "scripts": {},
27
27
  "dependencies": {},
28
- "typesPublisherContentHash": "fc646ca261a81275f767c4d73525a7edd6d769ac837d7a54015dad64f2d216e1",
29
- "typeScriptVersion": "3.8"
28
+ "typesPublisherContentHash": "7873774346bfbeaa8143902909709f9b2a5154afc0017f590bff41e5d3e5e0b7",
29
+ "typeScriptVersion": "3.9"
30
30
  }
three/src/Three.d.ts CHANGED
@@ -181,6 +181,8 @@ export * from './renderers/WebGLMultipleRenderTargets';
181
181
  export * from './renderers/WebGLRenderTarget';
182
182
  export * from './renderers/WebGLRenderer';
183
183
  export * from './renderers/WebGL1Renderer';
184
+ export * from './renderers/WebGL3DRenderTarget';
185
+ export * from './renderers/WebGLArrayRenderTarget';
184
186
  export * from './renderers/shaders/ShaderLib';
185
187
  export * from './renderers/shaders/UniformsLib';
186
188
  export * from './renderers/shaders/UniformsUtils';
@@ -222,7 +224,10 @@ export * from './textures/DataTexture2DArray';
222
224
  export * from './textures/DataTexture3D';
223
225
  export * from './textures/CompressedTexture';
224
226
  export * from './textures/CubeTexture';
227
+ export * from './textures/Data3DTexture';
228
+ export * from './textures/DataArrayTexture';
225
229
  export * from './textures/CanvasTexture';
226
230
  export * from './textures/DepthTexture';
227
231
  export * from './textures/FramebufferTexture';
232
+ export * from './textures/Source';
228
233
  export * from './textures/Texture';
three/src/constants.d.ts CHANGED
@@ -105,6 +105,7 @@ export const LinearToneMapping: ToneMapping;
105
105
  export const ReinhardToneMapping: ToneMapping;
106
106
  export const CineonToneMapping: ToneMapping;
107
107
  export const ACESFilmicToneMapping: ToneMapping;
108
+ export const CustomToneMapping: ToneMapping;
108
109
 
109
110
  // Mapping modes
110
111
  export enum Mapping {}
@@ -147,13 +148,11 @@ export const FloatType: TextureDataType;
147
148
  export const HalfFloatType: TextureDataType;
148
149
  export const UnsignedShort4444Type: TextureDataType;
149
150
  export const UnsignedShort5551Type: TextureDataType;
150
- export const UnsignedShort565Type: TextureDataType;
151
151
  export const UnsignedInt248Type: TextureDataType;
152
152
 
153
153
  // Pixel formats
154
154
  export enum PixelFormat {}
155
155
  export const AlphaFormat: PixelFormat;
156
- export const RGBFormat: PixelFormat;
157
156
  export const RGBAFormat: PixelFormat;
158
157
  export const LuminanceFormat: PixelFormat;
159
158
  export const LuminanceAlphaFormat: PixelFormat;
@@ -163,8 +162,9 @@ export const RedFormat: PixelFormat;
163
162
  export const RedIntegerFormat: PixelFormat;
164
163
  export const RGFormat: PixelFormat;
165
164
  export const RGIntegerFormat: PixelFormat;
166
- export const RGBIntegerFormat: PixelFormat;
167
165
  export const RGBAIntegerFormat: PixelFormat;
166
+ export const _SRGBFormat: PixelFormat; // fallback for WebGL 1
167
+ export const _SRGBAFormat: PixelFormat; // fallback for WebGL 1
168
168
 
169
169
  // Internal Pixel Formats
170
170
  export type PixelFormatGPU =
@@ -223,6 +223,7 @@ export type PixelFormatGPU =
223
223
  | 'RGB10_A2'
224
224
  | 'RGB10_A2UI'
225
225
  | 'SRGB8_ALPHA8'
226
+ | 'SRGB8'
226
227
  | 'DEPTH_COMPONENT16'
227
228
  | 'DEPTH_COMPONENT24'
228
229
  | 'DEPTH_COMPONENT32F'
@@ -263,20 +264,6 @@ export const RGBA_ASTC_10x8_Format: CompressedPixelFormat;
263
264
  export const RGBA_ASTC_10x10_Format: CompressedPixelFormat;
264
265
  export const RGBA_ASTC_12x10_Format: CompressedPixelFormat;
265
266
  export const RGBA_ASTC_12x12_Format: CompressedPixelFormat;
266
- export const SRGB8_ALPHA8_ASTC_4x4_Format: CompressedPixelFormat;
267
- export const SRGB8_ALPHA8_ASTC_5x4_Format: CompressedPixelFormat;
268
- export const SRGB8_ALPHA8_ASTC_5x5_Format: CompressedPixelFormat;
269
- export const SRGB8_ALPHA8_ASTC_6x5_Format: CompressedPixelFormat;
270
- export const SRGB8_ALPHA8_ASTC_6x6_Format: CompressedPixelFormat;
271
- export const SRGB8_ALPHA8_ASTC_8x5_Format: CompressedPixelFormat;
272
- export const SRGB8_ALPHA8_ASTC_8x6_Format: CompressedPixelFormat;
273
- export const SRGB8_ALPHA8_ASTC_8x8_Format: CompressedPixelFormat;
274
- export const SRGB8_ALPHA8_ASTC_10x5_Format: CompressedPixelFormat;
275
- export const SRGB8_ALPHA8_ASTC_10x6_Format: CompressedPixelFormat;
276
- export const SRGB8_ALPHA8_ASTC_10x8_Format: CompressedPixelFormat;
277
- export const SRGB8_ALPHA8_ASTC_10x10_Format: CompressedPixelFormat;
278
- export const SRGB8_ALPHA8_ASTC_12x10_Format: CompressedPixelFormat;
279
- export const SRGB8_ALPHA8_ASTC_12x12_Format: CompressedPixelFormat;
280
267
 
281
268
  // BPTC compressed texture formats
282
269
  export const RGBA_BPTC_Format: CompressedPixelFormat;
@@ -315,8 +302,6 @@ export enum TextureEncoding {}
315
302
  export const LinearEncoding: TextureEncoding;
316
303
  export const sRGBEncoding: TextureEncoding;
317
304
  export const LogLuvEncoding: TextureEncoding;
318
- export const RGBM7Encoding: TextureEncoding;
319
- export const RGBM16Encoding: TextureEncoding;
320
305
 
321
306
  // Depth packing strategies
322
307
  export enum DepthPackingStrategies {}
@@ -22,6 +22,7 @@ export interface Intersection<TIntersected extends Object3D = Object3D> {
22
22
  faceIndex?: number | undefined;
23
23
  object: TIntersected;
24
24
  uv?: Vector2 | undefined;
25
+ uv2?: Vector2 | undefined;
25
26
  instanceId?: number | undefined;
26
27
  }
27
28
 
@@ -94,7 +95,7 @@ export class Raycaster {
94
95
  /**
95
96
  * Checks all intersection between the ray and the object with or without the descendants. Intersections are returned sorted by distance, closest first.
96
97
  * @param object The object to check for intersection with the ray.
97
- * @param recursive If true, it also checks all descendants. Otherwise it only checks intersecton with the object. Default is false.
98
+ * @param recursive If true, it also checks all descendants. Otherwise it only checks intersecton with the object. Default is true.
98
99
  * @param optionalTarget (optional) target to set the result. Otherwise a new Array is instantiated. If set, you must clear this array prior to each call (i.e., array.length = 0;).
99
100
  */
100
101
  intersectObject<TIntersected extends Object3D>(
@@ -108,7 +109,7 @@ export class Raycaster {
108
109
  * Intersections are returned sorted by distance, closest first.
109
110
  * Intersections are of the same form as those returned by .intersectObject.
110
111
  * @param objects The objects to check for intersection with the ray.
111
- * @param recursive If true, it also checks all descendants of the objects. Otherwise it only checks intersecton with the objects. Default is false.
112
+ * @param recursive If true, it also checks all descendants of the objects. Otherwise it only checks intersecton with the objects. Default is true.
112
113
  * @param optionalTarget (optional) target to set the result. Otherwise a new Array is instantiated. If set, you must clear this array prior to each call (i.e., array.length = 0;).
113
114
  */
114
115
  intersectObjects<TIntersected extends Object3D>(
@@ -28,4 +28,6 @@ export namespace ImageUtils {
28
28
  onLoad?: (texture: Texture) => void,
29
29
  onError?: (message: string) => void,
30
30
  ): Texture;
31
+
32
+ function sRGBToLinear(image: any): HTMLCanvasElement | { data: number[]; width: number; height: number };
31
33
  }
@@ -7,8 +7,8 @@ import { Scene } from '../scenes/Scene';
7
7
  export class PMREMGenerator {
8
8
  constructor(renderer: WebGLRenderer);
9
9
  fromScene(scene: Scene, sigma?: number, near?: number, far?: number): WebGLRenderTarget;
10
- fromEquirectangular(equirectangular: Texture): WebGLRenderTarget;
11
- fromCubemap(cubemap: CubeTexture): WebGLRenderTarget;
10
+ fromEquirectangular(equirectangular: Texture, renderTarget?: WebGLRenderTarget | null): WebGLRenderTarget;
11
+ fromCubemap(cubemap: CubeTexture, renderTarget?: WebGLRenderTarget | null): WebGLRenderTarget;
12
12
  compileCubemapShader(): void;
13
13
  compileEquirectangularShader(): void;
14
14
  dispose(): void;
@@ -80,6 +80,11 @@ export class Material extends EventDispatcher {
80
80
  */
81
81
  alphaToCoverage: boolean;
82
82
 
83
+ /**
84
+ * @default false
85
+ */
86
+ alphaWrite: boolean;
87
+
83
88
  /**
84
89
  * Blending destination. It's one of the blending mode constants defined in Three.js. Default is {@link OneMinusSrcAlphaFactor}.
85
90
  * @default THREE.OneMinusSrcAlphaFactor
@@ -181,12 +186,6 @@ export class Material extends EventDispatcher {
181
186
  */
182
187
  fog: boolean;
183
188
 
184
- /**
185
- * When this property is set to THREE.RGBFormat, the material is considered to be opaque and alpha values are ignored.
186
- * @default THREE.RGBAFormat
187
- */
188
- format: PixelFormat;
189
-
190
189
  /**
191
190
  * Unique number of this material instance.
192
191
  */
three/src/math/Box3.d.ts CHANGED
@@ -25,7 +25,7 @@ export class Box3 {
25
25
  setFromBufferAttribute(bufferAttribute: BufferAttribute): this;
26
26
  setFromPoints(points: Vector3[]): this;
27
27
  setFromCenterAndSize(center: Vector3, size: Vector3): this;
28
- setFromObject(object: Object3D): this;
28
+ setFromObject(object: Object3D, precise?: boolean): this;
29
29
  clone(): this;
30
30
  copy(box: Box3): this;
31
31
  makeEmpty(): this;
@@ -35,7 +35,7 @@ export class Box3 {
35
35
  expandByPoint(point: Vector3): this;
36
36
  expandByVector(vector: Vector3): this;
37
37
  expandByScalar(scalar: number): this;
38
- expandByObject(object: Object3D): this;
38
+ expandByObject(object: Object3D, precise?: boolean): this;
39
39
  containsPoint(point: Vector3): boolean;
40
40
  containsBox(box: Box3): boolean;
41
41
  getParameter(point: Vector3, target: Vector3): Vector3;
three/src/math/Color.d.ts CHANGED
@@ -7,6 +7,8 @@ export interface HSL {
7
7
  l: number;
8
8
  }
9
9
 
10
+ export function SRGBToLinear(c: number): number;
11
+
10
12
  /**
11
13
  * Represents a color. See also {@link ColorUtils}.
12
14
  *
three/src/math/Euler.d.ts CHANGED
@@ -38,7 +38,6 @@ export class Euler {
38
38
  equals(euler: Euler): boolean;
39
39
  fromArray(xyzo: any[]): Euler;
40
40
  toArray(array?: number[], offset?: number): number[];
41
- toVector3(optionalResult?: Vector3): Vector3;
42
41
  _onChange(callback: () => void): this;
43
42
 
44
43
  static RotationOrders: string[];
@@ -252,6 +252,11 @@ export class Vector3 implements Vector {
252
252
  setFromMatrixColumn(matrix: Matrix4, index: number): this;
253
253
  setFromMatrix3Column(matrix: Matrix3, index: number): this;
254
254
 
255
+ /**
256
+ * Sets this vector's {@link x}, {@link y} and {@link z} components from the x, y, and z components of the specified {@link Euler Euler Angle}.
257
+ */
258
+ setFromEuler(e: Euler): this;
259
+
255
260
  /**
256
261
  * Checks for strict equality of this vector and v.
257
262
  */