@types/three 0.132.2 → 0.135.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/ArcballControls.d.ts +160 -0
- three/examples/jsm/controls/DragControls.d.ts +2 -1
- three/examples/jsm/csm/CSM.d.ts +47 -22
- three/examples/jsm/csm/CSMFrustum.d.ts +19 -0
- three/examples/jsm/csm/CSMHelper.d.ts +20 -7
- three/examples/jsm/csm/CSMShader.d.ts +4 -0
- three/examples/jsm/exporters/GLTFExporter.d.ts +1 -0
- three/examples/jsm/geometries/ParametricGeometries.d.ts +4 -2
- three/{src → examples/jsm}/geometries/ParametricGeometry.d.ts +2 -3
- three/{src → examples/jsm}/geometries/TextGeometry.d.ts +3 -2
- three/examples/jsm/lines/LineSegmentsGeometry.d.ts +2 -2
- three/{src → examples/jsm}/loaders/FontLoader.d.ts +14 -3
- three/examples/jsm/loaders/GLTFLoader.d.ts +25 -2
- three/examples/jsm/loaders/LogLuvLoader.d.ts +19 -0
- three/examples/jsm/misc/GPUComputationRenderer.d.ts +8 -6
- three/examples/jsm/modifiers/TessellateModifier.d.ts +1 -1
- three/examples/jsm/nodes/inputs/ColorNode.d.ts +1 -1
- three/examples/jsm/nodes/materials/StandardNodeMaterial.d.ts +1 -1
- three/examples/jsm/nodes/materials/nodes/StandardNode.d.ts +1 -1
- three/examples/jsm/objects/MarchingCubes.d.ts +11 -5
- three/examples/jsm/postprocessing/SSRPass.d.ts +0 -3
- three/examples/jsm/postprocessing/SSRrPass.d.ts +0 -17
- three/examples/jsm/renderers/CSS2DRenderer.d.ts +5 -1
- three/examples/jsm/renderers/CSS3DRenderer.d.ts +5 -1
- three/examples/jsm/webxr/OculusHandPointerModel.d.ts +3 -3
- three/index.d.ts +1 -1
- three/package.json +3 -3
- three/src/Three.d.ts +0 -3
- three/src/cameras/OrthographicCamera.d.ts +1 -1
- three/src/core/Layers.d.ts +1 -0
- three/src/core/Object3D.d.ts +40 -8
- three/src/core/Raycaster.d.ts +12 -4
- three/src/extras/core/CurvePath.d.ts +1 -1
- three/src/geometries/EdgesGeometry.d.ts +3 -2
- three/src/geometries/ExtrudeGeometry.d.ts +1 -1
- three/src/geometries/Geometries.d.ts +0 -2
- three/src/geometries/LatheGeometry.d.ts +1 -1
- three/src/geometries/PolyhedronGeometry.d.ts +1 -1
- three/src/geometries/ShapeGeometry.d.ts +1 -1
- three/src/geometries/TubeGeometry.d.ts +1 -1
- three/src/geometries/WireframeGeometry.d.ts +6 -2
- three/src/lights/DirectionalLight.d.ts +1 -1
- three/src/lights/LightShadow.d.ts +3 -3
- three/src/loaders/LoaderUtils.d.ts +1 -0
- three/src/materials/Material.d.ts +1 -1
- three/src/materials/MeshPhysicalMaterial.d.ts +29 -7
- three/src/math/Quaternion.d.ts +2 -0
- three/src/math/Triangle.d.ts +10 -1
- three/src/math/Vector3.d.ts +2 -0
- three/src/renderers/WebGLRenderer.d.ts +11 -7
- three/src/renderers/webgl/WebGLRenderLists.d.ts +0 -3
- three/src/textures/Texture.d.ts +6 -0
- three/examples/jsm/controls/DeviceOrientationControls.d.ts +0 -19
- three/examples/jsm/csm/Frustum.d.ts +0 -16
- three/examples/jsm/csm/Shader.d.ts +0 -6
- three/src/extras/core/Font.d.ts +0 -14
- three/src/extras/objects/ImmediateRenderObject.d.ts +0 -59
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: Mon, 06 Dec 2021 23:31:03 GMT
|
|
12
12
|
* Dependencies: none
|
|
13
13
|
* Global values: `THREE`
|
|
14
14
|
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { EventDispatcher, Camera, Scene, Vector3, Raycaster } from '../../../src/Three';
|
|
2
|
+
|
|
3
|
+
export enum ArcballControlsMouseActionOperations {
|
|
4
|
+
PAN = 'PAN',
|
|
5
|
+
ROTATE = 'ROTATE',
|
|
6
|
+
ZOOM = 'ZOOM',
|
|
7
|
+
FOV = 'FOV',
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export type ArcballControlsMouseActionMouse = 0 | 1 | 2 | 'WHEEL';
|
|
11
|
+
|
|
12
|
+
export enum ArcballControlsMouseActionKeys {
|
|
13
|
+
SHIFT = 'SHIFT',
|
|
14
|
+
CTRL = 'CTRL',
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export class ArcballControls extends EventDispatcher {
|
|
18
|
+
camera: Camera | null;
|
|
19
|
+
domElement: HTMLElement;
|
|
20
|
+
scene?: Scene | null | undefined;
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* @default 500
|
|
24
|
+
*/
|
|
25
|
+
focusAnimationTime: number;
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* @default true
|
|
29
|
+
*/
|
|
30
|
+
enabled: boolean;
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* @default true
|
|
34
|
+
*/
|
|
35
|
+
enablePan: boolean;
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* @default true
|
|
39
|
+
*/
|
|
40
|
+
enableRotate: boolean;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* @default true
|
|
44
|
+
*/
|
|
45
|
+
enableZoom: boolean;
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* @default true
|
|
49
|
+
*/
|
|
50
|
+
enableGizmos: boolean;
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* @default true
|
|
54
|
+
*/
|
|
55
|
+
adjustNearFar: boolean;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* @default 1.1
|
|
59
|
+
*/
|
|
60
|
+
scaleFactor: number;
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* @default 25
|
|
64
|
+
*/
|
|
65
|
+
dampingFactor: number;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* @default 20
|
|
69
|
+
*/
|
|
70
|
+
wMax: number; // maximum angular velocity allowed
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* @default true
|
|
74
|
+
*/
|
|
75
|
+
enableAnimations: boolean; // if animations should be performed
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* @default false
|
|
79
|
+
*/
|
|
80
|
+
enableGrid: boolean; // if grid should be showed during pan operation
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* @default false
|
|
84
|
+
*/
|
|
85
|
+
cursorZoom: boolean; // if wheel zoom should be cursor centered
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* @default 5
|
|
89
|
+
*/
|
|
90
|
+
minFov: number;
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* @default 90
|
|
94
|
+
*/
|
|
95
|
+
maxFov: number;
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* @default 0
|
|
99
|
+
*/
|
|
100
|
+
minDistance: number;
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* @default Infinity
|
|
104
|
+
*/
|
|
105
|
+
maxDistance: number;
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* @default 0
|
|
109
|
+
*/
|
|
110
|
+
minZoom: number;
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* @default Infinity
|
|
114
|
+
*/
|
|
115
|
+
maxZoom: number;
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* @default Vector3(0,0,0)
|
|
119
|
+
*/
|
|
120
|
+
target: Vector3;
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* @default 0.67
|
|
124
|
+
*/
|
|
125
|
+
radiusFactor: number;
|
|
126
|
+
|
|
127
|
+
constructor(camera: Camera, domElement: HTMLElement, scene?: Scene | null);
|
|
128
|
+
|
|
129
|
+
getRaycaster(): Raycaster;
|
|
130
|
+
|
|
131
|
+
activateGizmos(isActive: boolean): void;
|
|
132
|
+
|
|
133
|
+
copyState(): void;
|
|
134
|
+
|
|
135
|
+
pasteState(): void;
|
|
136
|
+
|
|
137
|
+
saveState(): void;
|
|
138
|
+
|
|
139
|
+
reset(): void;
|
|
140
|
+
|
|
141
|
+
setCamera(camera: Camera): void;
|
|
142
|
+
|
|
143
|
+
setGizmosVisible(value: boolean): void;
|
|
144
|
+
|
|
145
|
+
setTbRadius(value: number): void;
|
|
146
|
+
|
|
147
|
+
setMouseAction(
|
|
148
|
+
operation: ArcballControlsMouseActionOperations,
|
|
149
|
+
mouse: ArcballControlsMouseActionMouse,
|
|
150
|
+
key?: ArcballControlsMouseActionKeys,
|
|
151
|
+
): boolean;
|
|
152
|
+
|
|
153
|
+
unsetMouseAction(mouse: ArcballControlsMouseActionMouse, key?: ArcballControlsMouseActionKeys): boolean;
|
|
154
|
+
|
|
155
|
+
setTarget(x: number, y: number, z: number): void;
|
|
156
|
+
|
|
157
|
+
update(): void;
|
|
158
|
+
|
|
159
|
+
dispose(): void;
|
|
160
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Camera, EventDispatcher, Object3D } from '../../../src/Three';
|
|
1
|
+
import { Camera, EventDispatcher, Object3D, Raycaster } from '../../../src/Three';
|
|
2
2
|
|
|
3
3
|
export class DragControls extends EventDispatcher {
|
|
4
4
|
constructor(objects: Object3D[], camera: Camera, domElement?: HTMLElement);
|
|
@@ -14,4 +14,5 @@ export class DragControls extends EventDispatcher {
|
|
|
14
14
|
deactivate(): void;
|
|
15
15
|
dispose(): void;
|
|
16
16
|
getObjects(): Object3D[];
|
|
17
|
+
getRaycaster(): Raycaster;
|
|
17
18
|
}
|
three/examples/jsm/csm/CSM.d.ts
CHANGED
|
@@ -1,36 +1,61 @@
|
|
|
1
|
+
import { Camera, Vector3, DirectionalLight, Material, Vector2, Object3D } from '../../../src/Three';
|
|
2
|
+
|
|
3
|
+
export enum CMSMode {
|
|
4
|
+
practical = 'practical',
|
|
5
|
+
uniform = 'uniform',
|
|
6
|
+
logarithmic = 'logarithmic',
|
|
7
|
+
custom = 'custom',
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface CMSParameters {
|
|
11
|
+
camera?: Camera;
|
|
12
|
+
parent?: Object3D;
|
|
13
|
+
cascades?: number;
|
|
14
|
+
maxFar?: number;
|
|
15
|
+
mode?: CMSMode;
|
|
16
|
+
shadowMapSize?: number;
|
|
17
|
+
shadowBias?: number;
|
|
18
|
+
lightDirection?: Vector3;
|
|
19
|
+
lightIntensity?: number;
|
|
20
|
+
lightNear?: number;
|
|
21
|
+
lightFar?: number;
|
|
22
|
+
lightMargin?: number;
|
|
23
|
+
customSplitsCallback?: (cascades: number, cameraNear: number, cameraFar: number, breaks: number[]) => void;
|
|
24
|
+
}
|
|
25
|
+
|
|
1
26
|
export class CSM {
|
|
2
|
-
constructor(data
|
|
3
|
-
camera:
|
|
4
|
-
parent:
|
|
5
|
-
cascades:
|
|
6
|
-
maxFar:
|
|
7
|
-
mode:
|
|
8
|
-
shadowMapSize:
|
|
9
|
-
shadowBias:
|
|
10
|
-
lightDirection:
|
|
11
|
-
lightIntensity:
|
|
12
|
-
lightNear:
|
|
13
|
-
lightFar:
|
|
14
|
-
lightMargin:
|
|
15
|
-
customSplitsCallback:
|
|
27
|
+
constructor(data?: CMSParameters);
|
|
28
|
+
camera: Camera;
|
|
29
|
+
parent: Object3D;
|
|
30
|
+
cascades: number;
|
|
31
|
+
maxFar: number;
|
|
32
|
+
mode: CMSMode;
|
|
33
|
+
shadowMapSize: number;
|
|
34
|
+
shadowBias: number;
|
|
35
|
+
lightDirection: Vector3;
|
|
36
|
+
lightIntensity: number;
|
|
37
|
+
lightNear: number;
|
|
38
|
+
lightFar: number;
|
|
39
|
+
lightMargin: number;
|
|
40
|
+
customSplitsCallback: (cascades: number, cameraNear: number, cameraFar: number, breaks: number[]) => void;
|
|
16
41
|
fade: boolean;
|
|
17
|
-
mainFrustum:
|
|
18
|
-
frustums:
|
|
19
|
-
breaks:
|
|
20
|
-
lights:
|
|
21
|
-
shaders: Map<
|
|
42
|
+
mainFrustum: CSMFrustrum;
|
|
43
|
+
frustums: CSMFrustrum[];
|
|
44
|
+
breaks: number[];
|
|
45
|
+
lights: DirectionalLight[];
|
|
46
|
+
shaders: Map<unknown, string>;
|
|
22
47
|
createLights(): void;
|
|
23
48
|
initCascades(): void;
|
|
24
49
|
updateShadowBounds(): void;
|
|
25
50
|
getBreaks(): void;
|
|
26
51
|
update(): void;
|
|
27
52
|
injectInclude(): void;
|
|
28
|
-
setupMaterial(material:
|
|
53
|
+
setupMaterial(material: Material): void;
|
|
29
54
|
updateUniforms(): void;
|
|
30
|
-
getExtendedBreaks(target:
|
|
55
|
+
getExtendedBreaks(target: Vector2[]): void;
|
|
31
56
|
updateFrustums(): void;
|
|
32
57
|
remove(): void;
|
|
33
58
|
dispose(): void;
|
|
34
59
|
}
|
|
35
60
|
|
|
36
|
-
import
|
|
61
|
+
import CSMFrustrum from './CSMFrustum.js';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Matrix4, Vector3 } from '../../../src/Three';
|
|
2
|
+
|
|
3
|
+
export interface CSMFrustumVerticies {
|
|
4
|
+
near: Vector3[];
|
|
5
|
+
far: Vector3[];
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface CSMFrustumParameters {
|
|
9
|
+
projectionMatrix?: Matrix4;
|
|
10
|
+
maxFar?: number;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export default class CSMFrustum {
|
|
14
|
+
constructor(data?: CSMFrustumParameters);
|
|
15
|
+
vertices: CSMFrustumVerticies;
|
|
16
|
+
setFromProjectionMatrix(projectionMatrix: Matrix4, maxFar: number): CSMFrustumVerticies;
|
|
17
|
+
split(breaks: number[], target: CSMFrustum[]): void;
|
|
18
|
+
toSpace(cameraMatrix: Matrix4, target: CSMFrustum): void;
|
|
19
|
+
}
|
|
@@ -1,13 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import {
|
|
2
|
+
Box3Helper,
|
|
3
|
+
BufferGeometry,
|
|
4
|
+
Group,
|
|
5
|
+
LineBasicMaterial,
|
|
6
|
+
LineSegments,
|
|
7
|
+
Mesh,
|
|
8
|
+
MeshBasicMaterial,
|
|
9
|
+
PlaneGeometry,
|
|
10
|
+
} from '../../../src/Three';
|
|
11
|
+
|
|
12
|
+
import { CSM } from './CSM';
|
|
13
|
+
|
|
14
|
+
export class CSMHelper<TCSM extends CSM = CSM> extends Group {
|
|
15
|
+
constructor(csm: TCSM);
|
|
16
|
+
csm: TCSM;
|
|
4
17
|
displayFrustum: boolean;
|
|
5
18
|
displayPlanes: boolean;
|
|
6
19
|
displayShadowBounds: boolean;
|
|
7
|
-
frustumLines:
|
|
8
|
-
cascadeLines:
|
|
9
|
-
cascadePlanes:
|
|
10
|
-
shadowLines:
|
|
20
|
+
frustumLines: LineSegments<BufferGeometry, LineBasicMaterial>;
|
|
21
|
+
cascadeLines: Box3Helper[];
|
|
22
|
+
cascadePlanes: Array<Mesh<PlaneGeometry, MeshBasicMaterial>>;
|
|
23
|
+
shadowLines: Box3Helper[];
|
|
11
24
|
updateVisibility(): void;
|
|
12
25
|
update(): void;
|
|
13
26
|
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import { Curve,
|
|
1
|
+
import { Curve, Vector3 } from '../../../src/Three';
|
|
2
|
+
|
|
3
|
+
import { ParametricGeometry } from './ParametricGeometry';
|
|
2
4
|
|
|
3
5
|
export namespace ParametricGeometries {
|
|
4
6
|
function klein(v: number, u: number, target: Vector3): Vector3;
|
|
5
|
-
function plane(width: number, height: number, target: Vector3)
|
|
7
|
+
function plane(width: number, height: number): (u: number, v: number, target: Vector3) => Vector3;
|
|
6
8
|
function mobius(u: number, t: number, target: Vector3): Vector3;
|
|
7
9
|
function mobius3d(u: number, t: number, target: Vector3): Vector3;
|
|
8
10
|
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { Vector3 } from '
|
|
2
|
-
import { BufferGeometry } from './../core/BufferGeometry';
|
|
1
|
+
import { Vector3, BufferGeometry } from '../../../src/Three';
|
|
3
2
|
|
|
4
3
|
export class ParametricGeometry extends BufferGeometry {
|
|
5
|
-
constructor(func
|
|
4
|
+
constructor(func?: (u: number, v: number, target: Vector3) => void, slices?: number, stacks?: number);
|
|
6
5
|
|
|
7
6
|
/**
|
|
8
7
|
* @default 'ParametricGeometry'
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { ExtrudeGeometry } from '../../../src/Three';
|
|
2
|
+
|
|
3
|
+
import { Font } from '../loaders/FontLoader';
|
|
3
4
|
|
|
4
5
|
export interface TextGeometryParameters {
|
|
5
6
|
font: Font;
|
|
@@ -14,10 +14,10 @@ export class LineSegmentsGeometry extends InstancedBufferGeometry {
|
|
|
14
14
|
applyMatrix4(matrix: Matrix4): this;
|
|
15
15
|
computeBoundingBox(): void;
|
|
16
16
|
computeBoundingSphere(): void;
|
|
17
|
-
fromEdgesGeometry(geometry:
|
|
17
|
+
fromEdgesGeometry(geometry: EdgesGeometry): this;
|
|
18
18
|
fromLineSegments(lineSegments: LineSegments): this;
|
|
19
19
|
fromMesh(mesh: Mesh): this;
|
|
20
|
-
fromWireframeGeometry(geometry:
|
|
20
|
+
fromWireframeGeometry(geometry: WireframeGeometry): this;
|
|
21
21
|
setColors(array: number[] | Float32Array): this;
|
|
22
22
|
setPositions(array: number[] | Float32Array): this;
|
|
23
23
|
}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { Loader } from '
|
|
2
|
-
import { LoadingManager } from './LoadingManager';
|
|
3
|
-
import { Font } from './../extras/core/Font';
|
|
1
|
+
import { Shape, Loader, LoadingManager } from '../../../src/Three';
|
|
4
2
|
|
|
5
3
|
export class FontLoader extends Loader {
|
|
6
4
|
constructor(manager?: LoadingManager);
|
|
@@ -14,3 +12,16 @@ export class FontLoader extends Loader {
|
|
|
14
12
|
loadAsync(url: string, onProgress?: (event: ProgressEvent) => void): Promise<Font>;
|
|
15
13
|
parse(json: any): Font;
|
|
16
14
|
}
|
|
15
|
+
|
|
16
|
+
export class Font {
|
|
17
|
+
constructor(jsondata: any);
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @default 'Font'
|
|
21
|
+
*/
|
|
22
|
+
type: string;
|
|
23
|
+
|
|
24
|
+
data: string;
|
|
25
|
+
|
|
26
|
+
generateShapes(text: string, size: number): Shape[];
|
|
27
|
+
}
|
|
@@ -13,6 +13,9 @@ import {
|
|
|
13
13
|
Material,
|
|
14
14
|
SkinnedMesh,
|
|
15
15
|
Texture,
|
|
16
|
+
TextureLoader,
|
|
17
|
+
FileLoader,
|
|
18
|
+
ImageBitmapLoader,
|
|
16
19
|
} from '../../../src/Three';
|
|
17
20
|
|
|
18
21
|
import { DRACOLoader } from './DRACOLoader';
|
|
@@ -61,16 +64,35 @@ export class GLTFLoader extends Loader {
|
|
|
61
64
|
onLoad: (gltf: GLTF) => void,
|
|
62
65
|
onError?: (event: ErrorEvent) => void,
|
|
63
66
|
): void;
|
|
67
|
+
|
|
68
|
+
parseAsync(data: ArrayBuffer | string, path: string): Promise<void>;
|
|
64
69
|
}
|
|
65
70
|
|
|
71
|
+
export type GLTFReferenceType = 'materials' | 'nodes' | 'textures' | 'meshes';
|
|
72
|
+
|
|
66
73
|
export interface GLTFReference {
|
|
67
|
-
|
|
68
|
-
|
|
74
|
+
materials?: number;
|
|
75
|
+
nodes?: number;
|
|
76
|
+
textures?: number;
|
|
77
|
+
meshes?: number;
|
|
69
78
|
}
|
|
70
79
|
|
|
71
80
|
export class GLTFParser {
|
|
72
81
|
json: any;
|
|
73
82
|
|
|
83
|
+
options: {
|
|
84
|
+
path: string;
|
|
85
|
+
manager: LoadingManager;
|
|
86
|
+
ktx2Loader: KTX2Loader;
|
|
87
|
+
meshoptDecoder: /* MeshoptDecoder */ any;
|
|
88
|
+
crossOrigin: string;
|
|
89
|
+
requestHeader: { [header: string]: string };
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
fileLoader: FileLoader;
|
|
93
|
+
textureLoader: TextureLoader | ImageBitmapLoader;
|
|
94
|
+
plugins: GLTFLoaderPlugin;
|
|
95
|
+
extensions: { [name: string]: any };
|
|
74
96
|
associations: Map<Object3D | Material | Texture, GLTFReference>;
|
|
75
97
|
|
|
76
98
|
getDependency: (type: string, index: number) => Promise<any>;
|
|
@@ -131,5 +153,6 @@ export interface GLTFLoaderPlugin {
|
|
|
131
153
|
extendMaterialParams?:
|
|
132
154
|
| ((materialIndex: number, materialParams: { [key: string]: any }) => Promise<any> | null)
|
|
133
155
|
| undefined;
|
|
156
|
+
createNodeMesh?: ((nodeIndex: number) => Promise<Group | Mesh | SkinnedMesh> | null) | undefined;
|
|
134
157
|
createNodeAttachment?: ((nodeIndex: number) => Promise<Object3D> | null) | undefined;
|
|
135
158
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { DataTextureLoader, TextureDataType, LoadingManager, PixelFormat } from '../../../src/Three';
|
|
2
|
+
|
|
3
|
+
export interface LogLuv {
|
|
4
|
+
width: number;
|
|
5
|
+
height: number;
|
|
6
|
+
data: Uint16Array | Float32Array;
|
|
7
|
+
format: PixelFormat;
|
|
8
|
+
type: TextureDataType;
|
|
9
|
+
flipY: boolean;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export class LogLuvLoader extends DataTextureLoader {
|
|
13
|
+
type: TextureDataType;
|
|
14
|
+
constructor(manager: LoadingManager);
|
|
15
|
+
|
|
16
|
+
parse(buffer: Iterable<number>): LogLuv;
|
|
17
|
+
|
|
18
|
+
setDataType(value: TextureDataType): this;
|
|
19
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
WebGLRenderer,
|
|
3
|
-
|
|
3
|
+
WebGLRenderTarget,
|
|
4
4
|
Texture,
|
|
5
5
|
DataTexture,
|
|
6
6
|
Material,
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
Wrapping,
|
|
9
9
|
TextureFilter,
|
|
10
10
|
TextureDataType,
|
|
11
|
+
IUniform,
|
|
11
12
|
} from '../../../src/Three';
|
|
12
13
|
|
|
13
14
|
export interface Variable {
|
|
@@ -15,7 +16,7 @@ export interface Variable {
|
|
|
15
16
|
initialValueTexture: Texture;
|
|
16
17
|
material: ShaderMaterial;
|
|
17
18
|
dependencies: Variable[];
|
|
18
|
-
renderTargets:
|
|
19
|
+
renderTargets: WebGLRenderTarget[];
|
|
19
20
|
wrapS: number;
|
|
20
21
|
wrapT: number;
|
|
21
22
|
minFilter: number;
|
|
@@ -33,9 +34,10 @@ export class GPUComputationRenderer {
|
|
|
33
34
|
init(): string | null;
|
|
34
35
|
compute(): void;
|
|
35
36
|
|
|
36
|
-
getCurrentRenderTarget(variable: Variable):
|
|
37
|
-
getAlternateRenderTarget(variable: Variable):
|
|
37
|
+
getCurrentRenderTarget(variable: Variable): WebGLRenderTarget;
|
|
38
|
+
getAlternateRenderTarget(variable: Variable): WebGLRenderTarget;
|
|
38
39
|
addResolutionDefine(materialShader: ShaderMaterial): void;
|
|
40
|
+
createShaderMaterial(computeFragmentShader: string, uniforms?: { [uniform: string]: IUniform }): ShaderMaterial;
|
|
39
41
|
createRenderTarget(
|
|
40
42
|
sizeXTexture: number,
|
|
41
43
|
sizeYTexture: number,
|
|
@@ -43,8 +45,8 @@ export class GPUComputationRenderer {
|
|
|
43
45
|
wrapT: number,
|
|
44
46
|
minFilter: TextureFilter,
|
|
45
47
|
magFilter: TextureFilter,
|
|
46
|
-
):
|
|
48
|
+
): WebGLRenderTarget;
|
|
47
49
|
createTexture(): DataTexture;
|
|
48
50
|
renderTexture(input: Texture, output: Texture): void;
|
|
49
|
-
doRenderTarget(material: Material, output:
|
|
51
|
+
doRenderTarget(material: Material, output: WebGLRenderTarget): void;
|
|
50
52
|
}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
|
-
import { BufferGeometry, Material,
|
|
1
|
+
import { BufferGeometry, Material, Mesh, Color } from '../../../src/Three';
|
|
2
2
|
|
|
3
|
-
export class MarchingCubes extends
|
|
4
|
-
constructor(
|
|
3
|
+
export class MarchingCubes extends Mesh {
|
|
4
|
+
constructor(
|
|
5
|
+
resolution: number,
|
|
6
|
+
material: Material,
|
|
7
|
+
enableUvs?: boolean,
|
|
8
|
+
enableColors?: boolean,
|
|
9
|
+
maxPolyCount?: number,
|
|
10
|
+
);
|
|
5
11
|
|
|
6
12
|
enableUvs: boolean;
|
|
7
13
|
enableColors: boolean;
|
|
@@ -46,9 +52,9 @@ export class MarchingCubes extends ImmediateRenderObject {
|
|
|
46
52
|
begin(): void;
|
|
47
53
|
end(): void;
|
|
48
54
|
|
|
49
|
-
init(resolution:
|
|
55
|
+
init(resolution: number): void;
|
|
50
56
|
|
|
51
|
-
addBall(ballx: number, bally: number, ballz: number, strength: number, subtract: number, colors
|
|
57
|
+
addBall(ballx: number, bally: number, ballz: number, strength: number, subtract: number, colors?: Color): void;
|
|
52
58
|
|
|
53
59
|
addPlaneX(strength: number, subtract: number): void;
|
|
54
60
|
addPlaneY(strength: number, subtract: number): void;
|
|
@@ -7,7 +7,6 @@ import {
|
|
|
7
7
|
Scene,
|
|
8
8
|
WebGLRenderer,
|
|
9
9
|
Camera,
|
|
10
|
-
TextureEncoding,
|
|
11
10
|
Mesh,
|
|
12
11
|
Material,
|
|
13
12
|
ColorRepresentation,
|
|
@@ -22,7 +21,6 @@ export interface SSRPassParams {
|
|
|
22
21
|
width?: number | undefined;
|
|
23
22
|
height?: number | undefined;
|
|
24
23
|
selects: Mesh[] | null;
|
|
25
|
-
encoding: TextureEncoding;
|
|
26
24
|
isPerspectiveCamera?: boolean | undefined;
|
|
27
25
|
isBouncing?: boolean | undefined;
|
|
28
26
|
groundReflector: Reflector | null;
|
|
@@ -40,7 +38,6 @@ export class SSRPass extends Pass {
|
|
|
40
38
|
output: number;
|
|
41
39
|
maxDistance: number;
|
|
42
40
|
thickness: number;
|
|
43
|
-
encoding: TextureEncoding;
|
|
44
41
|
tempColor: Color;
|
|
45
42
|
|
|
46
43
|
get selects(): Mesh[] | null;
|
|
@@ -1,32 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
|
-
AddEquation,
|
|
3
2
|
Color,
|
|
4
|
-
NormalBlending,
|
|
5
|
-
DepthTexture,
|
|
6
|
-
SrcAlphaFactor,
|
|
7
|
-
OneMinusSrcAlphaFactor,
|
|
8
3
|
MeshNormalMaterial,
|
|
9
4
|
MeshBasicMaterial,
|
|
10
|
-
NearestFilter,
|
|
11
|
-
NoBlending,
|
|
12
|
-
RGBAFormat,
|
|
13
5
|
ShaderMaterial,
|
|
14
|
-
UniformsUtils,
|
|
15
|
-
UnsignedShortType,
|
|
16
6
|
WebGLRenderTarget,
|
|
17
|
-
HalfFloatType,
|
|
18
7
|
MeshStandardMaterial,
|
|
19
8
|
WebGLRenderer,
|
|
20
9
|
Scene,
|
|
21
10
|
Camera,
|
|
22
11
|
Mesh,
|
|
23
|
-
TextureEncoding,
|
|
24
12
|
Material,
|
|
25
13
|
ColorRepresentation,
|
|
26
14
|
} from '../../../src/Three';
|
|
27
15
|
import { Pass, FullScreenQuad } from './Pass';
|
|
28
|
-
import { SSRrShader, SSRrDepthShader } from '../shaders/SSRrShader';
|
|
29
|
-
import { CopyShader } from '../shaders/CopyShader';
|
|
30
16
|
|
|
31
17
|
export interface SSRrPassParams {
|
|
32
18
|
renderer: WebGLRenderer;
|
|
@@ -35,7 +21,6 @@ export interface SSRrPassParams {
|
|
|
35
21
|
width?: number | undefined;
|
|
36
22
|
height?: number | undefined;
|
|
37
23
|
selects: Mesh[] | null;
|
|
38
|
-
encoding: TextureEncoding;
|
|
39
24
|
}
|
|
40
25
|
|
|
41
26
|
export class SSRrPass extends Pass {
|
|
@@ -53,8 +38,6 @@ export class SSRrPass extends Pass {
|
|
|
53
38
|
maxDistance: number;
|
|
54
39
|
surfDist: number;
|
|
55
40
|
|
|
56
|
-
encoding: TextureEncoding;
|
|
57
|
-
|
|
58
41
|
color: Color;
|
|
59
42
|
|
|
60
43
|
seleects: Mesh[] | null;
|