@types/three 0.181.0 → 0.183.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 (351) hide show
  1. three/README.md +1 -1
  2. three/examples/jsm/Addons.d.ts +0 -3
  3. three/examples/jsm/controls/ArcballControls.d.ts +1 -1
  4. three/examples/jsm/controls/DragControls.d.ts +1 -1
  5. three/examples/jsm/controls/FirstPersonControls.d.ts +1 -1
  6. three/examples/jsm/controls/FlyControls.d.ts +1 -1
  7. three/examples/jsm/controls/OrbitControls.d.ts +40 -1
  8. three/examples/jsm/controls/PointerLockControls.d.ts +1 -1
  9. three/examples/jsm/controls/TrackballControls.d.ts +1 -1
  10. three/examples/jsm/controls/TransformControls.d.ts +1 -1
  11. three/examples/jsm/effects/AnaglyphEffect.d.ts +4 -0
  12. three/examples/jsm/environments/ColorEnvironment.d.ts +9 -0
  13. three/examples/jsm/gpgpu/BitonicSort.d.ts +5 -5
  14. three/examples/jsm/helpers/AnimationPathHelper.d.ts +38 -0
  15. three/examples/jsm/helpers/ViewHelper.d.ts +4 -1
  16. three/examples/jsm/inspector/tabs/Parameters.d.ts +3 -0
  17. three/examples/jsm/inspector/ui/Item.d.ts +5 -0
  18. three/examples/jsm/libs/meshopt_decoder.module.d.ts +1 -1
  19. three/examples/jsm/lights/LightProbeGenerator.d.ts +11 -5
  20. three/examples/jsm/loaders/ColladaLoader.d.ts +27 -4
  21. three/examples/jsm/loaders/UltraHDRLoader.d.ts +7 -0
  22. three/examples/jsm/loaders/VOXLoader.d.ts +22 -5
  23. three/examples/jsm/math/Octree.d.ts +36 -14
  24. three/examples/jsm/objects/SkyMesh.d.ts +16 -6
  25. three/examples/jsm/objects/Water2Mesh.d.ts +7 -7
  26. three/examples/jsm/objects/WaterMesh.d.ts +6 -6
  27. three/examples/jsm/physics/AmmoPhysics.d.ts +1 -1
  28. three/examples/jsm/postprocessing/EffectComposer.d.ts +9 -10
  29. three/examples/jsm/postprocessing/OutputPass.d.ts +10 -6
  30. three/examples/jsm/postprocessing/RenderPass.d.ts +15 -10
  31. three/examples/jsm/postprocessing/UnrealBloomPass.d.ts +4 -9
  32. three/examples/jsm/transpiler/AST.d.ts +17 -0
  33. three/examples/jsm/transpiler/TSLEncoder.d.ts +2 -0
  34. three/examples/jsm/tsl/display/AnaglyphPassNode.d.ts +30 -0
  35. three/examples/jsm/tsl/display/AnamorphicNode.d.ts +1 -1
  36. three/examples/jsm/tsl/display/BilateralBlurNode.d.ts +27 -0
  37. three/examples/jsm/tsl/display/BleachBypass.d.ts +1 -1
  38. three/examples/jsm/tsl/display/BloomNode.d.ts +5 -5
  39. three/examples/jsm/tsl/display/CRT.d.ts +22 -0
  40. three/examples/jsm/tsl/display/DenoiseNode.d.ts +5 -5
  41. three/examples/jsm/tsl/display/DotScreenNode.d.ts +4 -6
  42. three/examples/jsm/tsl/display/GTAONode.d.ts +8 -8
  43. three/examples/jsm/tsl/display/GaussianBlurNode.d.ts +4 -2
  44. three/examples/jsm/tsl/display/GodraysNode.d.ts +20 -0
  45. three/examples/jsm/tsl/display/LensflareNode.d.ts +6 -6
  46. three/examples/jsm/tsl/display/Lut3DNode.d.ts +5 -5
  47. three/examples/jsm/tsl/display/MotionBlur.d.ts +1 -1
  48. three/examples/jsm/tsl/display/OutlineNode.d.ts +6 -6
  49. three/examples/jsm/tsl/display/PixelationPassNode.d.ts +10 -10
  50. three/examples/jsm/tsl/display/RGBShiftNode.d.ts +2 -2
  51. three/examples/jsm/tsl/display/RetroPassNode.d.ts +17 -0
  52. three/examples/jsm/tsl/display/SSAAPassNode.d.ts +1 -1
  53. three/examples/jsm/tsl/display/SSGINode.d.ts +11 -11
  54. three/examples/jsm/tsl/display/SSRNode.d.ts +6 -6
  55. three/examples/jsm/tsl/display/SSSNode.d.ts +7 -5
  56. three/examples/jsm/tsl/display/Shape.d.ts +3 -0
  57. three/examples/jsm/tsl/display/TRAANode.d.ts +5 -0
  58. three/examples/jsm/tsl/display/TransitionNode.d.ts +3 -3
  59. three/examples/jsm/tsl/display/boxBlur.d.ts +1 -1
  60. three/examples/jsm/tsl/display/depthAwareBlend.d.ts +15 -0
  61. three/examples/jsm/tsl/display/hashBlur.d.ts +1 -1
  62. three/examples/jsm/tsl/display/radialBlur.d.ts +12 -0
  63. three/examples/jsm/tsl/math/Bayer.d.ts +2 -0
  64. three/examples/jsm/tsl/utils/Raymarching.d.ts +2 -2
  65. three/package.json +4 -4
  66. three/src/Three.Core.d.ts +1 -1
  67. three/src/Three.TSL.d.ts +20 -13
  68. three/src/Three.WebGPU.Nodes.d.ts +2 -0
  69. three/src/Three.WebGPU.d.ts +3 -0
  70. three/src/Three.d.ts +2 -2
  71. three/src/animation/AnimationClip.d.ts +1 -1
  72. three/src/animation/AnimationMixer.d.ts +42 -0
  73. three/src/animation/AnimationUtils.d.ts +3 -8
  74. three/src/animation/KeyframeTrack.d.ts +19 -5
  75. three/src/animation/PropertyMixer.d.ts +5 -4
  76. three/src/audio/Audio.d.ts +224 -157
  77. three/src/audio/AudioAnalyser.d.ts +32 -27
  78. three/src/audio/AudioContext.d.ts +12 -12
  79. three/src/audio/AudioListener.d.ts +44 -65
  80. three/src/audio/PositionalAudio.d.ts +69 -62
  81. three/src/cameras/ArrayCamera.d.ts +21 -24
  82. three/src/cameras/Camera.d.ts +14 -53
  83. three/src/cameras/CubeCamera.d.ts +32 -28
  84. three/src/cameras/OrthographicCamera.d.ts +70 -100
  85. three/src/cameras/PerspectiveCamera.d.ts +133 -146
  86. three/src/cameras/StereoCamera.d.ts +24 -30
  87. three/src/constants.d.ts +28 -2
  88. three/src/core/BufferGeometry.d.ts +3 -1
  89. three/src/core/Clock.d.ts +3 -0
  90. three/src/core/Object3D.d.ts +31 -7
  91. three/src/extras/Controls.d.ts +3 -3
  92. three/src/geometries/TorusGeometry.d.ts +22 -3
  93. three/src/helpers/ArrowHelper.d.ts +34 -50
  94. three/src/helpers/AxesHelper.d.ts +22 -36
  95. three/src/helpers/Box3Helper.d.ts +14 -25
  96. three/src/helpers/BoxHelper.d.ts +28 -39
  97. three/src/helpers/CameraHelper.d.ts +31 -52
  98. three/src/helpers/DirectionalLightHelper.d.ts +32 -53
  99. three/src/helpers/GridHelper.d.ts +15 -29
  100. three/src/helpers/HemisphereLightHelper.d.ts +26 -49
  101. three/src/helpers/PlaneHelper.d.ts +21 -33
  102. three/src/helpers/PointLightHelper.d.ts +25 -50
  103. three/src/helpers/PolarGridHelper.d.ts +19 -32
  104. three/src/helpers/SkeletonHelper.d.ts +26 -50
  105. three/src/helpers/SpotLightHelper.d.ts +28 -55
  106. three/src/lights/AmbientLight.d.ts +15 -23
  107. three/src/lights/DirectionalLight.d.ts +49 -83
  108. three/src/lights/DirectionalLightShadow.d.ts +6 -61
  109. three/src/lights/HemisphereLight.d.ts +27 -47
  110. three/src/lights/Light.d.ts +22 -56
  111. three/src/lights/LightProbe.d.ts +31 -32
  112. three/src/lights/LightShadow.d.ts +107 -91
  113. three/src/lights/PointLight.d.ts +47 -77
  114. three/src/lights/PointLightShadow.d.ts +7 -11
  115. three/src/lights/RectAreaLight.d.ts +39 -59
  116. three/src/lights/SpotLight.d.ts +78 -117
  117. three/src/lights/SpotLightShadow.d.ts +17 -59
  118. three/src/lights/webgpu/IESSpotLight.d.ts +13 -1
  119. three/src/lights/webgpu/ProjectorLight.d.ts +9 -10
  120. three/src/materials/Material.d.ts +1 -0
  121. three/src/materials/MeshLambertMaterial.d.ts +6 -0
  122. three/src/materials/MeshPhongMaterial.d.ts +6 -0
  123. three/src/materials/ShaderMaterial.d.ts +18 -3
  124. three/src/materials/nodes/Line2NodeMaterial.d.ts +0 -6
  125. three/src/materials/nodes/LineBasicNodeMaterial.d.ts +0 -4
  126. three/src/materials/nodes/MeshBasicNodeMaterial.d.ts +1 -2
  127. three/src/materials/nodes/MeshLambertNodeMaterial.d.ts +0 -2
  128. three/src/materials/nodes/MeshNormalNodeMaterial.d.ts +0 -2
  129. three/src/materials/nodes/MeshSSSNodeMaterial.d.ts +5 -8
  130. three/src/materials/nodes/MeshToonNodeMaterial.d.ts +0 -4
  131. three/src/materials/nodes/NodeMaterial.d.ts +15 -2
  132. three/src/materials/nodes/SpriteNodeMaterial.d.ts +0 -3
  133. three/src/materials/nodes/VolumeNodeMaterial.d.ts +0 -2
  134. three/src/materials/nodes/manager/NodeMaterialObserver.d.ts +39 -93
  135. three/src/math/Color.d.ts +1 -0
  136. three/src/math/Vector3.d.ts +2 -2
  137. three/src/math/interpolants/BezierInterpolant.d.ts +7 -0
  138. three/src/nodes/Nodes.d.ts +55 -35
  139. three/src/nodes/TSL.d.ts +6 -6
  140. three/src/nodes/accessors/Arrays.d.ts +19 -10
  141. three/src/nodes/accessors/BufferAttributeNode.d.ts +108 -41
  142. three/src/nodes/accessors/BufferNode.d.ts +21 -7
  143. three/src/nodes/accessors/Camera.d.ts +10 -10
  144. three/src/nodes/accessors/CubeTextureNode.d.ts +1 -1
  145. three/src/nodes/accessors/InstanceNode.d.ts +13 -6
  146. three/src/nodes/accessors/Lights.d.ts +9 -6
  147. three/src/nodes/accessors/MaterialNode.d.ts +1 -3
  148. three/src/nodes/accessors/MaterialProperties.d.ts +4 -4
  149. three/src/nodes/accessors/MaterialReferenceNode.d.ts +1 -1
  150. three/src/nodes/accessors/ModelNode.d.ts +34 -17
  151. three/src/nodes/accessors/MorphNode.d.ts +1 -1
  152. three/src/nodes/accessors/Normal.d.ts +13 -15
  153. three/src/nodes/accessors/Object3DNode.d.ts +35 -16
  154. three/src/nodes/accessors/Position.d.ts +9 -7
  155. three/src/nodes/accessors/ReferenceNode.d.ts +16 -7
  156. three/src/nodes/accessors/ReflectVector.d.ts +4 -5
  157. three/src/nodes/accessors/RendererReferenceNode.d.ts +1 -1
  158. three/src/nodes/accessors/SceneProperties.d.ts +5 -0
  159. three/src/nodes/accessors/SkinningNode.d.ts +5 -3
  160. three/src/nodes/accessors/StorageBufferNode.d.ts +49 -22
  161. three/src/nodes/accessors/StorageTextureNode.d.ts +1 -1
  162. three/src/nodes/accessors/Tangent.d.ts +5 -7
  163. three/src/nodes/accessors/Texture3DNode.d.ts +13 -1
  164. three/src/nodes/accessors/TextureBicubic.d.ts +3 -2
  165. three/src/nodes/accessors/TextureNode.d.ts +19 -18
  166. three/src/nodes/accessors/UV.d.ts +1 -1
  167. three/src/nodes/accessors/UniformArrayNode.d.ts +10 -8
  168. three/src/nodes/accessors/UserDataNode.d.ts +1 -1
  169. three/src/nodes/accessors/VelocityNode.d.ts +3 -3
  170. three/src/nodes/accessors/VertexColorNode.d.ts +1 -1
  171. three/src/nodes/code/FunctionCallNode.d.ts +0 -1
  172. three/src/nodes/code/FunctionNode.d.ts +7 -3
  173. three/src/nodes/core/ArrayNode.d.ts +2 -3
  174. three/src/nodes/core/AttributeNode.d.ts +12 -6
  175. three/src/nodes/core/BypassNode.d.ts +2 -3
  176. three/src/nodes/core/ConstNode.d.ts +10 -3
  177. three/src/nodes/core/ContextNode.d.ts +32 -21
  178. three/src/nodes/core/IndexNode.d.ts +1 -1
  179. three/src/nodes/core/InputNode.d.ts +12 -4
  180. three/src/nodes/core/InspectorNode.d.ts +2 -3
  181. three/src/nodes/core/IsolateNode.d.ts +2 -7
  182. three/src/nodes/core/MRTNode.d.ts +7 -0
  183. three/src/nodes/core/Node.d.ts +258 -39
  184. three/src/nodes/core/NodeAttribute.d.ts +30 -5
  185. three/src/nodes/core/NodeBuilder.d.ts +5 -3
  186. three/src/nodes/core/NodeCache.d.ts +24 -48
  187. three/src/nodes/core/NodeError.d.ts +9 -0
  188. three/src/nodes/core/NodeParser.d.ts +2 -0
  189. three/src/nodes/core/NodeUniform.d.ts +33 -9
  190. three/src/nodes/core/NodeUtils.d.ts +1 -1
  191. three/src/nodes/core/NodeVar.d.ts +33 -5
  192. three/src/nodes/core/NodeVarying.d.ts +32 -4
  193. three/src/nodes/core/ParameterNode.d.ts +11 -4
  194. three/src/nodes/core/PropertyNode.d.ts +45 -33
  195. three/src/nodes/core/StackTrace.d.ts +9 -0
  196. three/src/nodes/core/StructType.d.ts +3 -1
  197. three/src/nodes/core/StructTypeNode.d.ts +19 -5
  198. three/src/nodes/core/TempNode.d.ts +9 -3
  199. three/src/nodes/core/UniformNode.d.ts +53 -15
  200. three/src/nodes/core/VarNode.d.ts +15 -14
  201. three/src/nodes/core/VaryingNode.d.ts +14 -19
  202. three/src/nodes/core/constants.d.ts +9 -4
  203. three/src/nodes/display/BlendModes.d.ts +7 -27
  204. three/src/nodes/display/ColorAdjustment.d.ts +8 -9
  205. three/src/nodes/display/ColorSpaceNode.d.ts +2 -8
  206. three/src/nodes/display/FrontFacingNode.d.ts +1 -1
  207. three/src/nodes/display/NormalMapNode.d.ts +3 -1
  208. three/src/nodes/display/PassNode.d.ts +16 -4
  209. three/src/nodes/display/RenderOutputNode.d.ts +3 -7
  210. three/src/nodes/display/ScreenNode.d.ts +25 -17
  211. three/src/nodes/display/ToneMappingNode.d.ts +3 -7
  212. three/src/nodes/display/ViewportDepthNode.d.ts +11 -7
  213. three/src/nodes/display/ViewportTextureNode.d.ts +2 -0
  214. three/src/nodes/fog/Fog.d.ts +5 -3
  215. three/src/nodes/functions/BSDF/DFGLUT.d.ts +12 -0
  216. three/src/nodes/functions/PhysicalLightingModel.d.ts +8 -1
  217. three/src/nodes/geometry/RangeNode.d.ts +51 -9
  218. three/src/nodes/gpgpu/AtomicFunctionNode.d.ts +2 -0
  219. three/src/nodes/gpgpu/BarrierNode.d.ts +2 -0
  220. three/src/nodes/gpgpu/ComputeNode.d.ts +2 -7
  221. three/src/nodes/lighting/AnalyticLightNode.d.ts +3 -1
  222. three/src/nodes/lighting/HemisphereLightNode.d.ts +3 -2
  223. three/src/nodes/lighting/LightProbeNode.d.ts +1 -1
  224. three/src/nodes/lighting/LightUtils.d.ts +1 -1
  225. three/src/nodes/lighting/LightingContextNode.d.ts +1 -1
  226. three/src/nodes/lighting/PointShadowNode.d.ts +11 -15
  227. three/src/nodes/lighting/ShadowFilterNode.d.ts +2 -0
  228. three/src/nodes/lighting/SpotLightNode.d.ts +0 -6
  229. three/src/nodes/materialx/MaterialXNodes.d.ts +11 -11
  230. three/src/nodes/math/BitcountNode.d.ts +23 -0
  231. three/src/nodes/math/ConditionalNode.d.ts +43 -22
  232. three/src/nodes/math/Hash.d.ts +1 -1
  233. three/src/nodes/math/MathNode.d.ts +603 -267
  234. three/src/nodes/math/MathUtils.d.ts +9 -5
  235. three/src/nodes/math/OperatorNode.d.ts +490 -227
  236. three/src/nodes/math/PackFloatNode.d.ts +19 -0
  237. three/src/nodes/math/TriNoise3D.d.ts +3 -3
  238. three/src/nodes/math/UnpackFloatNode.d.ts +18 -0
  239. three/src/nodes/pmrem/PMREMNode.d.ts +1 -1
  240. three/src/nodes/procedural/Checker.d.ts +1 -1
  241. three/src/nodes/tsl/TSLCore.d.ts +1683 -224
  242. three/src/nodes/utils/ArrayElementNode.d.ts +9 -4
  243. three/src/nodes/utils/DebugNode.d.ts +2 -5
  244. three/src/nodes/utils/Discard.d.ts +2 -3
  245. three/src/nodes/utils/FlipNode.d.ts +11 -0
  246. three/src/nodes/utils/LoopNode.d.ts +17 -13
  247. three/src/nodes/utils/MaxMipLevelNode.d.ts +1 -1
  248. three/src/nodes/utils/Oscillators.d.ts +4 -4
  249. three/src/nodes/utils/Packing.d.ts +3 -2
  250. three/src/nodes/utils/PostProcessingUtils.d.ts +6 -4
  251. three/src/nodes/utils/RemapNode.d.ts +33 -39
  252. three/src/nodes/utils/RotateNode.d.ts +17 -8
  253. three/src/nodes/utils/SplitNode.d.ts +1 -2
  254. three/src/nodes/utils/SpriteSheetUV.d.ts +7 -0
  255. three/src/nodes/utils/StorageArrayElementNode.d.ts +18 -9
  256. three/src/nodes/utils/Timer.d.ts +4 -4
  257. three/src/nodes/utils/TriplanarTextures.d.ts +2 -2
  258. three/src/nodes/utils/UVUtils.d.ts +8 -3
  259. three/src/objects/BatchedMesh.d.ts +6 -4
  260. three/src/objects/InstancedMesh.d.ts +32 -24
  261. three/src/objects/LOD.d.ts +1 -1
  262. three/src/objects/Skeleton.d.ts +4 -2
  263. three/src/renderers/WebGLRenderer.d.ts +25 -96
  264. three/src/renderers/common/Animation.d.ts +46 -9
  265. three/src/renderers/common/Attributes.d.ts +11 -13
  266. three/src/renderers/common/Backend.d.ts +0 -2
  267. three/src/renderers/common/Background.d.ts +17 -15
  268. three/src/renderers/common/BindGroup.d.ts +27 -13
  269. three/src/renderers/common/Binding.d.ts +21 -3
  270. three/src/renderers/common/Bindings.d.ts +41 -17
  271. three/src/renderers/common/BlendMode.d.ts +22 -0
  272. three/src/renderers/common/Buffer.d.ts +53 -5
  273. three/src/renderers/common/BufferUtils.d.ts +3 -4
  274. three/src/renderers/common/BundleGroup.d.ts +16 -6
  275. three/src/renderers/common/CanvasTarget.d.ts +76 -13
  276. three/src/renderers/common/ChainMap.d.ts +18 -8
  277. three/src/renderers/common/ClippingContext.d.ts +61 -10
  278. three/src/renderers/common/Color4.d.ts +10 -5
  279. three/src/renderers/common/ComputePipeline.d.ts +16 -2
  280. three/src/renderers/common/Constants.d.ts +5 -3
  281. three/src/renderers/common/CubeRenderTarget.d.ts +24 -7
  282. three/src/renderers/common/DataMap.d.ts +10 -18
  283. three/src/renderers/common/Geometries.d.ts +45 -19
  284. three/src/renderers/common/Info.d.ts +62 -9
  285. three/src/renderers/common/InspectorBase.d.ts +19 -7
  286. three/src/renderers/common/Lighting.d.ts +2 -6
  287. three/src/renderers/common/Pipeline.d.ts +14 -2
  288. three/src/renderers/common/Pipelines.d.ts +58 -60
  289. three/src/renderers/common/PostProcessing.d.ts +14 -17
  290. three/src/renderers/common/ProgrammableStage.d.ts +48 -8
  291. three/src/renderers/common/RenderBundle.d.ts +4 -2
  292. three/src/renderers/common/RenderBundles.d.ts +6 -3
  293. three/src/renderers/common/RenderContext.d.ts +175 -7
  294. three/src/renderers/common/RenderContexts.d.ts +21 -24
  295. three/src/renderers/common/RenderList.d.ts +77 -11
  296. three/src/renderers/common/RenderLists.d.ts +16 -4
  297. three/src/renderers/common/RenderObject.d.ts +229 -47
  298. three/src/renderers/common/{RenderPipeline.d.ts → RenderObjectPipeline.d.ts} +17 -5
  299. three/src/renderers/common/RenderObjects.d.ts +55 -22
  300. three/src/renderers/common/Renderer.d.ts +645 -216
  301. three/src/renderers/common/Textures.d.ts +24 -46
  302. three/src/renderers/common/TimestampQueryPool.d.ts +62 -8
  303. three/src/renderers/common/Uniform.d.ts +143 -58
  304. three/src/renderers/common/UniformBuffer.d.ts +7 -5
  305. three/src/renderers/common/UniformsGroup.d.ts +51 -35
  306. three/src/renderers/common/XRManager.d.ts +321 -83
  307. three/src/renderers/common/XRRenderTarget.d.ts +49 -6
  308. three/src/renderers/common/nodes/NodeBuilderState.d.ts +75 -15
  309. three/src/renderers/common/nodes/NodeLibrary.d.ts +25 -5
  310. three/src/renderers/common/nodes/{Nodes.d.ts → NodeManager.d.ts} +54 -73
  311. three/src/renderers/common/nodes/NodeUniform.d.ts +60 -70
  312. three/src/renderers/common/nodes/NodeUniformsGroup.d.ts +23 -4
  313. three/src/renderers/shaders/ShaderLib.d.ts +1 -1
  314. three/src/renderers/shaders/UniformsLib.d.ts +0 -3
  315. three/src/renderers/webgl/WebGLAttributes.d.ts +9 -7
  316. three/src/renderers/webgl/WebGLCapabilities.d.ts +2 -2
  317. three/src/renderers/webgl/WebGLEnvironments.d.ts +8 -0
  318. three/src/renderers/webgl/WebGLExtensions.d.ts +1 -1
  319. three/src/renderers/webgl/WebGLIndexedBufferRenderer.d.ts +9 -5
  320. three/src/renderers/webgl/WebGLLights.d.ts +19 -18
  321. three/src/renderers/webgl/WebGLObjects.d.ts +15 -2
  322. three/src/renderers/webgl/WebGLProgram.d.ts +2 -10
  323. three/src/renderers/webgl/WebGLPrograms.d.ts +2 -3
  324. three/src/renderers/webgl/WebGLRenderLists.d.ts +1 -3
  325. three/src/renderers/webgl/WebGLShadowMap.d.ts +0 -5
  326. three/src/renderers/webgl/WebGLState.d.ts +305 -28
  327. three/src/renderers/webgl/WebGLTextures.d.ts +10 -9
  328. three/src/renderers/webgl/WebGLUniforms.d.ts +0 -7
  329. three/src/renderers/webgpu/WebGPUBackend.d.ts +0 -1
  330. three/src/renderers/webgpu/nodes/BasicNodeLibrary.d.ts +2 -4
  331. three/src/renderers/webgpu/nodes/StandardNodeLibrary.d.ts +15 -4
  332. three/src/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +1 -1
  333. three/src/scenes/Fog.d.ts +31 -37
  334. three/src/scenes/FogExp2.d.ts +26 -31
  335. three/src/scenes/Scene.d.ts +51 -65
  336. three/src/textures/CompressedArrayTexture.d.ts +1 -1
  337. three/src/textures/CubeDepthTexture.d.ts +41 -0
  338. three/src/textures/CubeTexture.d.ts +4 -4
  339. three/src/textures/DataArrayTexture.d.ts +1 -1
  340. three/src/utils.d.ts +18 -1
  341. three/examples/jsm/materials/MeshGouraudMaterial.d.ts +0 -18
  342. three/examples/jsm/materials/MeshPostProcessingMaterial.d.ts +0 -13
  343. three/examples/jsm/shaders/GodRaysShader.d.ts +0 -44
  344. three/src/nodes/accessors/SceneNode.d.ts +0 -21
  345. three/src/nodes/code/ScriptableNode.d.ts +0 -21
  346. three/src/nodes/code/ScriptableValueNode.d.ts +0 -9
  347. three/src/nodes/display/PosterizeNode.d.ts +0 -13
  348. three/src/nodes/functions/BSDF/DFGApprox.d.ts +0 -10
  349. three/src/nodes/utils/SpriteSheetUVNode.d.ts +0 -15
  350. three/src/renderers/webgl/WebGLCubeMaps.d.ts +0 -8
  351. three/src/renderers/webgl/WebGLCubeUVMaps.d.ts +0 -9
@@ -10,4 +10,4 @@ export const hashBlur: (
10
10
  textureNode: Node,
11
11
  bluramount?: Node | number,
12
12
  options?: HashBlurOptions,
13
- ) => Node;
13
+ ) => Node<"vec4">;
@@ -0,0 +1,12 @@
1
+ import { Node } from "three/webgpu";
2
+
3
+ export interface RadialBlurOptions {
4
+ center?: Node | undefined;
5
+ weight?: Node | undefined;
6
+ decay?: Node | undefined;
7
+ count?: Node | undefined;
8
+ exposure?: Node | undefined;
9
+ premultipliedAlpha?: boolean | undefined;
10
+ }
11
+
12
+ export const radialBlur: (textureNode: Node, options?: RadialBlurOptions) => Node;
@@ -1,3 +1,5 @@
1
1
  import { Node } from "three/webgpu";
2
2
 
3
3
  export const bayer16: (uv: Node) => Node;
4
+
5
+ export const bayerDither: (color: Node<"vec3">, steps?: Node<"float">) => Node<"vec3">;
@@ -3,6 +3,6 @@ import { FunctionNode, Node } from "three/webgpu";
3
3
  export const RaymarchingBox: (
4
4
  steps: number | Node,
5
5
  callback:
6
- | ((params: { positionRay: Node }) => void)
7
- | FunctionNode<{ positionRay: Node }>,
6
+ | ((params: { positionRay: Node<"vec3"> }) => void)
7
+ | FunctionNode<{ positionRay: Node<"vec3"> }>,
8
8
  ) => void;
three/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@types/three",
3
- "version": "0.181.0",
3
+ "version": "0.183.0",
4
4
  "description": "TypeScript definitions for three",
5
5
  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/three",
6
6
  "license": "MIT",
@@ -43,12 +43,12 @@
43
43
  "@dimforge/rapier3d-compat": "~0.12.0",
44
44
  "@tweenjs/tween.js": "~23.1.3",
45
45
  "@types/stats.js": "*",
46
- "@types/webxr": "*",
46
+ "@types/webxr": ">=0.5.17",
47
47
  "@webgpu/types": "*",
48
48
  "fflate": "~0.8.2",
49
- "meshoptimizer": "~0.22.0"
49
+ "meshoptimizer": "~1.0.1"
50
50
  },
51
51
  "peerDependencies": {},
52
- "typesPublisherContentHash": "d4f610987bd76c1162c3a6a2221b72979499c9bc94a8d25712df1534d6b1bb87",
52
+ "typesPublisherContentHash": "d921c36975e556bd8c1960f56fd373c30df7106ac1484665e6bdc2ddce8100fc",
53
53
  "typeScriptVersion": "5.2"
54
54
  }
three/src/Three.Core.d.ts CHANGED
@@ -105,6 +105,7 @@ export * from "./math/Euler.js";
105
105
  export * from "./math/Frustum.js";
106
106
  export * from "./math/FrustumArray.js";
107
107
  export * from "./math/Interpolant.js";
108
+ export * from "./math/interpolants/BezierInterpolant.js";
108
109
  export * from "./math/interpolants/CubicInterpolant.js";
109
110
  export * from "./math/interpolants/DiscreteInterpolant.js";
110
111
  export * from "./math/interpolants/LinearInterpolant.js";
@@ -139,7 +140,6 @@ export * from "./objects/SkinnedMesh.js";
139
140
  export * from "./objects/Sprite.js";
140
141
  export * from "./renderers/WebGL3DRenderTarget.js";
141
142
  export * from "./renderers/WebGLArrayRenderTarget.js";
142
- export * from "./renderers/WebGLCubeRenderTarget.js";
143
143
  export * from "./renderers/WebGLRenderTarget.js";
144
144
  export * from "./renderers/webxr/WebXRController.js";
145
145
  export * from "./scenes/Fog.js";
three/src/Three.TSL.d.ts CHANGED
@@ -7,7 +7,7 @@ export const BasicShadowFilter: typeof TSL.BasicShadowFilter;
7
7
  export const Break: typeof TSL.Break;
8
8
  export const Const: typeof TSL.Const;
9
9
  export const Continue: typeof TSL.Continue;
10
- export const DFGApprox: typeof TSL.DFGApprox;
10
+ export const DFGLUT: typeof TSL.DFGLUT;
11
11
  export const D_GGX: typeof TSL.D_GGX;
12
12
  export const Discard: typeof TSL.Discard;
13
13
  export const EPSILON: typeof TSL.EPSILON;
@@ -29,7 +29,6 @@ export const HALF_PI: typeof TSL.HALF_PI;
29
29
  export const PointShadowFilter: typeof TSL.PointShadowFilter;
30
30
  export const Return: typeof TSL.Return;
31
31
  export const Schlick_to_F0: typeof TSL.Schlick_to_F0;
32
- export const ScriptableNodeResources: typeof TSL.ScriptableNodeResources;
33
32
  export const ShaderNode: typeof TSL.ShaderNode;
34
33
  export const Stack: typeof TSL.Stack;
35
34
  export const Switch: typeof TSL.Switch;
@@ -58,7 +57,6 @@ export const arrayBuffer: typeof TSL.arrayBuffer;
58
57
  export const asin: typeof TSL.asin;
59
58
  export const assign: typeof TSL.assign;
60
59
  export const atan: typeof TSL.atan;
61
- export const atan2: typeof TSL.atan2;
62
60
  export const atomicAdd: typeof TSL.atomicAdd;
63
61
  export const atomicAnd: typeof TSL.atomicAnd;
64
62
  export const atomicFunc: typeof TSL.atomicFunc;
@@ -98,8 +96,9 @@ export const bool: typeof TSL.bool;
98
96
  export const buffer: typeof TSL.buffer;
99
97
  export const bufferAttribute: typeof TSL.bufferAttribute;
100
98
  export const bumpMap: typeof TSL.bumpMap;
101
- export const burn: typeof TSL.burn;
102
99
  export const builtin: typeof TSL.builtin;
100
+ export const builtinAOContext: typeof TSL.builtinAOContext;
101
+ export const builtinShadowContext: typeof TSL.builtinShadowContext;
103
102
  export const bvec2: typeof TSL.bvec2;
104
103
  export const bvec3: typeof TSL.bvec3;
105
104
  export const bvec4: typeof TSL.bvec4;
@@ -125,6 +124,7 @@ export const clamp: typeof TSL.clamp;
125
124
  export const clearcoat: typeof TSL.clearcoat;
126
125
  export const clearcoatNormalView: typeof TSL.clearcoatNormalView;
127
126
  export const clearcoatRoughness: typeof TSL.clearcoatRoughness;
127
+ export const clipSpace: typeof TSL.clipSpace;
128
128
  export const code: typeof TSL.code;
129
129
  export const color: typeof TSL.color;
130
130
  export const colorSpaceToWorking: typeof TSL.colorSpaceToWorking;
@@ -136,11 +136,13 @@ export const context: typeof TSL.context;
136
136
  export const convert: typeof TSL.convert;
137
137
  export const convertColorSpace: typeof TSL.convertColorSpace;
138
138
  export const convertToTexture: typeof TSL.convertToTexture;
139
+ export const countLeadingZeros: typeof TSL.countLeadingZeros;
140
+ export const countOneBits: typeof TSL.countOneBits;
141
+ export const countTrailingZeros: typeof TSL.countTrailingZeros;
139
142
  export const cos: typeof TSL.cos;
140
143
  export const cross: typeof TSL.cross;
141
144
  export const cubeTexture: typeof TSL.cubeTexture;
142
145
  export const cubeTextureBase: typeof TSL.cubeTextureBase;
143
- export const cubeToUV: typeof TSL.cubeToUV;
144
146
  export const dFdx: typeof TSL.dFdx;
145
147
  export const dFdy: typeof TSL.dFdy;
146
148
  export const dashSize: typeof TSL.dashSize;
@@ -165,17 +167,16 @@ export const directionToFaceDirection: typeof TSL.directionToFaceDirection;
165
167
  export const dispersion: typeof TSL.dispersion;
166
168
  export const distance: typeof TSL.distance;
167
169
  export const div: typeof TSL.div;
168
- export const dodge: typeof TSL.dodge;
169
170
  export const dot: typeof TSL.dot;
170
171
  export const drawIndex: typeof TSL.drawIndex;
171
172
  export const dynamicBufferAttribute: typeof TSL.dynamicBufferAttribute;
172
173
  export const element: typeof TSL.element;
173
174
  export const emissive: typeof TSL.emissive;
174
175
  export const equal: typeof TSL.equal;
175
- export const equals: typeof TSL.equals;
176
176
  export const equirectUV: typeof TSL.equirectUV;
177
177
  export const exp: typeof TSL.exp;
178
178
  export const exp2: typeof TSL.exp2;
179
+ export const exponentialHeightFogFactor: typeof TSL.exponentialHeightFogFactor;
179
180
  export const expression: typeof TSL.expression;
180
181
  export const faceDirection: typeof TSL.faceDirection;
181
182
  export const faceForward: typeof TSL.faceForward;
@@ -199,6 +200,7 @@ export const getDistanceAttenuation: typeof TSL.getDistanceAttenuation;
199
200
  export const getGeometryRoughness: typeof TSL.getGeometryRoughness;
200
201
  export const getNormalFromDepth: typeof TSL.getNormalFromDepth;
201
202
  export const interleavedGradientNoise: typeof TSL.interleavedGradientNoise;
203
+ export const vogelDiskSample: typeof TSL.vogelDiskSample;
202
204
  export const getParallaxCorrectNormal: typeof TSL.getParallaxCorrectNormal;
203
205
  export const getRoughness: typeof TSL.getRoughness;
204
206
  export const getScreenPosition: typeof TSL.getScreenPosition;
@@ -412,8 +414,10 @@ export const oscSquare: typeof TSL.oscSquare;
412
414
  export const oscTriangle: typeof TSL.oscTriangle;
413
415
  export const output: typeof TSL.output;
414
416
  export const outputStruct: typeof TSL.outputStruct;
415
- export const overlay: typeof TSL.overlay;
416
417
  export const overloadingFn: typeof TSL.overloadingFn;
418
+ export const packHalf2x16: typeof TSL.packHalf2x16;
419
+ export const packSnorm2x16: typeof TSL.packSnorm2x16;
420
+ export const packUnorm2x16: typeof TSL.packUnorm2x16;
417
421
  export const parabola: typeof TSL.parabola;
418
422
  export const parallaxDirection: typeof TSL.parallaxDirection;
419
423
  export const parallaxUV: typeof TSL.parallaxUV;
@@ -461,6 +465,7 @@ export const remapClamp: typeof TSL.remapClamp;
461
465
  export const renderGroup: typeof TSL.renderGroup;
462
466
  export const renderOutput: typeof TSL.renderOutput;
463
467
  export const rendererReference: typeof TSL.rendererReference;
468
+ export const replaceDefaultUV: typeof TSL.replaceDefaultUV;
464
469
  export const rotate: typeof TSL.rotate;
465
470
  export const rotateUV: typeof TSL.rotateUV;
466
471
  export const roughness: typeof TSL.roughness;
@@ -473,13 +478,10 @@ export const sampler: typeof TSL.sampler;
473
478
  export const samplerComparison: typeof TSL.samplerComparison;
474
479
  export const saturate: typeof TSL.saturate;
475
480
  export const saturation: typeof TSL.saturation;
476
- export const screen: typeof TSL.screen;
477
481
  export const screenCoordinate: typeof TSL.screenCoordinate;
478
482
  export const screenDPR: typeof TSL.screenDPR;
479
483
  export const screenSize: typeof TSL.screenSize;
480
484
  export const screenUV: typeof TSL.screenUV;
481
- export const scriptable: typeof TSL.scriptable;
482
- export const scriptableValue: typeof TSL.scriptableValue;
483
485
  export const select: typeof TSL.select;
484
486
  export const setCurrentStack: typeof TSL.setCurrentStack;
485
487
  export const setName: typeof TSL.setName;
@@ -510,7 +512,6 @@ export const step: typeof TSL.step;
510
512
  export const stepElement: typeof TSL.stepElement;
511
513
  export const storage: typeof TSL.storage;
512
514
  export const storageBarrier: typeof TSL.storageBarrier;
513
- export const storageObject: typeof TSL.storageObject;
514
515
  export const storageTexture: typeof TSL.storageTexture;
515
516
  export const string: typeof TSL.string;
516
517
  export const struct: typeof TSL.struct;
@@ -579,6 +580,9 @@ export const uniformCubeTexture: typeof TSL.uniformCubeTexture;
579
580
  export const uniformGroup: typeof TSL.uniformGroup;
580
581
  export const uniformFlow: typeof TSL.uniformFlow;
581
582
  export const uniformTexture: typeof TSL.uniformTexture;
583
+ export const unpackHalf2x16: typeof TSL.unpackHalf2x16;
584
+ export const unpackSnorm2x16: typeof TSL.unpackSnorm2x16;
585
+ export const unpackUnorm2x16: typeof TSL.unpackUnorm2x16;
582
586
  export const unpremultiplyAlpha: typeof TSL.unpremultiplyAlpha;
583
587
  export const userData: typeof TSL.userData;
584
588
  export const uv: typeof TSL.uv;
@@ -599,11 +603,14 @@ export const vibrance: typeof TSL.vibrance;
599
603
  export const viewZToLogarithmicDepth: typeof TSL.viewZToLogarithmicDepth;
600
604
  export const viewZToOrthographicDepth: typeof TSL.viewZToOrthographicDepth;
601
605
  export const viewZToPerspectiveDepth: typeof TSL.viewZToPerspectiveDepth;
606
+ export const viewZToReversedOrthographicDepth: typeof TSL.viewZToReversedOrthographicDepth;
607
+ export const viewZToReversedPerspectiveDepth: typeof TSL.viewZToReversedPerspectiveDepth;
602
608
  export const viewport: typeof TSL.viewport;
603
609
  export const viewportCoordinate: typeof TSL.viewportCoordinate;
604
610
  export const viewportDepthTexture: typeof TSL.viewportDepthTexture;
605
611
  export const viewportLinearDepth: typeof TSL.viewportLinearDepth;
606
612
  export const viewportMipTexture: typeof TSL.viewportMipTexture;
613
+ export const viewportOpaqueMipTexture: typeof TSL.viewportOpaqueMipTexture;
607
614
  export const viewportResolution: typeof TSL.viewportResolution;
608
615
  export const viewportSafeUV: typeof TSL.viewportSafeUV;
609
616
  export const viewportSharedTexture: typeof TSL.viewportSharedTexture;
@@ -618,4 +625,4 @@ export const workgroupId: typeof TSL.workgroupId;
618
625
  export const workingToColorSpace: typeof TSL.workingToColorSpace;
619
626
  export const xor: typeof TSL.xor;
620
627
 
621
- export type { ProxiedObject, Swizzable } from "./nodes/TSL.js";
628
+ export type { ProxiedObject } from "./nodes/TSL.js";
@@ -7,6 +7,7 @@ export { default as Lighting } from "./renderers/common/Lighting.js";
7
7
  export { default as PostProcessing } from "./renderers/common/PostProcessing.js";
8
8
  export { default as QuadMesh } from "./renderers/common/QuadMesh.js";
9
9
  export type { default as Renderer } from "./renderers/common/Renderer.js";
10
+ export { default as RenderPipeline } from "./renderers/common/RenderPipeline.js";
10
11
  export { default as WebGPURenderer } from "./renderers/webgpu/WebGPURenderer.Nodes.js";
11
12
  import * as RendererUtils from "./renderers/common/RendererUtils.js";
12
13
  export { RendererUtils };
@@ -16,6 +17,7 @@ export { default as NodeLoader } from "./loaders/nodes/NodeLoader.js";
16
17
  export { default as NodeMaterialLoader } from "./loaders/nodes/NodeMaterialLoader.js";
17
18
  export { default as NodeObjectLoader } from "./loaders/nodes/NodeObjectLoader.js";
18
19
  export * from "./nodes/Nodes.js";
20
+ export { default as BlendMode } from "./renderers/common/BlendMode.js";
19
21
  export { default as CanvasTarget } from "./renderers/common/CanvasTarget.js";
20
22
  export { default as InspectorBase } from "./renderers/common/InspectorBase.js";
21
23
  import * as TSL from "./nodes/TSL.js";
@@ -7,6 +7,7 @@ export { default as Lighting } from "./renderers/common/Lighting.js";
7
7
  export { default as PostProcessing } from "./renderers/common/PostProcessing.js";
8
8
  export { default as QuadMesh } from "./renderers/common/QuadMesh.js";
9
9
  export type { default as Renderer } from "./renderers/common/Renderer.js";
10
+ export { default as RenderPipeline } from "./renderers/common/RenderPipeline.js";
10
11
  export { default as WebGPURenderer } from "./renderers/webgpu/WebGPURenderer.js";
11
12
  import * as RendererUtils from "./renderers/common/RendererUtils.js";
12
13
  export { RendererUtils };
@@ -16,7 +17,9 @@ export { default as NodeLoader } from "./loaders/nodes/NodeLoader.js";
16
17
  export { default as NodeMaterialLoader } from "./loaders/nodes/NodeMaterialLoader.js";
17
18
  export { default as NodeObjectLoader } from "./loaders/nodes/NodeObjectLoader.js";
18
19
  export * from "./nodes/Nodes.js";
20
+ export { default as BlendMode } from "./renderers/common/BlendMode.js";
19
21
  export { default as CanvasTarget } from "./renderers/common/CanvasTarget.js";
22
+ export { default as CubeRenderTarget } from "./renderers/common/CubeRenderTarget.js";
20
23
  export { default as InspectorBase } from "./renderers/common/InspectorBase.js";
21
24
  import * as TSL from "./nodes/TSL.js";
22
25
  export { TSL };
three/src/Three.d.ts CHANGED
@@ -10,8 +10,7 @@ export type { WebGLBindingStates } from "./renderers/webgl/WebGLBindingStates.js
10
10
  export type { WebGLBufferRenderer } from "./renderers/webgl/WebGLBufferRenderer.js";
11
11
  export type { WebGLCapabilities, WebGLCapabilitiesParameters } from "./renderers/webgl/WebGLCapabilities.js";
12
12
  export type { WebGLClipping } from "./renderers/webgl/WebGLClipping.js";
13
- export type { WebGLCubeMaps } from "./renderers/webgl/WebGLCubeMaps.js";
14
- export type { WebGLCubeUVMaps } from "./renderers/webgl/WebGLCubeUVMaps.js";
13
+ export type { WebGLEnvironments } from "./renderers/webgl/WebGLEnvironments.js";
15
14
  export type { WebGLExtensions } from "./renderers/webgl/WebGLExtensions.js";
16
15
  export type { WebGLGeometries } from "./renderers/webgl/WebGLGeometries.js";
17
16
  export type { WebGLIndexedBufferRenderer } from "./renderers/webgl/WebGLIndexedBufferRenderer.js";
@@ -37,6 +36,7 @@ export type {
37
36
  export type { WebGLTextures } from "./renderers/webgl/WebGLTextures.js";
38
37
  export type { WebGLUniforms } from "./renderers/webgl/WebGLUniforms.js";
39
38
  export * from "./renderers/webgl/WebGLUtils.js";
39
+ export * from "./renderers/WebGLCubeRenderTarget.js";
40
40
  export * from "./renderers/WebGLRenderer.js";
41
41
  export type {
42
42
  WebXRController,
@@ -92,7 +92,7 @@ export class AnimationClip {
92
92
  * @static
93
93
  * @deprecated since r175.
94
94
  * @param {Object} animation - A serialized animation clip as JSON.
95
- * @param {Array<Bones>} bones - An array of bones.
95
+ * @param {Array<Bone>} bones - An array of bones.
96
96
  * @return {?AnimationClip} The new animation clip.
97
97
  */
98
98
  static parseAnimation(animation: AnimationClipJSON, bones: Array<Bone>): AnimationClip | null;
@@ -1,15 +1,36 @@
1
1
  import { AnimationBlendMode } from "../constants.js";
2
2
  import { EventDispatcher } from "../core/EventDispatcher.js";
3
3
  import { Object3D } from "../core/Object3D.js";
4
+ import { LinearInterpolant } from "../math/interpolants/LinearInterpolant.js";
4
5
  import { AnimationAction } from "./AnimationAction.js";
5
6
  import { AnimationClip } from "./AnimationClip.js";
6
7
  import { AnimationObjectGroup } from "./AnimationObjectGroup.js";
8
+ import { PropertyMixer } from "./PropertyMixer.js";
7
9
 
8
10
  export interface AnimationMixerEventMap {
9
11
  loop: { action: AnimationAction; loopDelta: number };
10
12
  finished: { action: AnimationAction; direction: number };
11
13
  }
12
14
 
15
+ export interface MixerControlInterpolant extends LinearInterpolant {
16
+ __cacheIndex: number;
17
+ }
18
+
19
+ export interface AnimationMixerStats {
20
+ actions: {
21
+ readonly total: number;
22
+ readonly inUse: number;
23
+ };
24
+ bindings: {
25
+ readonly total: number;
26
+ readonly inUse: number;
27
+ };
28
+ controlInterpolants: {
29
+ readonly total: number;
30
+ readonly inUse: number;
31
+ };
32
+ }
33
+
13
34
  /**
14
35
  * `AnimationMixer` is a player for animations on a particular object in
15
36
  * the scene. When multiple objects in the scene are animated independently,
@@ -28,6 +49,23 @@ export class AnimationMixer extends EventDispatcher<AnimationMixerEventMap> {
28
49
  * @default 0
29
50
  */
30
51
  time: number;
52
+ protected _root: Object3D | AnimationObjectGroup;
53
+ protected _actions: AnimationAction[];
54
+ protected _nActiveActions: number;
55
+ protected _bindings: PropertyMixer[];
56
+ protected _nActiveBindings: number;
57
+ protected _controlInterpolants: MixerControlInterpolant[];
58
+ protected _nActiveControlInterpolants: number;
59
+ protected _bindingsByRootAndName: {
60
+ [rootUuid: string]: { [trackName: string]: PropertyMixer };
61
+ };
62
+ protected _actionsByClip: {
63
+ [clipUuid: string]: {
64
+ knownActions: AnimationAction[];
65
+ actionByRoot: { [rootUuid: string]: AnimationAction };
66
+ };
67
+ };
68
+ protected _accuIndex: number;
31
69
  /**
32
70
  * A scaling factor for the global time.
33
71
  *
@@ -38,6 +76,10 @@ export class AnimationMixer extends EventDispatcher<AnimationMixerEventMap> {
38
76
  * @default 1
39
77
  */
40
78
  timeScale: number;
79
+ /**
80
+ * The AnimationMixer stats track the actions of the mixer.
81
+ */
82
+ stats: AnimationMixerStats;
41
83
  /**
42
84
  * Returns an instance of {@link AnimationAction} for the passed clip.
43
85
  *
@@ -1,4 +1,5 @@
1
1
  import { TypedArray, TypedArrayConstructor } from "../core/BufferAttribute.js";
2
+ import { isTypedArray } from "../utils.js";
2
3
  import { AnimationClip } from "./AnimationClip.js";
3
4
 
4
5
  /**
@@ -8,14 +9,7 @@ import { AnimationClip } from "./AnimationClip.js";
8
9
  * @param {TypedArray.constructor} type - The constructor of a typed array that defines the new type.
9
10
  * @return {TypedArray} The converted array.
10
11
  */
11
- export function convertArray(array: TypedArray | number[], type: TypedArrayConstructor): TypedArray | number[];
12
- /**
13
- * Returns `true` if the given object is a typed array.
14
- *
15
- * @param {any} object - The object to check.
16
- * @return {boolean} Whether the given object is a typed array.
17
- */
18
- export function isTypedArray(object: unknown): boolean;
12
+ export function convertArray(array: TypedArray | number[], type: TypedArrayConstructor): TypedArray;
19
13
  /**
20
14
  * Returns an array by which times and values can be sorted.
21
15
  *
@@ -169,3 +163,4 @@ export class AnimationUtils {
169
163
  fps?: number,
170
164
  ): AnimationClip;
171
165
  }
166
+ export { isTypedArray };
@@ -1,5 +1,6 @@
1
1
  import { InterpolationModes } from "../constants.js";
2
2
  import { TypedArray, TypedArrayConstructor } from "../core/BufferAttribute.js";
3
+ import { BezierInterpolant } from "../math/interpolants/BezierInterpolant.js";
3
4
  import { CubicInterpolant } from "../math/interpolants/CubicInterpolant.js";
4
5
  import { DiscreteInterpolant } from "../math/interpolants/DiscreteInterpolant.js";
5
6
  import { LinearInterpolant } from "../math/interpolants/LinearInterpolant.js";
@@ -13,7 +14,7 @@ export interface KeyframeTrackJSON {
13
14
  }
14
15
 
15
16
  /**
16
- * Represents s a timed sequence of keyframes, which are composed of lists of
17
+ * Represents a timed sequence of keyframes, which are composed of lists of
17
18
  * times and related values, and which are used to animate a specific property
18
19
  * of an object.
19
20
  */
@@ -32,7 +33,7 @@ export class KeyframeTrack {
32
33
  * @param {string} name - The keyframe track's name.
33
34
  * @param {Array<number>} times - A list of keyframe times.
34
35
  * @param {Array<number|string|boolean>} values - A list of keyframe values.
35
- * @param {(InterpolateLinear|InterpolateDiscrete|InterpolateSmooth)} [interpolation] - The interpolation type.
36
+ * @param {(InterpolateLinear|InterpolateDiscrete|InterpolateSmooth|InterpolateBezier)} [interpolation] - The interpolation type.
36
37
  */
37
38
  constructor(
38
39
  name: string,
@@ -78,17 +79,30 @@ export class KeyframeTrack {
78
79
  * @return {CubicInterpolant} The new interpolant.
79
80
  */
80
81
  InterpolantFactoryMethodSmooth(result?: TypedArray): CubicInterpolant;
82
+ /**
83
+ * Factory method for creating a new Bezier interpolant.
84
+ *
85
+ * The Bezier interpolant requires tangent data to be set via the `settings` property
86
+ * on the track before creating the interpolant. The settings should contain:
87
+ * - `inTangents`: Float32Array with [time, value] pairs per keyframe per component
88
+ * - `outTangents`: Float32Array with [time, value] pairs per keyframe per component
89
+ *
90
+ * @static
91
+ * @param {TypedArray} [result] - The result buffer.
92
+ * @return {BezierInterpolant} The new interpolant.
93
+ */
94
+ InterpolantFactoryMethodBezier(result?: TypedArray): BezierInterpolant;
81
95
  /**
82
96
  * Defines the interpolation factor method for this keyframe track.
83
97
  *
84
- * @param {(InterpolateLinear|InterpolateDiscrete|InterpolateSmooth)} interpolation - The interpolation type.
98
+ * @param {(InterpolateLinear|InterpolateDiscrete|InterpolateSmooth|InterpolateBezier)} interpolation - The interpolation type.
85
99
  * @return {KeyframeTrack} A reference to this keyframe track.
86
100
  */
87
101
  setInterpolation(interpolation: InterpolationModes): KeyframeTrack;
88
102
  /**
89
103
  * Returns the current interpolation type.
90
104
  *
91
- * @return {(InterpolateLinear|InterpolateDiscrete|InterpolateSmooth)} The interpolation type.
105
+ * @return {(InterpolateLinear|InterpolateDiscrete|InterpolateSmooth|InterpolateBezier)} The interpolation type.
92
106
  */
93
107
  getInterpolation(): InterpolationModes;
94
108
  /**
@@ -133,7 +147,7 @@ export class KeyframeTrack {
133
147
  * Optimizes this keyframe track by removing equivalent sequential keys (which are
134
148
  * common in morph target sequences).
135
149
  *
136
- * @return {AnimationClip} A reference to this animation clip.
150
+ * @return {KeyframeTrack} A reference to this keyframe track.
137
151
  */
138
152
  optimize(): this;
139
153
  /**
@@ -20,26 +20,27 @@ export class PropertyMixer {
20
20
  * The keyframe track value size.
21
21
  */
22
22
  valueSize: number;
23
+ buffer: Float64Array | unknown[];
23
24
  /**
24
- * TODO
25
+ * Accumulated weight of the property binding.
25
26
  *
26
27
  * @default 0
27
28
  */
28
29
  cumulativeWeight: number;
29
30
  /**
30
- * TODO
31
+ * Accumulated additive weight of the property binding.
31
32
  *
32
33
  * @default 0
33
34
  */
34
35
  cumulativeWeightAdditive: number;
35
36
  /**
36
- * TODO
37
+ * Number of active keyframe tracks currently using this property binding.
37
38
  *
38
39
  * @default 0
39
40
  */
40
41
  useCount: number;
41
42
  /**
42
- * TODO
43
+ * Number of keyframe tracks referencing this property binding.
43
44
  *
44
45
  * @default 0
45
46
  */