@types/three 0.164.1 → 0.166.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/GLTFExporter.d.ts +6 -0
- three/examples/jsm/exporters/USDZExporter.d.ts +4 -2
- three/examples/jsm/geometries/TeapotGeometry.d.ts +24 -0
- three/examples/jsm/helpers/ViewHelper.d.ts +8 -6
- three/examples/jsm/lines/LineMaterial.d.ts +2 -4
- three/examples/jsm/loaders/DDSLoader.d.ts +8 -2
- three/examples/jsm/loaders/FontLoader.d.ts +1 -1
- three/examples/jsm/loaders/GLTFLoader.d.ts +12 -7
- three/examples/jsm/loaders/KTXLoader.d.ts +8 -2
- three/examples/jsm/loaders/LDrawLoader.d.ts +1 -1
- three/examples/jsm/loaders/PVRLoader.d.ts +2 -2
- three/examples/jsm/modifiers/EdgeSplitModifier.d.ts +17 -10
- three/examples/jsm/nodes/Nodes.d.ts +21 -57
- three/examples/jsm/nodes/accessors/BitangentNode.d.ts +4 -22
- three/examples/jsm/nodes/accessors/BufferAttributeNode.d.ts +50 -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 +16 -4
- three/examples/jsm/nodes/accessors/StorageTextureNode.d.ts +40 -0
- 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/CacheNode.d.ts +4 -5
- 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/LightingModel.d.ts +11 -0
- three/examples/jsm/nodes/core/Node.d.ts +102 -42
- three/examples/jsm/nodes/core/NodeAttribute.d.ts +7 -4
- three/examples/jsm/nodes/core/NodeBuilder.d.ts +30 -26
- three/examples/jsm/nodes/core/NodeCache.d.ts +48 -6
- three/examples/jsm/nodes/core/NodeFunction.d.ts +2 -2
- 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 +16 -11
- three/examples/jsm/nodes/core/VarNode.d.ts +2 -0
- three/examples/jsm/nodes/core/VaryingNode.d.ts +4 -0
- three/examples/jsm/nodes/core/constants.d.ts +27 -79
- three/examples/jsm/nodes/display/DepthOfFieldNode.d.ts +30 -0
- three/examples/jsm/nodes/display/DotScreenNode.d.ts +32 -0
- three/examples/jsm/nodes/display/PassNode.d.ts +1 -1
- three/examples/jsm/nodes/display/RGBShiftNode.d.ts +24 -0
- three/examples/jsm/nodes/display/SobelOperatorNode.d.ts +17 -0
- three/examples/jsm/nodes/display/ViewportDepthNode.d.ts +4 -6
- three/examples/jsm/nodes/functions/BSDF/LTC.d.ts +9 -0
- three/examples/jsm/nodes/functions/PhysicalLightingModel.d.ts +2 -0
- three/examples/jsm/nodes/functions/ToonLightingModel.d.ts +4 -0
- three/examples/jsm/nodes/lighting/RectAreaLightNode.d.ts +10 -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 +7 -4
- three/examples/jsm/nodes/materials/MeshPhysicalNodeMaterial.d.ts +24 -17
- three/examples/jsm/nodes/materials/MeshSSSNodeMaterial.d.ts +6 -7
- three/examples/jsm/nodes/materials/MeshStandardNodeMaterial.d.ts +8 -5
- three/examples/jsm/nodes/materials/MeshToonNodeMaterial.d.ts +38 -0
- three/examples/jsm/nodes/materials/NodeMaterial.d.ts +41 -37
- 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 +3 -3
- three/examples/jsm/nodes/materials/VolumeNodeMaterial.d.ts +10 -0
- three/examples/jsm/nodes/materialx/lib/mx_hsv.d.ts +1 -0
- three/examples/jsm/nodes/materialx/lib/mx_noise.d.ts +230 -0
- three/examples/jsm/nodes/math/MathNode.d.ts +5 -1
- 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/DiscardNode.d.ts +1 -0
- 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/BindGroup.d.ts +9 -0
- three/examples/jsm/renderers/common/Binding.d.ts +8 -0
- three/examples/jsm/renderers/common/Bindings.d.ts +42 -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 +25 -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/PostProcessing.d.ts +2 -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 +186 -208
- three/examples/jsm/renderers/common/SampledTexture.d.ts +27 -0
- three/examples/jsm/renderers/common/Sampler.d.ts +11 -0
- 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 +32 -0
- three/examples/jsm/renderers/common/nodes/NodeBuilderState.d.ts +30 -0
- three/examples/jsm/renderers/common/nodes/NodeSampledTexture.d.ts +29 -0
- three/examples/jsm/renderers/common/nodes/NodeSampler.d.ts +12 -0
- three/examples/jsm/renderers/common/nodes/NodeUniform.d.ts +63 -0
- three/examples/jsm/renderers/common/nodes/NodeUniformsGroup.d.ts +11 -0
- three/examples/jsm/renderers/common/nodes/Nodes.d.ts +95 -0
- three/examples/jsm/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +123 -0
- three/examples/jsm/renderers/webgpu/nodes/WGSLNodeFunction.d.ts +6 -0
- three/examples/jsm/renderers/webgpu/nodes/WGSLNodeParser.d.ts +6 -0
- three/examples/jsm/renderers/webgpu/utils/WebGPUConstants.d.ts +328 -0
- three/examples/jsm/utils/SceneUtils.d.ts +9 -3
- three/package.json +4 -4
- three/src/Three.d.ts +1 -0
- three/src/animation/tracks/StringKeyframeTrack.d.ts +1 -2
- three/src/constants.d.ts +6 -0
- three/src/core/BufferGeometry.d.ts +19 -17
- three/src/core/InterleavedBuffer.d.ts +2 -0
- three/src/extras/ShapeUtils.d.ts +5 -8
- three/src/extras/TextureUtils.d.ts +42 -0
- three/src/lights/LightShadow.d.ts +5 -0
- three/src/loaders/LoaderUtils.d.ts +9 -6
- three/src/materials/Material.d.ts +21 -12
- 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/math/Vector4.d.ts +6 -0
- three/src/objects/BatchedMesh.d.ts +66 -47
- three/src/objects/InstancedMesh.d.ts +3 -3
- three/src/renderers/WebGLRenderer.d.ts +41 -19
- three/src/renderers/shaders/UniformsLib.d.ts +3 -0
- three/src/renderers/webgl/WebGLPrograms.d.ts +1 -1
- three/src/renderers/webxr/WebXRDepthSensing.d.ts +3 -1
- three/src/renderers/webxr/WebXRManager.d.ts +33 -23
- three/src/textures/CompressedArrayTexture.d.ts +36 -19
- three/src/textures/CompressedTexture.d.ts +16 -8
- three/src/textures/DataArrayTexture.d.ts +37 -20
- three/src/textures/FramebufferTexture.d.ts +1 -1
- three/src/textures/Texture.d.ts +3 -1
- three/src/utils.d.ts +2 -0
- three/examples/jsm/renderers/webgl/nodes/SlotNode.d.ts +0 -17
- three/examples/jsm/renderers/webgl/nodes/WebGLNodeBuilder.d.ts +0 -37
- three/examples/jsm/renderers/webgl/nodes/WebGLNodes.d.ts +0 -3
|
@@ -1,11 +1,13 @@
|
|
|
1
|
+
/// <reference types="webxr" />
|
|
1
2
|
import {
|
|
3
|
+
Box2,
|
|
4
|
+
BufferAttribute,
|
|
2
5
|
BufferGeometry,
|
|
3
6
|
Camera,
|
|
4
7
|
Color,
|
|
5
8
|
ColorSpace,
|
|
6
|
-
CoordinateSystem,
|
|
7
9
|
FramebufferTexture,
|
|
8
|
-
|
|
10
|
+
GeometryGroup,
|
|
9
11
|
Material,
|
|
10
12
|
Object3D,
|
|
11
13
|
Plane,
|
|
@@ -20,259 +22,216 @@ import {
|
|
|
20
22
|
import Node from "../../nodes/core/Node.js";
|
|
21
23
|
import ComputeNode from "../../nodes/gpgpu/ComputeNode.js";
|
|
22
24
|
import LightsNode from "../../nodes/lighting/LightsNode.js";
|
|
23
|
-
import
|
|
25
|
+
import Animation from "./Animation.js";
|
|
26
|
+
import Attributes from "./Attributes.js";
|
|
24
27
|
import Backend from "./Backend.js";
|
|
28
|
+
import Background from "./Background.js";
|
|
29
|
+
import Bindings from "./Bindings.js";
|
|
30
|
+
import Color4 from "./Color4.js";
|
|
31
|
+
import Geometries from "./Geometries.js";
|
|
25
32
|
import Info from "./Info.js";
|
|
26
|
-
|
|
33
|
+
import Nodes from "./nodes/Nodes.js";
|
|
34
|
+
import Pipelines from "./Pipelines.js";
|
|
35
|
+
import RenderBundle from "./RenderBundle.js";
|
|
36
|
+
import RenderBundles from "./RenderBundles.js";
|
|
37
|
+
import RenderContext from "./RenderContext.js";
|
|
38
|
+
import RenderContexts from "./RenderContexts.js";
|
|
39
|
+
import RenderList, { Bundle, RenderItem } from "./RenderList.js";
|
|
40
|
+
import RenderLists from "./RenderLists.js";
|
|
41
|
+
import RenderObjects from "./RenderObjects.js";
|
|
42
|
+
import Textures from "./Textures.js";
|
|
27
43
|
export interface RendererParameters {
|
|
28
44
|
logarithmicDepthBuffer?: boolean | undefined;
|
|
29
45
|
alpha?: boolean | undefined;
|
|
30
46
|
}
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Generic Renderer interface containing either a WebGL or WebGPU backend.
|
|
34
|
-
*/
|
|
35
|
-
export default class Renderer {
|
|
36
|
-
/**
|
|
37
|
-
* @default true
|
|
38
|
-
*/
|
|
47
|
+
declare class Renderer {
|
|
39
48
|
readonly isRenderer: true;
|
|
40
|
-
|
|
41
49
|
domElement: HTMLCanvasElement;
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* The renderer backend; could be WebGLBackend or WebGPUBackend
|
|
45
|
-
*/
|
|
46
50
|
backend: Backend;
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* @default true
|
|
50
|
-
*/
|
|
51
51
|
autoClear: boolean;
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* @default true
|
|
55
|
-
*/
|
|
56
52
|
autoClearColor: boolean;
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* @default true
|
|
60
|
-
*/
|
|
61
53
|
autoClearDepth: boolean;
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* @default true
|
|
65
|
-
*/
|
|
66
54
|
autoClearStencil: boolean;
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
* @default SRGBColorSpace
|
|
70
|
-
*/
|
|
55
|
+
alpha: boolean;
|
|
56
|
+
logarithmicDepthBuffer: boolean;
|
|
71
57
|
outputColorSpace: ColorSpace;
|
|
72
|
-
|
|
73
|
-
/**
|
|
74
|
-
* @default NoToneMapping
|
|
75
|
-
*/
|
|
76
58
|
toneMapping: ToneMapping;
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* @default 1.0
|
|
80
|
-
*/
|
|
81
59
|
toneMappingExposure: number;
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* @default true
|
|
85
|
-
*/
|
|
86
60
|
sortObjects: boolean;
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* @default true
|
|
90
|
-
*/
|
|
91
61
|
depth: boolean;
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* @default false
|
|
95
|
-
*/
|
|
96
62
|
stencil: boolean;
|
|
97
|
-
|
|
98
63
|
clippingPlanes: readonly Plane[];
|
|
99
|
-
|
|
100
|
-
toneMappingNode: Node | null;
|
|
101
|
-
|
|
102
64
|
info: Info;
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
65
|
+
toneMappingNode: Node | null;
|
|
66
|
+
_pixelRatio: number;
|
|
67
|
+
_width: number;
|
|
68
|
+
_height: number;
|
|
69
|
+
_viewport: Vector4;
|
|
70
|
+
_scissor: Vector4;
|
|
71
|
+
_scissorTest: boolean;
|
|
72
|
+
_attributes: Attributes | null;
|
|
73
|
+
_geometries: Geometries | null;
|
|
74
|
+
_nodes: Nodes | null;
|
|
75
|
+
_animation: Animation | null;
|
|
76
|
+
_bindings: Bindings | null;
|
|
77
|
+
_objects: RenderObjects | null;
|
|
78
|
+
_pipelines: Pipelines | null;
|
|
79
|
+
_bundles: RenderBundles | null;
|
|
80
|
+
_renderLists: RenderLists | null;
|
|
81
|
+
_renderContexts: RenderContexts | null;
|
|
82
|
+
_textures: Textures | null;
|
|
83
|
+
_background: Background | null;
|
|
84
|
+
_currentRenderContext: RenderContext | null;
|
|
85
|
+
_opaqueSort: ((a: RenderItem, b: RenderItem) => number) | null;
|
|
86
|
+
_transparentSort: ((a: RenderItem, b: RenderItem) => number) | null;
|
|
87
|
+
_frameBufferTarget: RenderTarget | null;
|
|
88
|
+
_clearColor: Color4;
|
|
89
|
+
_clearDepth: number;
|
|
90
|
+
_clearStencil: number;
|
|
91
|
+
_renderTarget: RenderTarget | null;
|
|
92
|
+
_activeCubeFace: number;
|
|
93
|
+
_activeMipmapLevel: number;
|
|
94
|
+
_renderObjectFunction:
|
|
95
|
+
| ((
|
|
96
|
+
object: Object3D,
|
|
97
|
+
scene: Scene,
|
|
98
|
+
camera: Camera,
|
|
99
|
+
geometry: BufferGeometry,
|
|
100
|
+
material: Material,
|
|
101
|
+
group: GeometryGroup,
|
|
102
|
+
lightsNode: LightsNode,
|
|
103
|
+
) => void)
|
|
104
|
+
| null;
|
|
105
|
+
_currentRenderObjectFunction:
|
|
106
|
+
| ((
|
|
107
|
+
object: Object3D,
|
|
108
|
+
scene: Scene,
|
|
109
|
+
camera: Camera,
|
|
110
|
+
geometry: BufferGeometry,
|
|
111
|
+
material: Material,
|
|
112
|
+
group: GeometryGroup,
|
|
113
|
+
lightsNode: LightsNode,
|
|
114
|
+
) => void)
|
|
115
|
+
| null;
|
|
116
|
+
_currentRenderBundle: RenderBundle | null;
|
|
117
|
+
_handleObjectFunction: (
|
|
118
|
+
object: Object3D,
|
|
119
|
+
material: Material,
|
|
120
|
+
scene: Scene,
|
|
121
|
+
camera: Camera,
|
|
122
|
+
lightsNode: LightsNode,
|
|
123
|
+
group: GeometryGroup,
|
|
124
|
+
passId?: string,
|
|
125
|
+
) => void;
|
|
126
|
+
_initialized: boolean;
|
|
127
|
+
_initPromise: Promise<void> | null;
|
|
128
|
+
_compilationPromises: Promise<void>[] | null;
|
|
129
|
+
shadowMap: {
|
|
130
|
+
enabled: boolean;
|
|
131
|
+
type: ShadowMapType | null;
|
|
132
|
+
};
|
|
133
|
+
xr: {
|
|
134
|
+
enabled: boolean;
|
|
135
|
+
};
|
|
136
|
+
debug: {
|
|
137
|
+
checkShaderErrors: boolean;
|
|
138
|
+
onShaderError:
|
|
139
|
+
| ((
|
|
140
|
+
gl: WebGL2RenderingContext,
|
|
141
|
+
programGPU: WebGLProgram,
|
|
142
|
+
glVertexShader: WebGLShader,
|
|
143
|
+
glFragmentShader: WebGLShader,
|
|
144
|
+
) => void)
|
|
145
|
+
| null;
|
|
146
|
+
};
|
|
147
|
+
localClippingEnabled?: boolean | undefined;
|
|
110
148
|
constructor(backend: Backend, parameters?: RendererParameters);
|
|
111
|
-
|
|
112
149
|
init(): Promise<void>;
|
|
113
|
-
|
|
114
|
-
get coordinateSystem(): CoordinateSystem;
|
|
115
|
-
|
|
150
|
+
get coordinateSystem(): import("three").CoordinateSystem;
|
|
116
151
|
compileAsync(scene: Scene, camera: Camera, targetScene?: Scene | null): Promise<void>;
|
|
117
|
-
|
|
118
152
|
renderAsync(scene: Scene, camera: Camera): Promise<void>;
|
|
119
|
-
|
|
120
|
-
render(scene: Scene, camera: Camera): void;
|
|
121
|
-
|
|
153
|
+
_renderBundle(bundle: Bundle, sceneRef: Scene, lightsNode: LightsNode): void;
|
|
154
|
+
render(scene: Scene, camera: Camera): Promise<void> | undefined;
|
|
155
|
+
_getFrameBufferTarget(): RenderTarget<Texture> | null;
|
|
156
|
+
_renderScene(scene: Scene, camera: Camera, useFrameBufferTarget?: boolean): RenderContext;
|
|
122
157
|
getMaxAnisotropy(): number;
|
|
123
|
-
|
|
124
158
|
getActiveCubeFace(): number;
|
|
125
|
-
|
|
126
159
|
getActiveMipmapLevel(): number;
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
/**
|
|
131
|
-
* Sets the pixel ratio of the Renderer.
|
|
132
|
-
*/
|
|
133
|
-
setPixelRatio(value?: number): void;
|
|
134
|
-
|
|
135
|
-
/**
|
|
136
|
-
* Sets the width and height of the output canvas and optionally updates the CSS style on the DOM element.
|
|
137
|
-
*/
|
|
138
|
-
setSize(width: number, height: number, updateStyle?: boolean): void;
|
|
139
|
-
|
|
140
|
-
/**
|
|
141
|
-
* Gets the Rendering Context of the renderer.
|
|
142
|
-
*/
|
|
143
|
-
getContext(): RenderingContext;
|
|
144
|
-
|
|
145
|
-
/**
|
|
146
|
-
* Gets the current pixel ratio of the renderer.
|
|
147
|
-
*/
|
|
160
|
+
setAnimationLoop(callback: ((time: DOMHighResTimeStamp, frame?: XRFrame) => void) | null): Promise<void>;
|
|
161
|
+
getArrayBufferAsync(attribute: BufferAttribute): Promise<ArrayBuffer>;
|
|
162
|
+
getContext(): void;
|
|
148
163
|
getPixelRatio(): number;
|
|
149
|
-
|
|
150
164
|
getDrawingBufferSize(target: Vector2): Vector2;
|
|
151
|
-
|
|
152
165
|
getSize(target: Vector2): Vector2;
|
|
153
|
-
|
|
166
|
+
setPixelRatio(value?: number): void;
|
|
154
167
|
setDrawingBufferSize(width: number, height: number, pixelRatio: number): void;
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
*/
|
|
159
|
-
setOpaqueSort(method: (a: unknown, b: unknown) => number): void;
|
|
160
|
-
|
|
161
|
-
/**
|
|
162
|
-
* Sets the custom transparent sort function for the RenderLists. Pass null to use the default reversePainterSortStable function.
|
|
163
|
-
*/
|
|
164
|
-
setTransparentSort(method: (a: unknown, b: unknown) => number): void;
|
|
165
|
-
|
|
166
|
-
/**
|
|
167
|
-
* Copies the scissor area into target.
|
|
168
|
-
*/
|
|
168
|
+
setSize(width: number, height: number, updateStyle?: boolean): void;
|
|
169
|
+
setOpaqueSort(method: ((a: RenderItem, b: RenderItem) => number) | null): void;
|
|
170
|
+
setTransparentSort(method: ((a: RenderItem, b: RenderItem) => number) | null): void;
|
|
169
171
|
getScissor(target: Vector4): Vector4;
|
|
170
|
-
|
|
171
|
-
/**
|
|
172
|
-
* Sets the scissor area from (x, y) to (x + width, y + height).
|
|
173
|
-
*/
|
|
172
|
+
setScissor(x: Vector4): void;
|
|
174
173
|
setScissor(x: number, y: number, width: number, height: number): void;
|
|
175
|
-
|
|
176
|
-
/**
|
|
177
|
-
* Returns true if scissor test is enabled; returns false otherwise.
|
|
178
|
-
*/
|
|
179
174
|
getScissorTest(): boolean;
|
|
180
|
-
|
|
181
|
-
/**
|
|
182
|
-
* Enable the scissor test. When this is enabled, only the pixels within the defined scissor area will be affected by further renderer actions.
|
|
183
|
-
*/
|
|
184
175
|
setScissorTest(boolean: boolean): void;
|
|
185
|
-
|
|
186
|
-
/**
|
|
187
|
-
* Copies the viewport into target.
|
|
188
|
-
*/
|
|
189
176
|
getViewport(target: Vector4): Vector4;
|
|
190
|
-
|
|
191
|
-
/**
|
|
192
|
-
* Sets the viewport to render from (x, y) to (x + width, y + height).
|
|
193
|
-
* (x, y) is the lower-left corner of the region.
|
|
194
|
-
*/
|
|
177
|
+
setViewport(x: Vector4): void;
|
|
195
178
|
setViewport(x: number, y: number, width: number, height: number, minDepth?: number, maxDepth?: number): void;
|
|
196
|
-
|
|
197
|
-
/**
|
|
198
|
-
* Returns a Color4 instance with the current clear color.
|
|
199
|
-
*/
|
|
200
179
|
getClearColor(target: Color4): Color4;
|
|
201
|
-
|
|
202
|
-
/**
|
|
203
|
-
* Sets the clear color, using color for the color and alpha for the opacity.
|
|
204
|
-
*/
|
|
205
180
|
setClearColor(color: Color, alpha?: number): void;
|
|
206
|
-
|
|
207
|
-
/**
|
|
208
|
-
* Returns a float with the current clear alpha. Ranges from 0 to 1.
|
|
209
|
-
*/
|
|
210
181
|
getClearAlpha(): number;
|
|
211
|
-
|
|
212
182
|
setClearAlpha(alpha: number): void;
|
|
213
|
-
|
|
214
183
|
getClearDepth(): number;
|
|
215
|
-
|
|
216
184
|
setClearDepth(depth: number): void;
|
|
217
|
-
|
|
218
185
|
getClearStencil(): number;
|
|
219
|
-
|
|
220
186
|
setClearStencil(stencil: number): void;
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
* Arguments default to true
|
|
227
|
-
*/
|
|
228
|
-
clear(color?: boolean, depth?: boolean, stencil?: boolean): void;
|
|
229
|
-
|
|
230
|
-
/**
|
|
231
|
-
* Clear the color buffer. Equivalent to calling .clear( true, false, false ).
|
|
232
|
-
*/
|
|
233
|
-
clearColor(): void;
|
|
234
|
-
|
|
235
|
-
/**
|
|
236
|
-
* Clear the depth buffer. Equivalent to calling .clear( false, true, false ).
|
|
237
|
-
*/
|
|
238
|
-
clearDepth(): void;
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* Clear the stencil buffer. Equivalent to calling .clear( false, false, true ).
|
|
242
|
-
*/
|
|
243
|
-
clearStencil(): void;
|
|
244
|
-
|
|
245
|
-
/**
|
|
246
|
-
* Tells the renderer to clear its color, depth or stencil drawing buffer(s).
|
|
247
|
-
* Arguments default to true
|
|
248
|
-
*/
|
|
187
|
+
isOccluded(object: Object3D): boolean | null;
|
|
188
|
+
clear(color?: boolean, depth?: boolean, stencil?: boolean): Promise<void> | undefined;
|
|
189
|
+
clearColor(): Promise<void> | undefined;
|
|
190
|
+
clearDepth(): Promise<void> | undefined;
|
|
191
|
+
clearStencil(): Promise<void> | undefined;
|
|
249
192
|
clearAsync(color?: boolean, depth?: boolean, stencil?: boolean): Promise<void>;
|
|
250
|
-
|
|
193
|
+
clearColorAsync(): Promise<void>;
|
|
194
|
+
clearDepthAsync(): Promise<void>;
|
|
195
|
+
clearStencilAsync(): Promise<void>;
|
|
251
196
|
get currentColorSpace(): ColorSpace;
|
|
252
|
-
|
|
253
197
|
dispose(): void;
|
|
254
|
-
|
|
255
198
|
setRenderTarget(renderTarget: RenderTarget | null, activeCubeFace?: number, activeMipmapLevel?: number): void;
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
199
|
+
getRenderTarget(): RenderTarget<Texture> | null;
|
|
200
|
+
setRenderObjectFunction(
|
|
201
|
+
renderObjectFunction:
|
|
202
|
+
| ((
|
|
203
|
+
object: Object3D,
|
|
204
|
+
scene: Scene,
|
|
205
|
+
camera: Camera,
|
|
206
|
+
geometry: BufferGeometry,
|
|
207
|
+
material: Material,
|
|
208
|
+
group: GeometryGroup,
|
|
209
|
+
lightsNode: LightsNode,
|
|
210
|
+
) => void)
|
|
211
|
+
| null,
|
|
212
|
+
): void;
|
|
213
|
+
getRenderObjectFunction():
|
|
214
|
+
| ((
|
|
215
|
+
object: Object3D<import("three").Object3DEventMap>,
|
|
216
|
+
scene: Scene,
|
|
217
|
+
camera: Camera,
|
|
218
|
+
geometry: BufferGeometry<import("three").NormalBufferAttributes>,
|
|
219
|
+
material: Material,
|
|
220
|
+
group: GeometryGroup,
|
|
221
|
+
lightsNode: LightsNode,
|
|
222
|
+
) => void)
|
|
223
|
+
| null;
|
|
266
224
|
computeAsync(computeNodes: ComputeNode | ComputeNode[]): Promise<void>;
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
hasFeature(name: string): boolean;
|
|
271
|
-
|
|
225
|
+
hasFeatureAsync(name: string): Promise<void>;
|
|
226
|
+
hasFeature(name: string): false | void;
|
|
272
227
|
copyFramebufferToTexture(framebufferTexture: FramebufferTexture): void;
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
228
|
+
copyTextureToTexture(
|
|
229
|
+
srcTexture: Texture,
|
|
230
|
+
dstTexture: Texture,
|
|
231
|
+
srcRegion?: Box2 | null,
|
|
232
|
+
dstPosition?: Vector2 | null,
|
|
233
|
+
level?: number,
|
|
234
|
+
): void;
|
|
276
235
|
readRenderTargetPixelsAsync(
|
|
277
236
|
renderTarget: RenderTarget,
|
|
278
237
|
x: number,
|
|
@@ -280,19 +239,38 @@ export default class Renderer {
|
|
|
280
239
|
width: number,
|
|
281
240
|
height: number,
|
|
282
241
|
index?: number,
|
|
283
|
-
): Promise<
|
|
284
|
-
|
|
242
|
+
): Promise<import("three").TypedArray>;
|
|
243
|
+
_projectObject(object: Object3D, camera: Camera, groupOrder: number, renderList: RenderList): void;
|
|
244
|
+
_renderBundles(bundles: Bundle[], sceneRef: Scene, lightsNode: LightsNode): void;
|
|
245
|
+
_renderObjects(renderList: RenderItem[], camera: Camera, scene: Scene, lightsNode: LightsNode): void;
|
|
285
246
|
renderObject(
|
|
286
247
|
object: Object3D,
|
|
287
248
|
scene: Scene,
|
|
288
249
|
camera: Camera,
|
|
289
250
|
geometry: BufferGeometry,
|
|
290
251
|
material: Material,
|
|
291
|
-
group:
|
|
252
|
+
group: GeometryGroup,
|
|
253
|
+
lightsNode: LightsNode,
|
|
254
|
+
): void;
|
|
255
|
+
_renderObjectDirect(
|
|
256
|
+
object: Object3D,
|
|
257
|
+
material: Material,
|
|
258
|
+
scene: Scene,
|
|
259
|
+
camera: Camera,
|
|
260
|
+
lightsNode: LightsNode,
|
|
261
|
+
group: GeometryGroup,
|
|
262
|
+
passId?: string,
|
|
263
|
+
): void;
|
|
264
|
+
_createObjectPipeline(
|
|
265
|
+
object: Object3D,
|
|
266
|
+
material: Material,
|
|
267
|
+
scene: Scene,
|
|
268
|
+
camera: Camera,
|
|
292
269
|
lightsNode: LightsNode,
|
|
270
|
+
group: GeometryGroup,
|
|
271
|
+
passId?: string,
|
|
293
272
|
): void;
|
|
294
|
-
|
|
295
273
|
get compute(): (computeNodes: ComputeNode | ComputeNode[]) => Promise<void>;
|
|
296
|
-
|
|
297
274
|
get compile(): (scene: Scene, camera: Camera, targetScene?: Scene | null) => Promise<void>;
|
|
298
275
|
}
|
|
276
|
+
export default Renderer;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Texture } from "three";
|
|
2
|
+
import Binding from "./Binding.js";
|
|
3
|
+
|
|
4
|
+
declare class SampledTexture extends Binding {
|
|
5
|
+
id: number;
|
|
6
|
+
texture: Texture | null;
|
|
7
|
+
version: number;
|
|
8
|
+
store: boolean;
|
|
9
|
+
readonly isSampledTexture: true;
|
|
10
|
+
constructor(name: string, texture: Texture | null);
|
|
11
|
+
get needsBindingsUpdate(): boolean;
|
|
12
|
+
update(): boolean;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
declare class SampledArrayTexture extends SampledTexture {
|
|
16
|
+
readonly isSampledArrayTexture: true;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
declare class Sampled3DTexture extends SampledTexture {
|
|
20
|
+
readonly isSampled3DTexture: true;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
declare class SampledCubeTexture extends SampledTexture {
|
|
24
|
+
readonly isSampledCubeTexture: true;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export { Sampled3DTexture, SampledArrayTexture, SampledCubeTexture, SampledTexture };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import TextureNode from "../../nodes/accessors/TextureNode.js";
|
|
2
|
+
import Binding from "./Binding.js";
|
|
3
|
+
|
|
4
|
+
declare class Sampler extends Binding {
|
|
5
|
+
texture: TextureNode | null;
|
|
6
|
+
version: number;
|
|
7
|
+
readonly isSampler: true;
|
|
8
|
+
constructor(name: string, texture: TextureNode | null);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export default Sampler;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { InstancedBufferAttribute, TypedArray } from "three";
|
|
2
|
+
|
|
3
|
+
export default class StorageInstancedBufferAttribute extends InstancedBufferAttribute {
|
|
4
|
+
readonly isStorageInstancedBufferAttribute: true;
|
|
5
|
+
|
|
6
|
+
constructor(array: TypedArray | number, itemSize: number);
|
|
7
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { DepthTexture, RenderTarget, Texture, Vector3 } from "three";
|
|
2
|
+
import Backend from "./Backend.js";
|
|
3
|
+
import DataMap from "./DataMap.js";
|
|
4
|
+
import Info from "./Info.js";
|
|
5
|
+
import Renderer from "./Renderer.js";
|
|
6
|
+
type SizeVector3Unitialized = Vector3 & {
|
|
7
|
+
width?: number;
|
|
8
|
+
height?: number;
|
|
9
|
+
depth?: number;
|
|
10
|
+
};
|
|
11
|
+
type SizeVector3 = Vector3 & {
|
|
12
|
+
width: number;
|
|
13
|
+
height: number;
|
|
14
|
+
depth: number;
|
|
15
|
+
};
|
|
16
|
+
interface RenderTargetData {
|
|
17
|
+
depthTextureMips?: {
|
|
18
|
+
[activeMipmapLevel: number]: DepthTexture;
|
|
19
|
+
};
|
|
20
|
+
width?: number;
|
|
21
|
+
height?: number;
|
|
22
|
+
textures?: Texture[];
|
|
23
|
+
depthTexture?: DepthTexture;
|
|
24
|
+
depth?: boolean;
|
|
25
|
+
stencil?: boolean;
|
|
26
|
+
renderTarget?: RenderTarget;
|
|
27
|
+
sampleCount?: number;
|
|
28
|
+
initialized?: boolean;
|
|
29
|
+
}
|
|
30
|
+
interface TextureData {
|
|
31
|
+
initialized?: boolean;
|
|
32
|
+
version?: number;
|
|
33
|
+
isDefaultTexture?: boolean;
|
|
34
|
+
}
|
|
35
|
+
interface TextureOptions {
|
|
36
|
+
width?: number;
|
|
37
|
+
height?: number;
|
|
38
|
+
depth?: number;
|
|
39
|
+
needsMipmaps?: boolean;
|
|
40
|
+
levels?: number;
|
|
41
|
+
}
|
|
42
|
+
declare class Textures extends DataMap<{
|
|
43
|
+
renderTarget: {
|
|
44
|
+
key: RenderTarget;
|
|
45
|
+
value: RenderTargetData;
|
|
46
|
+
};
|
|
47
|
+
texture: {
|
|
48
|
+
key: Texture;
|
|
49
|
+
value: TextureData;
|
|
50
|
+
};
|
|
51
|
+
}> {
|
|
52
|
+
renderer: Renderer;
|
|
53
|
+
backend: Backend;
|
|
54
|
+
info: Info;
|
|
55
|
+
constructor(renderer: Renderer, backend: Backend, info: Info);
|
|
56
|
+
updateRenderTarget(renderTarget: RenderTarget, activeMipmapLevel?: number): void;
|
|
57
|
+
updateTexture(texture: Texture, options?: TextureOptions): void;
|
|
58
|
+
getSize(texture: Texture, target?: SizeVector3Unitialized): SizeVector3;
|
|
59
|
+
getMipLevels(texture: Texture, width: number, height: number): number;
|
|
60
|
+
needsMipmaps(texture: Texture): boolean;
|
|
61
|
+
isEnvironmentTexture(texture: Texture): boolean;
|
|
62
|
+
_destroyTexture(texture: Texture): void;
|
|
63
|
+
}
|
|
64
|
+
export default Textures;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Color, Matrix3, Matrix4, Vector2, Vector3, Vector4 } from "three";
|
|
2
|
+
declare class Uniform<TValue> {
|
|
3
|
+
name: string;
|
|
4
|
+
value: TValue;
|
|
5
|
+
boundary: number;
|
|
6
|
+
itemSize: number;
|
|
7
|
+
offset: number;
|
|
8
|
+
constructor(name: string, value: TValue);
|
|
9
|
+
setValue(value: TValue): void;
|
|
10
|
+
getValue(): TValue;
|
|
11
|
+
}
|
|
12
|
+
declare class NumberUniform extends Uniform<number> {
|
|
13
|
+
readonly isNumberUniform: true;
|
|
14
|
+
constructor(name: string, value?: number);
|
|
15
|
+
}
|
|
16
|
+
declare class Vector2Uniform extends Uniform<Vector2> {
|
|
17
|
+
readonly isVector2Uniform: true;
|
|
18
|
+
constructor(name: string, value?: Vector2);
|
|
19
|
+
}
|
|
20
|
+
declare class Vector3Uniform extends Uniform<Vector3> {
|
|
21
|
+
readonly isVector3Uniform: true;
|
|
22
|
+
constructor(name: string, value?: Vector3);
|
|
23
|
+
}
|
|
24
|
+
declare class Vector4Uniform extends Uniform<Vector4> {
|
|
25
|
+
readonly isVector4Uniform: true;
|
|
26
|
+
constructor(name: string, value?: Vector4);
|
|
27
|
+
}
|
|
28
|
+
declare class ColorUniform extends Uniform<Color> {
|
|
29
|
+
readonly isColorUniform: true;
|
|
30
|
+
constructor(name: string, value?: Color);
|
|
31
|
+
}
|
|
32
|
+
declare class Matrix3Uniform extends Uniform<Matrix3> {
|
|
33
|
+
readonly isMatrix3Uniform: true;
|
|
34
|
+
constructor(name: string, value?: Matrix3);
|
|
35
|
+
}
|
|
36
|
+
declare class Matrix4Uniform extends Uniform<Matrix4> {
|
|
37
|
+
readonly isMatrix4Uniform: true;
|
|
38
|
+
constructor(name: string, value?: Matrix4);
|
|
39
|
+
}
|
|
40
|
+
export { ColorUniform, Matrix3Uniform, Matrix4Uniform, NumberUniform, Vector2Uniform, Vector3Uniform, Vector4Uniform };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ColorNodeUniform,
|
|
3
|
+
Matrix3NodeUniform,
|
|
4
|
+
Matrix4NodeUniform,
|
|
5
|
+
NodeUniformGPU,
|
|
6
|
+
NumberNodeUniform,
|
|
7
|
+
Vector2NodeUniform,
|
|
8
|
+
Vector3NodeUniform,
|
|
9
|
+
Vector4NodeUniform,
|
|
10
|
+
} from "./nodes/NodeUniform.js";
|
|
11
|
+
import UniformBuffer from "./UniformBuffer.js";
|
|
12
|
+
declare class UniformsGroup extends UniformBuffer {
|
|
13
|
+
readonly isUniformsGroup: true;
|
|
14
|
+
_values: number[] | null;
|
|
15
|
+
uniforms: NodeUniformGPU[];
|
|
16
|
+
constructor(name?: string);
|
|
17
|
+
addUniform(uniform: NodeUniformGPU): this;
|
|
18
|
+
removeUniform(uniform: NodeUniformGPU): this;
|
|
19
|
+
get values(): number[];
|
|
20
|
+
get buffer(): Float32Array;
|
|
21
|
+
get byteLength(): number;
|
|
22
|
+
update(): boolean;
|
|
23
|
+
updateByType(uniform: NodeUniformGPU): boolean | undefined;
|
|
24
|
+
updateNumber(uniform: NumberNodeUniform): boolean;
|
|
25
|
+
updateVector2(uniform: Vector2NodeUniform): boolean;
|
|
26
|
+
updateVector3(uniform: Vector3NodeUniform): boolean;
|
|
27
|
+
updateVector4(uniform: Vector4NodeUniform): boolean;
|
|
28
|
+
updateColor(uniform: ColorNodeUniform): boolean;
|
|
29
|
+
updateMatrix3(uniform: Matrix3NodeUniform): boolean;
|
|
30
|
+
updateMatrix4(uniform: Matrix4NodeUniform): boolean;
|
|
31
|
+
}
|
|
32
|
+
export default UniformsGroup;
|