@types/three 0.159.0 → 0.161.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 (211) hide show
  1. three/README.md +1 -1
  2. three/examples/jsm/Addons.d.ts +5 -1
  3. three/examples/jsm/capabilities/WebGPU.d.ts +2 -0
  4. three/examples/jsm/curves/NURBSUtils.d.ts +136 -10
  5. three/examples/jsm/curves/NURBSVolume.d.ts +23 -0
  6. three/examples/jsm/exporters/USDZExporter.d.ts +1 -0
  7. three/examples/jsm/loaders/GLTFLoader.d.ts +1 -0
  8. three/examples/jsm/loaders/KTX2Loader.d.ts +45 -11
  9. three/examples/jsm/loaders/LUT3dlLoader.d.ts +29 -2
  10. three/examples/jsm/loaders/LUTCubeLoader.d.ts +37 -2
  11. three/examples/jsm/loaders/MaterialXLoader.d.ts +6 -0
  12. three/examples/jsm/materials/MeshPostProcessingMaterial.d.ts +13 -0
  13. three/examples/jsm/misc/Timer.d.ts +80 -0
  14. three/examples/jsm/nodes/Nodes.d.ts +304 -61
  15. three/examples/jsm/nodes/accessors/BitangentNode.d.ts +9 -0
  16. three/examples/jsm/nodes/accessors/BufferNode.d.ts +4 -1
  17. three/examples/jsm/nodes/accessors/CameraNode.d.ts +24 -6
  18. three/examples/jsm/nodes/accessors/CubeTextureNode.d.ts +17 -4
  19. three/examples/jsm/nodes/accessors/InstanceNode.d.ts +3 -0
  20. three/examples/jsm/nodes/accessors/MaterialNode.d.ts +12 -0
  21. three/examples/jsm/nodes/accessors/MaterialReferenceNode.d.ts +7 -0
  22. three/examples/jsm/nodes/accessors/ModelNode.d.ts +9 -1
  23. three/examples/jsm/nodes/accessors/ModelViewProjectionNode.d.ts +3 -0
  24. three/examples/jsm/nodes/accessors/NormalNode.d.ts +8 -0
  25. three/examples/jsm/nodes/accessors/Object3DNode.d.ts +10 -6
  26. three/examples/jsm/nodes/accessors/PointUVNode.d.ts +3 -0
  27. three/examples/jsm/nodes/accessors/PositionNode.d.ts +8 -0
  28. three/examples/jsm/nodes/accessors/ReferenceNode.d.ts +4 -1
  29. three/examples/jsm/nodes/accessors/ReflectVectorNode.d.ts +3 -0
  30. three/examples/jsm/nodes/accessors/SkinningNode.d.ts +3 -0
  31. three/examples/jsm/nodes/accessors/StorageBufferNode.d.ts +8 -1
  32. three/examples/jsm/nodes/accessors/TangentNode.d.ts +9 -0
  33. three/examples/jsm/nodes/accessors/TextureBicubicNode.d.ts +18 -0
  34. three/examples/jsm/nodes/accessors/TextureNode.d.ts +21 -5
  35. three/examples/jsm/nodes/accessors/UVNode.d.ts +3 -0
  36. three/examples/jsm/nodes/accessors/UserDataNode.d.ts +7 -0
  37. three/examples/jsm/nodes/accessors/VertexColorNode.d.ts +12 -0
  38. three/examples/jsm/nodes/code/CodeNode.d.ts +4 -0
  39. three/examples/jsm/nodes/code/ExpressionNode.d.ts +3 -0
  40. three/examples/jsm/nodes/code/FunctionCallNode.d.ts +13 -1
  41. three/examples/jsm/nodes/code/FunctionNode.d.ts +17 -0
  42. three/examples/jsm/nodes/core/ArrayUniformNode.d.ts +1 -1
  43. three/examples/jsm/nodes/core/AssignNode.d.ts +17 -0
  44. three/examples/jsm/nodes/core/AttributeNode.d.ts +3 -0
  45. three/examples/jsm/nodes/core/BypassNode.d.ts +9 -0
  46. three/examples/jsm/nodes/core/CacheNode.d.ts +11 -0
  47. three/examples/jsm/nodes/core/ConstNode.d.ts +3 -3
  48. three/examples/jsm/nodes/core/ContextNode.d.ts +11 -0
  49. three/examples/jsm/nodes/core/IndexNode.d.ts +18 -0
  50. three/examples/jsm/nodes/core/InputNode.d.ts +4 -4
  51. three/examples/jsm/nodes/core/LightingModel.d.ts +36 -0
  52. three/examples/jsm/nodes/core/Node.d.ts +32 -8
  53. three/examples/jsm/nodes/core/NodeBuilder.d.ts +27 -23
  54. three/examples/jsm/nodes/core/NodeFrame.d.ts +18 -6
  55. three/examples/jsm/nodes/core/NodeUniform.d.ts +12 -8
  56. three/examples/jsm/nodes/core/NodeUtils.d.ts +6 -3
  57. three/examples/jsm/nodes/core/PropertyNode.d.ts +27 -1
  58. three/examples/jsm/nodes/core/UniformNode.d.ts +12 -4
  59. three/examples/jsm/nodes/core/VarNode.d.ts +10 -0
  60. three/examples/jsm/nodes/core/VaryingNode.d.ts +9 -0
  61. three/examples/jsm/nodes/core/constants.d.ts +31 -28
  62. three/examples/jsm/nodes/display/AfterImageNode.d.ts +25 -0
  63. three/examples/jsm/nodes/display/AnamorphicNode.d.ts +32 -0
  64. three/examples/jsm/nodes/display/BlendModeNode.d.ts +21 -6
  65. three/examples/jsm/nodes/display/ColorAdjustmentNode.d.ts +29 -1
  66. three/examples/jsm/nodes/display/ColorSpaceNode.d.ts +17 -0
  67. three/examples/jsm/nodes/display/FrontFacingNode.d.ts +4 -0
  68. three/examples/jsm/nodes/display/GaussianBlurNode.d.ts +28 -0
  69. three/examples/jsm/nodes/display/NormalMapNode.d.ts +13 -1
  70. three/examples/jsm/nodes/display/PassNode.d.ts +44 -0
  71. three/examples/jsm/nodes/display/PosterizeNode.d.ts +12 -0
  72. three/examples/jsm/nodes/display/ToneMappingNode.d.ts +8 -1
  73. three/examples/jsm/nodes/display/ViewportDepthNode.d.ts +32 -0
  74. three/examples/jsm/nodes/display/ViewportNode.d.ts +8 -0
  75. three/examples/jsm/nodes/display/ViewportSharedTextureNode.d.ts +18 -0
  76. three/examples/jsm/nodes/display/ViewportTextureNode.d.ts +33 -0
  77. three/examples/jsm/nodes/fog/FogExp2Node.d.ts +9 -0
  78. three/examples/jsm/nodes/fog/FogNode.d.ts +9 -0
  79. three/examples/jsm/nodes/fog/FogRangeNode.d.ts +9 -0
  80. three/examples/jsm/nodes/functions/BSDF/BRDF_GGX.d.ts +9 -2
  81. three/examples/jsm/nodes/functions/BSDF/BRDF_Lambert.d.ts +3 -2
  82. three/examples/jsm/nodes/functions/BSDF/BRDF_Sheen.d.ts +7 -0
  83. three/examples/jsm/nodes/functions/BSDF/DFGApprox.d.ts +3 -2
  84. three/examples/jsm/nodes/functions/BSDF/D_GGX.d.ts +3 -2
  85. three/examples/jsm/nodes/functions/BSDF/F_Schlick.d.ts +3 -2
  86. three/examples/jsm/nodes/functions/BSDF/V_GGX_SmithCorrelated.d.ts +1 -1
  87. three/examples/jsm/nodes/functions/PhongLightingModel.d.ts +7 -0
  88. three/examples/jsm/nodes/functions/PhysicalLightingModel.d.ts +17 -8
  89. three/examples/jsm/nodes/functions/material/getGeometryRoughness.d.ts +1 -1
  90. three/examples/jsm/nodes/functions/material/getRoughness.d.ts +1 -1
  91. three/examples/jsm/nodes/geometry/RangeNode.d.ts +3 -0
  92. three/examples/jsm/nodes/gpgpu/ComputeNode.d.ts +13 -0
  93. three/examples/jsm/nodes/lighting/LightingContextNode.d.ts +20 -8
  94. three/examples/jsm/nodes/lighting/LightsNode.d.ts +3 -0
  95. three/examples/jsm/nodes/materials/LineBasicNodeMaterial.d.ts +1 -2
  96. three/examples/jsm/nodes/materials/Materials.d.ts +9 -17
  97. three/examples/jsm/nodes/materials/MeshBasicNodeMaterial.d.ts +2 -4
  98. three/examples/jsm/nodes/materials/MeshPhongNodeMaterial.d.ts +12 -0
  99. three/examples/jsm/nodes/materials/MeshPhysicalNodeMaterial.d.ts +16 -7
  100. three/examples/jsm/nodes/materials/MeshSSSNodeMaterial.d.ts +17 -0
  101. three/examples/jsm/nodes/materials/MeshStandardNodeMaterial.d.ts +1 -5
  102. three/examples/jsm/nodes/materials/NodeMaterial.d.ts +55 -16
  103. three/examples/jsm/nodes/materials/PointsNodeMaterial.d.ts +2 -8
  104. three/examples/jsm/nodes/materials/SpriteNodeMaterial.d.ts +0 -10
  105. three/examples/jsm/nodes/materialx/MaterialXNodes.d.ts +43 -34
  106. three/examples/jsm/nodes/materialx/lib/mx_hsv.d.ts +5 -3
  107. three/examples/jsm/nodes/materialx/lib/mx_noise.d.ts +7 -5
  108. three/examples/jsm/nodes/math/CondNode.d.ts +13 -0
  109. three/examples/jsm/nodes/math/HashNode.d.ts +16 -0
  110. three/examples/jsm/nodes/math/MathNode.d.ts +140 -1
  111. three/examples/jsm/nodes/math/MathUtils.d.ts +16 -0
  112. three/examples/jsm/nodes/math/OperatorNode.d.ts +53 -1
  113. three/examples/jsm/nodes/math/TriNoise3D.d.ts +12 -0
  114. three/examples/jsm/nodes/procedural/CheckerNode.d.ts +9 -0
  115. three/examples/jsm/nodes/shadernode/ShaderNode.d.ts +124 -31
  116. three/examples/jsm/nodes/utils/DiscardNode.d.ts +16 -0
  117. three/examples/jsm/nodes/utils/EquirectUVNode.d.ts +4 -2
  118. three/examples/jsm/nodes/utils/MatcapUVNode.d.ts +3 -0
  119. three/examples/jsm/nodes/utils/MaxMipLevelNode.d.ts +6 -3
  120. three/examples/jsm/nodes/utils/OscNode.d.ts +6 -0
  121. three/examples/jsm/nodes/utils/ReflectorNode.d.ts +30 -0
  122. three/examples/jsm/nodes/utils/RemapNode.d.ts +24 -1
  123. three/examples/jsm/nodes/utils/RotateNode.d.ts +21 -0
  124. three/examples/jsm/nodes/utils/RotateUVNode.d.ts +9 -0
  125. three/examples/jsm/nodes/utils/SpecularMIPLevelNode.d.ts +5 -1
  126. three/examples/jsm/nodes/utils/SpriteSheetUVNode.d.ts +7 -0
  127. three/examples/jsm/nodes/utils/TimerNode.d.ts +7 -1
  128. three/examples/jsm/nodes/utils/TriplanarTexturesNode.d.ts +28 -7
  129. three/examples/jsm/objects/GroundedSkybox.d.ts +5 -0
  130. three/examples/jsm/objects/QuadMesh.d.ts +15 -0
  131. three/examples/jsm/postprocessing/{HBAOPass.d.ts → GTAOPass.d.ts} +25 -10
  132. three/examples/jsm/postprocessing/SSAOPass.d.ts +1 -1
  133. three/examples/jsm/renderers/common/Backend.d.ts +6 -2
  134. three/examples/jsm/renderers/common/Color4.d.ts +9 -0
  135. three/examples/jsm/renderers/common/Info.d.ts +7 -1
  136. three/examples/jsm/renderers/common/PostProcessing.d.ts +11 -0
  137. three/examples/jsm/renderers/common/Renderer.d.ts +243 -4
  138. three/examples/jsm/renderers/common/StorageTexture.d.ts +5 -0
  139. three/examples/jsm/renderers/webgl/WebGLBackend.d.ts +4 -2
  140. three/examples/jsm/renderers/webgl/nodes/WebGLNodeBuilder.d.ts +2 -2
  141. three/examples/jsm/renderers/webgl-legacy/nodes/WebGLNodes.d.ts +3 -0
  142. three/examples/jsm/renderers/webgpu/WebGPUBackend.d.ts +15 -6
  143. three/examples/jsm/renderers/webgpu/WebGPURenderer.d.ts +7 -7
  144. three/examples/jsm/shaders/{HBAOShader.d.ts → GTAOShader.d.ts} +23 -8
  145. three/examples/jsm/shaders/PoissonDenoiseShader.d.ts +1 -1
  146. three/examples/jsm/utils/BufferGeometryUtils.d.ts +0 -10
  147. three/examples/jsm/webxr/XRControllerModelFactory.d.ts +6 -5
  148. three/examples/jsm/webxr/XRHandMeshModel.d.ts +10 -2
  149. three/package.json +2 -2
  150. three/src/Three.d.ts +1 -0
  151. three/src/cameras/PerspectiveCamera.d.ts +13 -0
  152. three/src/constants.d.ts +4 -3
  153. three/src/core/InterleavedBufferAttribute.d.ts +12 -2
  154. three/src/core/Object3D.d.ts +13 -13
  155. three/src/core/UniformsGroup.d.ts +3 -3
  156. three/src/extras/core/Curve.d.ts +9 -9
  157. three/src/extras/core/CurvePath.d.ts +8 -7
  158. three/src/geometries/RingGeometry.d.ts +1 -1
  159. three/src/lights/PointLight.d.ts +7 -0
  160. three/src/loaders/MaterialLoader.d.ts +6 -3
  161. three/src/materials/LineBasicMaterial.d.ts +7 -0
  162. three/src/materials/LineDashedMaterial.d.ts +7 -1
  163. three/src/materials/Material.d.ts +17 -15
  164. three/src/materials/MeshBasicMaterial.d.ts +7 -0
  165. three/src/materials/MeshDepthMaterial.d.ts +6 -0
  166. three/src/materials/MeshDistanceMaterial.d.ts +7 -0
  167. three/src/materials/MeshLambertMaterial.d.ts +7 -0
  168. three/src/materials/MeshMatcapMaterial.d.ts +7 -0
  169. three/src/materials/MeshNormalMaterial.d.ts +7 -0
  170. three/src/materials/MeshPhongMaterial.d.ts +7 -0
  171. three/src/materials/MeshPhysicalMaterial.d.ts +6 -1
  172. three/src/materials/MeshStandardMaterial.d.ts +7 -2
  173. three/src/materials/MeshToonMaterial.d.ts +7 -0
  174. three/src/materials/PointsMaterial.d.ts +7 -0
  175. three/src/materials/RawShaderMaterial.d.ts +9 -0
  176. three/src/materials/ShaderMaterial.d.ts +17 -3
  177. three/src/materials/ShadowMaterial.d.ts +7 -0
  178. three/src/materials/SpriteMaterial.d.ts +7 -2
  179. three/src/math/Color.d.ts +1 -1
  180. three/src/math/Matrix4.d.ts +30 -30
  181. three/src/math/Quaternion.d.ts +27 -30
  182. three/src/math/Sphere.d.ts +5 -0
  183. three/src/math/Triangle.d.ts +8 -25
  184. three/src/math/Vector2.d.ts +24 -159
  185. three/src/math/Vector3.d.ts +46 -54
  186. three/src/math/Vector4.d.ts +25 -20
  187. three/src/objects/BatchedMesh.d.ts +2 -2
  188. three/src/objects/Bone.d.ts +2 -2
  189. three/src/objects/InstancedMesh.d.ts +2 -1
  190. three/src/objects/LOD.d.ts +2 -2
  191. three/src/objects/Line.d.ts +3 -2
  192. three/src/objects/LineLoop.d.ts +3 -1
  193. three/src/objects/LineSegments.d.ts +3 -1
  194. three/src/objects/Points.d.ts +3 -2
  195. three/src/objects/SkinnedMesh.d.ts +4 -8
  196. three/src/objects/Sprite.d.ts +2 -2
  197. three/src/renderers/shaders/ShaderLib.d.ts +18 -18
  198. three/src/renderers/shaders/UniformsUtils.d.ts +3 -2
  199. three/src/renderers/webgl/WebGLLights.d.ts +39 -37
  200. three/src/renderers/webgl/WebGLProgram.d.ts +0 -1
  201. three/src/renderers/webgl/WebGLPrograms.d.ts +226 -9
  202. three/src/renderers/webxr/WebXRDepthSensing.d.ts +27 -0
  203. three/src/renderers/webxr/WebXRManager.d.ts +2 -1
  204. three/src/textures/CompressedCubeTexture.d.ts +13 -0
  205. three/src/textures/DataArrayTexture.d.ts +1 -1
  206. three/src/textures/Source.d.ts +11 -1
  207. three/build/three.d.ts +0 -2
  208. three/build/three.min.d.ts +0 -2
  209. three/examples/jsm/nodes/shadernode/ShaderNodeBaseElements.d.ts +0 -310
  210. three/examples/jsm/nodes/shadernode/ShaderNodeElements.d.ts +0 -166
  211. three/examples/jsm/objects/GroundProjectedSkybox.d.ts +0 -13
@@ -3,11 +3,19 @@ export * from './core/constants.js';
3
3
 
4
4
  // core
5
5
  export { default as ArrayUniformNode } from './core/ArrayUniformNode.js';
6
- export { default as AttributeNode } from './core/AttributeNode.js';
7
- export { default as BypassNode } from './core/BypassNode.js';
8
- export { default as CacheNode } from './core/CacheNode.js';
6
+ export { default as AssignNode, assign } from './core/AssignNode.js';
7
+ export { default as AttributeNode, attribute } from './core/AttributeNode.js';
8
+ export { default as BypassNode, bypass } from './core/BypassNode.js';
9
+ export { default as CacheNode, cache } from './core/CacheNode.js';
9
10
  export { default as ConstNode } from './core/ConstNode.js';
10
- export { default as ContextNode } from './core/ContextNode.js';
11
+ export { default as ContextNode, context, label } from './core/ContextNode.js';
12
+ export { default as IndexNode, vertexIndex, instanceIndex, IndexNodeScope } from './core/IndexNode.js';
13
+ export {
14
+ default as LightingModel,
15
+ LightingModelReflectedLight,
16
+ LightingModelDirectInput,
17
+ LightingModelIndirectInput,
18
+ } from './core/LightingModel.js';
11
19
  export { default as Node } from './core/Node.js';
12
20
  export { default as NodeAttribute } from './core/NodeAttribute.js';
13
21
  export { default as NodeBuilder } from './core/NodeBuilder.js';
@@ -19,12 +27,32 @@ export { default as NodeKeywords } from './core/NodeKeywords.js';
19
27
  export { default as NodeUniform } from './core/NodeUniform.js';
20
28
  export { default as NodeVar } from './core/NodeVar.js';
21
29
  export { default as NodeVarying } from './core/NodeVarying.js';
22
- export { default as PropertyNode } from './core/PropertyNode.js';
30
+ export {
31
+ default as PropertyNode,
32
+ property,
33
+ varyingProperty,
34
+ output,
35
+ diffuseColor,
36
+ roughness,
37
+ metalness,
38
+ clearcoat,
39
+ clearcoatRoughness,
40
+ sheen,
41
+ sheenRoughness,
42
+ iridescence,
43
+ iridescenceIOR,
44
+ iridescenceThickness,
45
+ specularColor,
46
+ shininess,
47
+ dashSize,
48
+ gapSize,
49
+ pointWidth,
50
+ } from './core/PropertyNode.js';
23
51
  export { default as StackNode } from './core/StackNode.js';
24
52
  export { default as TempNode } from './core/TempNode.js';
25
- export { default as UniformNode } from './core/UniformNode.js';
26
- export { default as VarNode } from './core/VarNode.js';
27
- export { default as VaryingNode } from './core/VaryingNode.js';
53
+ export { default as UniformNode, uniform } from './core/UniformNode.js';
54
+ export { default as VarNode, temp } from './core/VarNode.js';
55
+ export { default as VaryingNode, varying } from './core/VaryingNode.js';
28
56
 
29
57
  import * as NodeUtils from './core/NodeUtils.js';
30
58
  export { NodeUtils };
@@ -32,95 +60,309 @@ export { NodeUtils };
32
60
  // math
33
61
  export {
34
62
  default as MathNode,
63
+ PI,
64
+ PI2,
65
+ EPSILON,
66
+ INFINITY,
67
+ radians,
68
+ degrees,
69
+ exp,
70
+ exp2,
71
+ log,
72
+ log2,
73
+ sqrt,
74
+ inverseSqrt,
75
+ floor,
76
+ ceil,
77
+ normalize,
78
+ fract,
79
+ sin,
80
+ cos,
81
+ tan,
82
+ asin,
83
+ acos,
84
+ atan,
85
+ abs,
86
+ sign,
87
+ length,
88
+ lengthSq,
89
+ negate,
90
+ oneMinus,
91
+ dFdx,
92
+ dFdy,
93
+ round,
94
+ reciprocal,
95
+ trunc,
96
+ fwidth,
97
+ bitcast,
98
+ atan2,
99
+ min,
100
+ max,
101
+ mod,
102
+ step,
103
+ reflect,
104
+ distance,
105
+ difference,
106
+ dot,
107
+ cross,
108
+ pow,
109
+ pow2,
110
+ pow3,
111
+ pow4,
112
+ transformDirection,
113
+ mix,
114
+ clamp,
115
+ saturate,
116
+ refract,
117
+ smoothstep,
118
+ faceForward,
119
+ cbrt,
35
120
  MathNodeMethod1,
36
121
  MathNodeMethod2,
37
122
  MathNodeMethod3,
38
123
  MathNodeMethod,
39
124
  } from './math/MathNode.js';
40
- export { default as OperatorNode, OperatorNodeOp } from './math/OperatorNode.js';
41
- export { default as CondNode } from './math/CondNode.js';
125
+
126
+ export {
127
+ default as OperatorNode,
128
+ add,
129
+ sub,
130
+ mul,
131
+ div,
132
+ remainder,
133
+ equal,
134
+ lessThan,
135
+ greaterThan,
136
+ lessThanEqual,
137
+ greaterThanEqual,
138
+ and,
139
+ or,
140
+ not,
141
+ xor,
142
+ bitAnd,
143
+ bitNot,
144
+ bitOr,
145
+ bitXor,
146
+ shiftLeft,
147
+ shiftRight,
148
+ OperatorNodeOp,
149
+ } from './math/OperatorNode.js';
150
+ export { default as CondNode, cond } from './math/CondNode.js';
151
+ export { default as HashNode, hash } from './math/HashNode.js';
152
+
153
+ // math utils
154
+ export { parabola, gain, pcurve, sinc } from './math/MathUtils.js';
155
+ export { triNoise3D } from './math/TriNoise3D.js';
42
156
 
43
157
  // utils
44
158
  export { default as ArrayElementNode } from './utils/ArrayElementNode.js';
45
159
  export { default as ConvertNode } from './utils/ConvertNode.js';
46
- export { default as EquirectUVNode } from './utils/EquirectUVNode.js';
160
+ export { default as DiscardNode, discard } from './utils/DiscardNode.js';
161
+ export { default as EquirectUVNode, equirectUV } from './utils/EquirectUVNode.js';
47
162
  export { default as JoinNode } from './utils/JoinNode.js';
48
- export { default as MatcapUVNode } from './utils/MatcapUVNode.js';
49
- export { default as MaxMipLevelNode } from './utils/MaxMipLevelNode.js';
50
- export { default as OscNode, OscNodeMethod } from './utils/OscNode.js';
51
- export { default as RemapNode } from './utils/RemapNode.js';
52
- export { default as RotateUVNode } from './utils/RotateUVNode.js';
53
- export { default as SpecularMIPLevelNode } from './utils/SpecularMIPLevelNode.js';
163
+ export { default as MatcapUVNode, matcapUV } from './utils/MatcapUVNode.js';
164
+ export { default as MaxMipLevelNode, maxMipLevel } from './utils/MaxMipLevelNode.js';
165
+ export { default as OscNode, oscSine, oscSquare, oscTriangle, oscSawtooth, OscNodeMethod } from './utils/OscNode.js';
166
+ export { default as RemapNode, remap, remapClamp } from './utils/RemapNode.js';
167
+ export { default as RotateUVNode, rotateUV } from './utils/RotateUVNode.js';
168
+ export { default as RotateNode, rotate } from './utils/RotateNode.js';
169
+ export { default as SpecularMIPLevelNode, specularMIPLevel } from './utils/SpecularMIPLevelNode.js';
54
170
  export { default as SplitNode } from './utils/SplitNode.js';
55
- export { default as SpriteSheetUVNode } from './utils/SpriteSheetUVNode.js';
56
- export { default as TimerNode, TimerNodeScope } from './utils/TimerNode.js';
57
- export { default as TriplanarTexturesNode } from './utils/TriplanarTexturesNode.js';
171
+ export { default as SpriteSheetUVNode, spritesheetUV } from './utils/SpriteSheetUVNode.js';
172
+ export {
173
+ default as TimerNode,
174
+ timerLocal,
175
+ timerGlobal,
176
+ timerDelta,
177
+ frameId,
178
+ TimerNodeScope,
179
+ } from './utils/TimerNode.js';
180
+ export {
181
+ default as TriplanarTexturesNode,
182
+ triplanarTextures,
183
+ triplanarTexture,
184
+ } from './utils/TriplanarTexturesNode.js';
185
+ export { default as ReflectorNode, reflector, ReflectorNodeParameters } from './utils/ReflectorNode.js';
58
186
 
59
187
  // shader node
60
- export * from './shadernode/ShaderNodeElements.js';
188
+ export * from './shadernode/ShaderNode.js';
61
189
 
62
190
  // accessors
63
- export { default as BitangentNode, BitangentNodeScope } from './accessors/BitangentNode.js';
64
- export { default as BufferNode } from './accessors/BufferNode.js';
65
- export { default as CameraNode, CameraNodeScope } from './accessors/CameraNode.js';
66
- export { default as CubeTextureNode } from './accessors/CubeTextureNode.js';
67
- export { default as InstanceNode } from './accessors/InstanceNode.js';
68
- export { default as MaterialNode, MaterialNodeScope } from './accessors/MaterialNode.js';
69
- export { default as MaterialReferenceNode } from './accessors/MaterialReferenceNode.js';
70
- export { default as ModelNode } from './accessors/ModelNode.js';
71
- export { default as ModelViewProjectionNode } from './accessors/ModelViewProjectionNode.js';
72
- export { default as NormalNode, NormalNodeScope } from './accessors/NormalNode.js';
191
+ export {
192
+ default as BitangentNode,
193
+ bitangentGeometry,
194
+ bitangentLocal,
195
+ bitangentView,
196
+ bitangentWorld,
197
+ transformedBitangentView,
198
+ transformedBitangentWorld,
199
+ BitangentNodeScope,
200
+ } from './accessors/BitangentNode.js';
201
+ export { default as BufferNode, buffer } from './accessors/BufferNode.js';
202
+ export {
203
+ default as CameraNode,
204
+ cameraProjectionMatrix,
205
+ cameraProjectionMatrixInverse,
206
+ cameraViewMatrix,
207
+ cameraNormalMatrix,
208
+ cameraWorldMatrix,
209
+ cameraPosition,
210
+ cameraNear,
211
+ cameraFar,
212
+ cameraLogDepth,
213
+ CameraNodeScope,
214
+ } from './accessors/CameraNode.js';
215
+ export { default as VertexColorNode, vertexColor } from './accessors/VertexColorNode.js';
216
+ export { default as CubeTextureNode, cubeTexture } from './accessors/CubeTextureNode.js';
217
+ export { default as InstanceNode, instance } from './accessors/InstanceNode.js';
218
+ export {
219
+ default as MaterialNode,
220
+ materialAlphaTest,
221
+ materialColor,
222
+ materialShininess,
223
+ materialEmissive,
224
+ materialOpacity,
225
+ materialSpecularColor,
226
+ materialReflectivity,
227
+ materialRoughness,
228
+ materialMetalness,
229
+ materialRotation,
230
+ MaterialNodeScope,
231
+ } from './accessors/MaterialNode.js';
232
+ export { default as MaterialReferenceNode, materialReference } from './accessors/MaterialReferenceNode.js';
233
+ export { default as TextureBicubicNode, textureBicubic } from './accessors/TextureBicubicNode.js';
234
+ export {
235
+ default as ModelNode,
236
+ modelDirection,
237
+ modelViewMatrix,
238
+ modelNormalMatrix,
239
+ modelWorldMatrix,
240
+ modelPosition,
241
+ modelViewPosition,
242
+ modelScale,
243
+ } from './accessors/ModelNode.js';
244
+ export { default as ModelViewProjectionNode, modelViewProjection } from './accessors/ModelViewProjectionNode.js';
245
+ export {
246
+ default as NormalNode,
247
+ normalGeometry,
248
+ normalLocal,
249
+ normalView,
250
+ normalWorld,
251
+ transformedNormalView,
252
+ NormalNodeScope,
253
+ } from './accessors/NormalNode.js';
73
254
  export { default as Object3DNode, Object3DNodeScope as OObject3DNodeScope } from './accessors/Object3DNode.js';
74
- export { default as PointUVNode } from './accessors/PointUVNode.js';
75
- export { default as PositionNode, PositionNodeScope } from './accessors/PositionNode.js';
76
- export { default as ReferenceNode } from './accessors/ReferenceNode.js';
77
- export { default as ReflectVectorNode } from './accessors/ReflectVectorNode.js';
78
- export { default as SkinningNode } from './accessors/SkinningNode.js';
79
- export { default as TangentNode, TangentNodeScope } from './accessors/TangentNode.js';
80
- export { default as TextureNode } from './accessors/TextureNode.js';
81
- export { default as UVNode } from './accessors/UVNode.js';
82
- export { default as UserDataNode } from './accessors/UserDataNode.js';
255
+ export { default as PointUVNode, pointUV } from './accessors/PointUVNode.js';
256
+ export {
257
+ default as PositionNode,
258
+ positionGeometry,
259
+ positionLocal,
260
+ positionWorld,
261
+ positionWorldDirection,
262
+ positionView,
263
+ positionViewDirection,
264
+ PositionNodeScope,
265
+ } from './accessors/PositionNode.js';
266
+ export { default as ReferenceNode, reference } from './accessors/ReferenceNode.js';
267
+ export { default as ReflectVectorNode, reflectVector } from './accessors/ReflectVectorNode.js';
268
+ export { default as SkinningNode, skinning } from './accessors/SkinningNode.js';
269
+ export { default as StorageBufferNode, storage } from './accessors/StorageBufferNode.js';
270
+ export {
271
+ default as TangentNode,
272
+ tangentGeometry,
273
+ tangentLocal,
274
+ tangentView,
275
+ tangentWorld,
276
+ transformedTangentView,
277
+ transformedTangentWorld,
278
+ TangentNodeScope,
279
+ } from './accessors/TangentNode.js';
280
+ export { default as TextureNode, texture, sampler } from './accessors/TextureNode.js';
281
+ export { default as UVNode, uv } from './accessors/UVNode.js';
282
+ export { default as UserDataNode, userData } from './accessors/UserDataNode.js';
83
283
 
84
284
  // display
85
- export { default as BlendModeNode, BlendMode } from './display/BlendModeNode.js';
86
- export { default as ColorAdjustmentNode, ColorAdjustmentMethod } from './display/ColorAdjustmentNode.js';
87
- export { default as ColorSpaceNode, ColorSpaceNodeMethod } from './display/ColorSpaceNode.js';
88
- export { default as FrontFacingNode } from './display/FrontFacingNode.js';
89
- export { default as NormalMapNode } from './display/NormalMapNode.js';
90
- export { default as PosterizeNode } from './display/PosterizeNode.js';
91
- export { default as ToneMappingNode } from './display/ToneMappingNode.js';
92
- export { default as ViewportNode } from './display/ViewportNode.js';
285
+ export { default as BlendModeNode, burn, dodge, overlay, screen, BlendMode } from './display/BlendModeNode.js';
286
+ export {
287
+ default as ColorAdjustmentNode,
288
+ saturation,
289
+ vibrance,
290
+ hue,
291
+ lumaCoeffs,
292
+ luminance,
293
+ threshold,
294
+ ColorAdjustmentMethod,
295
+ } from './display/ColorAdjustmentNode.js';
296
+ export {
297
+ default as ColorSpaceNode,
298
+ linearToColorSpace,
299
+ colorSpaceToLinear,
300
+ linearTosRGB,
301
+ sRGBToLinear,
302
+ ColorSpaceNodeMethod,
303
+ } from './display/ColorSpaceNode.js';
304
+ export { default as FrontFacingNode, frontFacing, faceDirection } from './display/FrontFacingNode.js';
305
+ export { default as NormalMapNode, normalMap, TBNViewMatrix } from './display/NormalMapNode.js';
306
+ export { default as PosterizeNode, posterize } from './display/PosterizeNode.js';
307
+ export { default as ToneMappingNode, toneMapping } from './display/ToneMappingNode.js';
308
+ export {
309
+ default as ViewportNode,
310
+ viewportCoordinate,
311
+ viewportResolution,
312
+ viewportTopLeft,
313
+ viewportBottomLeft,
314
+ viewportTopRight,
315
+ viewportBottomRight,
316
+ } from './display/ViewportNode.js';
317
+ export { default as ViewportTextureNode, viewportTexture, viewportMipTexture } from './display/ViewportTextureNode.js';
318
+ export { default as ViewportSharedTextureNode, viewportSharedTexture } from './display/ViewportSharedTextureNode.js';
319
+ export {
320
+ default as ViewportDepthNode,
321
+ viewZToOrthographicDepth,
322
+ orthographicDepthToViewZ,
323
+ viewZToPerspectiveDepth,
324
+ perspectiveDepthToViewZ,
325
+ depth,
326
+ depthTexture,
327
+ depthPixel,
328
+ ViewportDepthNodeScope,
329
+ } from './display/ViewportDepthNode.js';
330
+ export { default as GaussianBlurNode, gaussianBlur } from './display/GaussianBlurNode.js';
331
+ export { default as AfterImageNode, afterImage } from './display/AfterImageNode.js';
332
+ export { default as AnamorphicNode, anamorphic } from './display/AnamorphicNode.js';
333
+
334
+ export { default as PassNode, pass, depthPass, PassNodeScope } from './display/PassNode.js';
93
335
 
94
336
  // code
95
- export { default as ExpressionNode } from './code/ExpressionNode.js';
96
- export { default as CodeNode, CodeNodeInclude } from './code/CodeNode.js';
97
- export { default as FunctionCallNode } from './code/FunctionCallNode.js';
98
- export { default as FunctionNode, FunctionNodeArguments } from './code/FunctionNode.js';
337
+ export { default as ExpressionNode, expression } from './code/ExpressionNode.js';
338
+ export { default as CodeNode, code, CodeNodeInclude } from './code/CodeNode.js';
339
+ export { default as FunctionCallNode, call } from './code/FunctionCallNode.js';
340
+ export { default as FunctionNode, func, fn, FunctionNodeArguments, Fn } from './code/FunctionNode.js';
99
341
 
100
342
  // fog
101
- export { default as FogNode } from './fog/FogNode.js';
102
- export { default as FogRangeNode } from './fog/FogRangeNode.js';
103
- export { default as FogExp2Node } from './fog/FogExp2Node.js';
343
+ export { default as FogNode, fog } from './fog/FogNode.js';
344
+ export { default as FogRangeNode, rangeFog } from './fog/FogRangeNode.js';
345
+ export { default as FogExp2Node, densityFog } from './fog/FogExp2Node.js';
104
346
 
105
347
  // geometry
106
- export { default as RangeNode, RangeModeBound } from './geometry/RangeNode.js';
348
+ export { default as RangeNode, range, RangeModeBound } from './geometry/RangeNode.js';
107
349
 
108
350
  // gpgpu
109
- export { default as ComputeNode } from './gpgpu/ComputeNode.js';
351
+ export { default as ComputeNode, compute } from './gpgpu/ComputeNode.js';
110
352
 
111
353
  // lighting
112
354
  export { default as PointLightNode } from './lighting/PointLightNode.js';
113
355
  export { default as SpotLightNode } from './lighting/SpotLightNode.js';
114
- export { default as LightsNode } from './lighting/LightsNode.js';
356
+ export { default as LightsNode, lights } from './lighting/LightsNode.js';
115
357
  export { default as LightingNode } from './lighting/LightingNode.js';
116
- export { default as LightingContextNode, LightingModelNode } from './lighting/LightingContextNode.js';
358
+ export { default as LightingContextNode, lightingContext } from './lighting/LightingContextNode.js';
117
359
  export { default as HemisphereLightNode } from './lighting/HemisphereLightNode.js';
118
360
  export { default as EnvironmentNode } from './lighting/EnvironmentNode.js';
119
361
  export { default as AONode } from './lighting/AONode.js';
120
362
  export { default as AnalyticLightNode } from './lighting/AnalyticLightNode.js';
121
363
 
122
364
  // procedural
123
- export { default as CheckerNode } from './procedural/CheckerNode.js';
365
+ export { default as CheckerNode, checker } from './procedural/CheckerNode.js';
124
366
 
125
367
  // loaders
126
368
  export { default as NodeLoader } from './loaders/NodeLoader.js';
@@ -146,4 +388,5 @@ export { getDistanceAttenuation } from './lighting/LightUtils.js';
146
388
  export { default as getGeometryRoughness } from './functions/material/getGeometryRoughness.js';
147
389
  export { default as getRoughness } from './functions/material/getRoughness.js';
148
390
 
149
- export { default as physicalLightingModel } from './functions/PhysicalLightingModel.js';
391
+ export { default as PhongLightingModel } from './functions/PhongLightingModel.js';
392
+ export { default as PhysicalLightingModel } from './functions/PhysicalLightingModel.js';
@@ -1,4 +1,6 @@
1
1
  import Node from '../core/Node.js';
2
+ import MathNode from '../math/MathNode.js';
3
+ import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
2
4
 
3
5
  export type BitangentNodeScope =
4
6
  | typeof BitangentNode.LOCAL
@@ -16,3 +18,10 @@ export default class BitangentNode extends Node {
16
18
 
17
19
  constructor(scope?: BitangentNodeScope);
18
20
  }
21
+
22
+ export const bitangentGeometry: ShaderNodeObject<BitangentNode>;
23
+ export const bitangentLocal: ShaderNodeObject<BitangentNode>;
24
+ export const bitangentView: ShaderNodeObject<BitangentNode>;
25
+ export const bitangentWorld: ShaderNodeObject<BitangentNode>;
26
+ export const transformedBitangentView: ShaderNodeObject<MathNode>;
27
+ export const transformedBitangentWorld: ShaderNodeObject<MathNode>;
@@ -1,7 +1,8 @@
1
1
  import { NodeTypeOption } from '../core/constants.js';
2
2
  import UniformNode from '../core/UniformNode.js';
3
+ import { NodeOrType, ShaderNodeObject } from '../shadernode/ShaderNode.js';
3
4
 
4
- export default class BufferNode extends UniformNode {
5
+ export default class BufferNode extends UniformNode<ArrayLike<number>> {
5
6
  isBufferNode: true;
6
7
 
7
8
  bufferType: string;
@@ -9,3 +10,5 @@ export default class BufferNode extends UniformNode {
9
10
 
10
11
  constructor(value: ArrayLike<number>, bufferType: NodeTypeOption, bufferCount?: number);
11
12
  }
13
+
14
+ export const buffer: (value: ArrayLike<number>, nodeOrType: NodeOrType, count: number) => ShaderNodeObject<BufferNode>;
@@ -1,12 +1,30 @@
1
1
  import Object3DNode, { Object3DNodeScope } from './Object3DNode.js';
2
+ import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
2
3
 
3
- export type CameraNodeScope = Object3DNodeScope | typeof CameraNode.PROJECTION_MATRIX;
4
+ export type CameraNodeScope =
5
+ | Object3DNodeScope
6
+ | typeof CameraNode.PROJECTION_MATRIX
7
+ | typeof CameraNode.PROJECTION_MATRIX_INVERSE
8
+ | typeof CameraNode.NEAR
9
+ | typeof CameraNode.FAR
10
+ | typeof CameraNode.LOG_DEPTH;
4
11
 
5
12
  export default class CameraNode extends Object3DNode {
6
- static PROJECTION_MATRIX: 'projectionMatrix';
7
-
8
- // @ts-expect-error
9
- scope: CameraNodeScope;
13
+ constructor(scope?: string);
10
14
 
11
- constructor(scope?: CameraNodeScope);
15
+ static PROJECTION_MATRIX: 'projectionMatrix';
16
+ static PROJECTION_MATRIX_INVERSE: 'projectionMatrixInverse';
17
+ static NEAR: 'near';
18
+ static FAR: 'far';
19
+ static LOG_DEPTH: 'logDepth';
12
20
  }
21
+
22
+ export const cameraProjectionMatrix: ShaderNodeObject<CameraNode>;
23
+ export const cameraProjectionMatrixInverse: ShaderNodeObject<CameraNode>;
24
+ export const cameraNear: ShaderNodeObject<CameraNode>;
25
+ export const cameraFar: ShaderNodeObject<CameraNode>;
26
+ export const cameraLogDepth: ShaderNodeObject<CameraNode>;
27
+ export const cameraViewMatrix: ShaderNodeObject<CameraNode>;
28
+ export const cameraNormalMatrix: ShaderNodeObject<CameraNode>;
29
+ export const cameraWorldMatrix: ShaderNodeObject<CameraNode>;
30
+ export const cameraPosition: ShaderNodeObject<CameraNode>;
@@ -1,13 +1,26 @@
1
- import TextureNode from './TextureNode.js';
2
- import { Node } from '../Nodes.js';
3
1
  import { CubeTexture } from '../../../../src/Three.js';
2
+ import TextureNode from './TextureNode.js';
3
+ import Node from '../core/Node.js';
4
+ import { NodeRepresentation, ShaderNodeObject } from '../shadernode/ShaderNode.js';
4
5
 
5
6
  export default class CubeTextureNode extends TextureNode {
6
7
  isCubeTextureNode: boolean;
7
- uvNode: Node | null;
8
- levelNode: Node | null;
8
+ uvNode: ShaderNodeObject<Node> | null;
9
+ levelNode: ShaderNodeObject<Node> | null;
9
10
 
10
11
  constructor(value: CubeTexture, uvNode?: Node | null, levelNode?: Node | null);
11
12
 
12
13
  getDefaultUV(): Node;
13
14
  }
15
+
16
+ export const cubeTexture: (
17
+ value: CubeTexture,
18
+ uvNode?: NodeRepresentation,
19
+ levelNode?: NodeRepresentation,
20
+ ) => ShaderNodeObject<CubeTextureNode>;
21
+
22
+ declare module '../shadernode/ShaderNode.js' {
23
+ interface NodeElements {
24
+ cubeTexture: typeof cubeTexture;
25
+ }
26
+ }
@@ -1,5 +1,6 @@
1
1
  import { InstancedMesh } from '../../../../src/Three.js';
2
2
  import Node from '../core/Node.js';
3
+ import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
3
4
 
4
5
  export default class InstanceNode extends Node {
5
6
  instanceMesh: InstancedMesh;
@@ -7,3 +8,5 @@ export default class InstanceNode extends Node {
7
8
 
8
9
  constructor(instanceMesh: InstancedMesh);
9
10
  }
11
+
12
+ export const instance: (instanceMesh: InstancedMesh) => ShaderNodeObject<InstanceNode>;
@@ -1,4 +1,5 @@
1
1
  import Node from '../core/Node.js';
2
+ import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
2
3
 
3
4
  export type MaterialNodeScope =
4
5
  | typeof MaterialNode.ALPHA_TEST
@@ -21,3 +22,14 @@ export default class MaterialNode extends Node {
21
22
  scope: MaterialNodeScope;
22
23
  constructor(scope?: MaterialNodeScope);
23
24
  }
25
+
26
+ export const materialAlphaTest: ShaderNodeObject<MaterialNode>;
27
+ export const materialColor: ShaderNodeObject<MaterialNode>;
28
+ export const materialShininess: ShaderNodeObject<MaterialNode>;
29
+ export const materialEmissive: ShaderNodeObject<MaterialNode>;
30
+ export const materialOpacity: ShaderNodeObject<MaterialNode>;
31
+ export const materialSpecularColor: ShaderNodeObject<MaterialNode>;
32
+ export const materialReflectivity: ShaderNodeObject<MaterialNode>;
33
+ export const materialRoughness: ShaderNodeObject<MaterialNode>;
34
+ export const materialMetalness: ShaderNodeObject<MaterialNode>;
35
+ export const materialRotation: ShaderNodeObject<MaterialNode>;
@@ -1,6 +1,13 @@
1
1
  import { Material } from '../../../../src/Three.js';
2
2
  import ReferenceNode from './ReferenceNode.js';
3
+ import { NodeOrType, ShaderNodeObject } from '../shadernode/ShaderNode.js';
3
4
 
4
5
  export default class MaterialReferenceNode extends ReferenceNode<Material | null> {
5
6
  constructor(property: string, inputType: string, material?: Material | null);
6
7
  }
8
+
9
+ export const materialReference: (
10
+ name: string,
11
+ nodeOrType: NodeOrType,
12
+ material?: Material | null,
13
+ ) => ShaderNodeObject<MaterialReferenceNode>;
@@ -1,5 +1,5 @@
1
- import { NodeFrame } from '../Nodes.js';
2
1
  import Object3DNode, { Object3DNodeScope } from './Object3DNode.js';
2
+ import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
3
3
 
4
4
  /**
5
5
  * Similar to {@link Object3DNode} but the object comes from {@link NodeFrame}
@@ -7,3 +7,11 @@ import Object3DNode, { Object3DNodeScope } from './Object3DNode.js';
7
7
  export default class ModelNode extends Object3DNode {
8
8
  constructor(scope?: Object3DNodeScope);
9
9
  }
10
+
11
+ export const modelDirection: ShaderNodeObject<ModelNode>;
12
+ export const modelViewMatrix: ShaderNodeObject<ModelNode>;
13
+ export const modelNormalMatrix: ShaderNodeObject<ModelNode>;
14
+ export const modelWorldMatrix: ShaderNodeObject<ModelNode>;
15
+ export const modelPosition: ShaderNodeObject<ModelNode>;
16
+ export const modelScale: ShaderNodeObject<ModelNode>;
17
+ export const modelViewPosition: ShaderNodeObject<ModelNode>;
@@ -1,6 +1,9 @@
1
1
  import Node from '../core/Node.js';
2
2
  import PositionNode from './PositionNode.js';
3
+ import { NodeRepresentation, ShaderNodeObject } from '../shadernode/ShaderNode.js';
3
4
 
4
5
  export default class ModelViewProjectionNode extends Node {
5
6
  constructor(positionNode?: PositionNode);
6
7
  }
8
+
9
+ export const modelViewProjection: (position?: NodeRepresentation) => ShaderNodeObject<ModelViewProjectionNode>;
@@ -1,4 +1,6 @@
1
1
  import Node from '../core/Node.js';
2
+ import VarNode from '../core/VarNode.js';
3
+ import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
2
4
 
3
5
  export type NormalNodeScope = typeof NormalNode.GEOMETRY | typeof NormalNode.LOCAL | typeof NormalNode.VIEW;
4
6
 
@@ -10,3 +12,9 @@ export default class NormalNode extends Node {
10
12
 
11
13
  constructor(scope?: NormalNodeScope);
12
14
  }
15
+
16
+ export const normalGeometry: ShaderNodeObject<NormalNode>;
17
+ export const normalLocal: ShaderNodeObject<NormalNode>;
18
+ export const normalView: ShaderNodeObject<NormalNode>;
19
+ export const normalWorld: ShaderNodeObject<NormalNode>;
20
+ export const transformedNormalView: ShaderNodeObject<VarNode>;
@@ -6,17 +6,21 @@ export type Object3DNodeScope =
6
6
  | typeof Object3DNode.NORMAL_MATRIX
7
7
  | typeof Object3DNode.WORLD_MATRIX
8
8
  | typeof Object3DNode.POSITION
9
- | typeof Object3DNode.VIEW_POSITION;
9
+ | typeof Object3DNode.SCALE
10
+ | typeof Object3DNode.VIEW_POSITION
11
+ | typeof Object3DNode.DIRECTION;
10
12
 
11
13
  export default class Object3DNode extends Node {
14
+ scope: string;
15
+ object3d: Object3D | null;
16
+
17
+ constructor(scope?: string, object3d?: Object3D | null);
18
+
12
19
  static VIEW_MATRIX: 'viewMatrix';
13
20
  static NORMAL_MATRIX: 'normalMatrix';
14
21
  static WORLD_MATRIX: 'worldMatrix';
15
22
  static POSITION: 'position';
23
+ static SCALE: 'scale';
16
24
  static VIEW_POSITION: 'viewPosition';
17
-
18
- scope: Object3DNodeScope;
19
- object3d: Object3D | null;
20
-
21
- constructor(scope?: Object3DNodeScope, object3d?: Object3D | null);
25
+ static DIRECTION: 'direction';
22
26
  }