@types/three 0.182.0 → 0.183.1

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 (313) hide show
  1. three/README.md +1 -1
  2. three/examples/jsm/Addons.d.ts +0 -3
  3. three/examples/jsm/controls/OrbitControls.d.ts +39 -0
  4. three/examples/jsm/effects/AnaglyphEffect.d.ts +4 -0
  5. three/examples/jsm/environments/ColorEnvironment.d.ts +9 -0
  6. three/examples/jsm/gpgpu/BitonicSort.d.ts +5 -5
  7. three/examples/jsm/helpers/AnimationPathHelper.d.ts +38 -0
  8. three/examples/jsm/helpers/ViewHelper.d.ts +4 -1
  9. three/examples/jsm/inspector/tabs/Parameters.d.ts +3 -0
  10. three/examples/jsm/inspector/ui/Item.d.ts +5 -0
  11. three/examples/jsm/libs/meshopt_decoder.module.d.ts +1 -1
  12. three/examples/jsm/lights/LightProbeGenerator.d.ts +11 -5
  13. three/examples/jsm/loaders/ColladaLoader.d.ts +27 -4
  14. three/examples/jsm/objects/SkyMesh.d.ts +11 -6
  15. three/examples/jsm/objects/Water2Mesh.d.ts +7 -7
  16. three/examples/jsm/objects/WaterMesh.d.ts +6 -6
  17. three/examples/jsm/postprocessing/EffectComposer.d.ts +9 -10
  18. three/examples/jsm/postprocessing/UnrealBloomPass.d.ts +4 -9
  19. three/examples/jsm/tsl/display/AnaglyphPassNode.d.ts +30 -0
  20. three/examples/jsm/tsl/display/AnamorphicNode.d.ts +1 -1
  21. three/examples/jsm/tsl/display/BilateralBlurNode.d.ts +27 -0
  22. three/examples/jsm/tsl/display/BloomNode.d.ts +5 -5
  23. three/examples/jsm/tsl/display/CRT.d.ts +22 -0
  24. three/examples/jsm/tsl/display/DenoiseNode.d.ts +5 -5
  25. three/examples/jsm/tsl/display/DotScreenNode.d.ts +4 -6
  26. three/examples/jsm/tsl/display/GTAONode.d.ts +8 -8
  27. three/examples/jsm/tsl/display/GaussianBlurNode.d.ts +4 -2
  28. three/examples/jsm/tsl/display/GodraysNode.d.ts +20 -0
  29. three/examples/jsm/tsl/display/LensflareNode.d.ts +6 -6
  30. three/examples/jsm/tsl/display/Lut3DNode.d.ts +5 -5
  31. three/examples/jsm/tsl/display/MotionBlur.d.ts +1 -1
  32. three/examples/jsm/tsl/display/OutlineNode.d.ts +6 -6
  33. three/examples/jsm/tsl/display/PixelationPassNode.d.ts +10 -10
  34. three/examples/jsm/tsl/display/RGBShiftNode.d.ts +2 -2
  35. three/examples/jsm/tsl/display/RetroPassNode.d.ts +17 -0
  36. three/examples/jsm/tsl/display/SSAAPassNode.d.ts +1 -1
  37. three/examples/jsm/tsl/display/SSGINode.d.ts +11 -11
  38. three/examples/jsm/tsl/display/SSRNode.d.ts +6 -6
  39. three/examples/jsm/tsl/display/SSSNode.d.ts +5 -5
  40. three/examples/jsm/tsl/display/Shape.d.ts +3 -0
  41. three/examples/jsm/tsl/display/TransitionNode.d.ts +3 -3
  42. three/examples/jsm/tsl/display/boxBlur.d.ts +1 -1
  43. three/examples/jsm/tsl/display/depthAwareBlend.d.ts +15 -0
  44. three/examples/jsm/tsl/display/hashBlur.d.ts +1 -1
  45. three/examples/jsm/tsl/math/Bayer.d.ts +2 -0
  46. three/examples/jsm/tsl/utils/Raymarching.d.ts +2 -2
  47. three/package.json +3 -3
  48. three/src/Three.Core.d.ts +1 -1
  49. three/src/Three.TSL.d.ts +6 -11
  50. three/src/Three.WebGPU.Nodes.d.ts +2 -0
  51. three/src/Three.WebGPU.d.ts +3 -0
  52. three/src/Three.d.ts +2 -2
  53. three/src/animation/AnimationClip.d.ts +1 -1
  54. three/src/animation/KeyframeTrack.d.ts +19 -5
  55. three/src/animation/PropertyMixer.d.ts +5 -4
  56. three/src/audio/Audio.d.ts +224 -157
  57. three/src/audio/AudioAnalyser.d.ts +32 -27
  58. three/src/audio/AudioContext.d.ts +12 -12
  59. three/src/audio/AudioListener.d.ts +44 -65
  60. three/src/audio/PositionalAudio.d.ts +69 -62
  61. three/src/cameras/ArrayCamera.d.ts +21 -24
  62. three/src/cameras/Camera.d.ts +14 -53
  63. three/src/cameras/CubeCamera.d.ts +32 -28
  64. three/src/cameras/OrthographicCamera.d.ts +70 -100
  65. three/src/cameras/PerspectiveCamera.d.ts +133 -146
  66. three/src/cameras/StereoCamera.d.ts +24 -30
  67. three/src/constants.d.ts +14 -2
  68. three/src/core/Clock.d.ts +3 -0
  69. three/src/core/Object3D.d.ts +31 -7
  70. three/src/geometries/TorusGeometry.d.ts +22 -3
  71. three/src/helpers/ArrowHelper.d.ts +34 -50
  72. three/src/helpers/AxesHelper.d.ts +22 -36
  73. three/src/helpers/Box3Helper.d.ts +14 -25
  74. three/src/helpers/BoxHelper.d.ts +28 -39
  75. three/src/helpers/CameraHelper.d.ts +31 -52
  76. three/src/helpers/DirectionalLightHelper.d.ts +32 -53
  77. three/src/helpers/GridHelper.d.ts +15 -29
  78. three/src/helpers/HemisphereLightHelper.d.ts +26 -49
  79. three/src/helpers/PlaneHelper.d.ts +21 -33
  80. three/src/helpers/PointLightHelper.d.ts +25 -50
  81. three/src/helpers/PolarGridHelper.d.ts +19 -32
  82. three/src/helpers/SkeletonHelper.d.ts +26 -50
  83. three/src/helpers/SpotLightHelper.d.ts +28 -55
  84. three/src/lights/AmbientLight.d.ts +15 -23
  85. three/src/lights/DirectionalLight.d.ts +40 -82
  86. three/src/lights/DirectionalLightShadow.d.ts +6 -61
  87. three/src/lights/HemisphereLight.d.ts +20 -47
  88. three/src/lights/Light.d.ts +18 -48
  89. three/src/lights/LightProbe.d.ts +24 -29
  90. three/src/lights/LightShadow.d.ts +107 -91
  91. three/src/lights/PointLight.d.ts +36 -77
  92. three/src/lights/PointLightShadow.d.ts +9 -6
  93. three/src/lights/RectAreaLight.d.ts +39 -59
  94. three/src/lights/SpotLight.d.ts +62 -116
  95. three/src/lights/SpotLightShadow.d.ts +17 -59
  96. three/src/lights/webgpu/IESSpotLight.d.ts +13 -1
  97. three/src/lights/webgpu/ProjectorLight.d.ts +9 -10
  98. three/src/materials/MeshLambertMaterial.d.ts +6 -0
  99. three/src/materials/MeshPhongMaterial.d.ts +6 -0
  100. three/src/materials/nodes/Line2NodeMaterial.d.ts +0 -6
  101. three/src/materials/nodes/LineBasicNodeMaterial.d.ts +0 -4
  102. three/src/materials/nodes/MeshBasicNodeMaterial.d.ts +1 -2
  103. three/src/materials/nodes/MeshLambertNodeMaterial.d.ts +0 -2
  104. three/src/materials/nodes/MeshNormalNodeMaterial.d.ts +0 -2
  105. three/src/materials/nodes/MeshSSSNodeMaterial.d.ts +5 -8
  106. three/src/materials/nodes/MeshToonNodeMaterial.d.ts +0 -4
  107. three/src/materials/nodes/NodeMaterial.d.ts +9 -3
  108. three/src/materials/nodes/SpriteNodeMaterial.d.ts +0 -3
  109. three/src/materials/nodes/VolumeNodeMaterial.d.ts +0 -2
  110. three/src/materials/nodes/manager/NodeMaterialObserver.d.ts +39 -93
  111. three/src/math/Color.d.ts +1 -0
  112. three/src/math/Vector3.d.ts +2 -2
  113. three/src/math/interpolants/BezierInterpolant.d.ts +7 -0
  114. three/src/nodes/Nodes.d.ts +55 -35
  115. three/src/nodes/TSL.d.ts +2 -5
  116. three/src/nodes/accessors/Arrays.d.ts +19 -10
  117. three/src/nodes/accessors/BufferAttributeNode.d.ts +99 -33
  118. three/src/nodes/accessors/BufferNode.d.ts +21 -7
  119. three/src/nodes/accessors/Camera.d.ts +10 -10
  120. three/src/nodes/accessors/CubeTextureNode.d.ts +1 -1
  121. three/src/nodes/accessors/InstanceNode.d.ts +6 -0
  122. three/src/nodes/accessors/Lights.d.ts +9 -6
  123. three/src/nodes/accessors/MaterialNode.d.ts +1 -3
  124. three/src/nodes/accessors/MaterialProperties.d.ts +4 -4
  125. three/src/nodes/accessors/MaterialReferenceNode.d.ts +1 -1
  126. three/src/nodes/accessors/ModelNode.d.ts +34 -17
  127. three/src/nodes/accessors/MorphNode.d.ts +1 -1
  128. three/src/nodes/accessors/Normal.d.ts +13 -15
  129. three/src/nodes/accessors/Object3DNode.d.ts +35 -16
  130. three/src/nodes/accessors/Position.d.ts +9 -7
  131. three/src/nodes/accessors/ReferenceNode.d.ts +16 -7
  132. three/src/nodes/accessors/ReflectVector.d.ts +4 -5
  133. three/src/nodes/accessors/RendererReferenceNode.d.ts +1 -1
  134. three/src/nodes/accessors/SceneProperties.d.ts +5 -0
  135. three/src/nodes/accessors/SkinningNode.d.ts +5 -3
  136. three/src/nodes/accessors/StorageBufferNode.d.ts +49 -22
  137. three/src/nodes/accessors/StorageTextureNode.d.ts +1 -1
  138. three/src/nodes/accessors/Tangent.d.ts +5 -7
  139. three/src/nodes/accessors/Texture3DNode.d.ts +1 -1
  140. three/src/nodes/accessors/TextureBicubic.d.ts +3 -2
  141. three/src/nodes/accessors/TextureNode.d.ts +19 -18
  142. three/src/nodes/accessors/UV.d.ts +1 -1
  143. three/src/nodes/accessors/UniformArrayNode.d.ts +10 -8
  144. three/src/nodes/accessors/UserDataNode.d.ts +1 -1
  145. three/src/nodes/accessors/VelocityNode.d.ts +3 -3
  146. three/src/nodes/accessors/VertexColorNode.d.ts +1 -1
  147. three/src/nodes/code/FunctionCallNode.d.ts +0 -1
  148. three/src/nodes/code/FunctionNode.d.ts +7 -3
  149. three/src/nodes/core/ArrayNode.d.ts +2 -3
  150. three/src/nodes/core/AttributeNode.d.ts +12 -6
  151. three/src/nodes/core/BypassNode.d.ts +2 -3
  152. three/src/nodes/core/ConstNode.d.ts +10 -3
  153. three/src/nodes/core/ContextNode.d.ts +23 -28
  154. three/src/nodes/core/IndexNode.d.ts +1 -1
  155. three/src/nodes/core/InputNode.d.ts +12 -4
  156. three/src/nodes/core/InspectorNode.d.ts +2 -3
  157. three/src/nodes/core/IsolateNode.d.ts +2 -7
  158. three/src/nodes/core/MRTNode.d.ts +7 -0
  159. three/src/nodes/core/Node.d.ts +258 -39
  160. three/src/nodes/core/NodeAttribute.d.ts +30 -5
  161. three/src/nodes/core/NodeBuilder.d.ts +5 -3
  162. three/src/nodes/core/NodeCache.d.ts +24 -48
  163. three/src/nodes/core/NodeError.d.ts +9 -0
  164. three/src/nodes/core/NodeParser.d.ts +2 -0
  165. three/src/nodes/core/NodeUniform.d.ts +33 -9
  166. three/src/nodes/core/NodeVar.d.ts +33 -5
  167. three/src/nodes/core/NodeVarying.d.ts +32 -4
  168. three/src/nodes/core/ParameterNode.d.ts +11 -4
  169. three/src/nodes/core/PropertyNode.d.ts +45 -35
  170. three/src/nodes/core/StackTrace.d.ts +9 -0
  171. three/src/nodes/core/StructType.d.ts +3 -1
  172. three/src/nodes/core/StructTypeNode.d.ts +19 -5
  173. three/src/nodes/core/TempNode.d.ts +9 -3
  174. three/src/nodes/core/UniformNode.d.ts +53 -15
  175. three/src/nodes/core/VarNode.d.ts +15 -14
  176. three/src/nodes/core/VaryingNode.d.ts +14 -19
  177. three/src/nodes/core/constants.d.ts +9 -4
  178. three/src/nodes/display/BlendModes.d.ts +7 -27
  179. three/src/nodes/display/ColorAdjustment.d.ts +8 -9
  180. three/src/nodes/display/ColorSpaceNode.d.ts +2 -8
  181. three/src/nodes/display/FrontFacingNode.d.ts +1 -1
  182. three/src/nodes/display/PassNode.d.ts +9 -5
  183. three/src/nodes/display/RenderOutputNode.d.ts +3 -7
  184. three/src/nodes/display/ScreenNode.d.ts +25 -17
  185. three/src/nodes/display/ToneMappingNode.d.ts +3 -7
  186. three/src/nodes/display/ViewportDepthNode.d.ts +11 -7
  187. three/src/nodes/display/ViewportTextureNode.d.ts +2 -0
  188. three/src/nodes/fog/Fog.d.ts +5 -3
  189. three/src/nodes/geometry/RangeNode.d.ts +51 -9
  190. three/src/nodes/gpgpu/AtomicFunctionNode.d.ts +2 -0
  191. three/src/nodes/gpgpu/BarrierNode.d.ts +2 -0
  192. three/src/nodes/gpgpu/ComputeNode.d.ts +2 -7
  193. three/src/nodes/lighting/AnalyticLightNode.d.ts +1 -1
  194. three/src/nodes/lighting/HemisphereLightNode.d.ts +3 -2
  195. three/src/nodes/lighting/LightProbeNode.d.ts +1 -1
  196. three/src/nodes/lighting/LightUtils.d.ts +1 -1
  197. three/src/nodes/lighting/LightingContextNode.d.ts +1 -1
  198. three/src/nodes/lighting/SpotLightNode.d.ts +0 -6
  199. three/src/nodes/materialx/MaterialXNodes.d.ts +11 -11
  200. three/src/nodes/math/BitcountNode.d.ts +2 -0
  201. three/src/nodes/math/ConditionalNode.d.ts +43 -22
  202. three/src/nodes/math/Hash.d.ts +1 -1
  203. three/src/nodes/math/MathNode.d.ts +603 -267
  204. three/src/nodes/math/MathUtils.d.ts +9 -5
  205. three/src/nodes/math/OperatorNode.d.ts +490 -227
  206. three/src/nodes/math/TriNoise3D.d.ts +3 -3
  207. three/src/nodes/pmrem/PMREMNode.d.ts +1 -1
  208. three/src/nodes/procedural/Checker.d.ts +1 -1
  209. three/src/nodes/tsl/TSLCore.d.ts +1683 -224
  210. three/src/nodes/utils/ArrayElementNode.d.ts +9 -4
  211. three/src/nodes/utils/DebugNode.d.ts +2 -5
  212. three/src/nodes/utils/Discard.d.ts +2 -3
  213. three/src/nodes/utils/FlipNode.d.ts +11 -0
  214. three/src/nodes/utils/LoopNode.d.ts +17 -13
  215. three/src/nodes/utils/MaxMipLevelNode.d.ts +1 -1
  216. three/src/nodes/utils/Oscillators.d.ts +4 -4
  217. three/src/nodes/utils/Packing.d.ts +3 -3
  218. three/src/nodes/utils/PostProcessingUtils.d.ts +5 -5
  219. three/src/nodes/utils/RemapNode.d.ts +33 -39
  220. three/src/nodes/utils/RotateNode.d.ts +17 -8
  221. three/src/nodes/utils/SplitNode.d.ts +1 -2
  222. three/src/nodes/utils/SpriteSheetUV.d.ts +7 -0
  223. three/src/nodes/utils/StorageArrayElementNode.d.ts +18 -9
  224. three/src/nodes/utils/Timer.d.ts +4 -4
  225. three/src/nodes/utils/TriplanarTextures.d.ts +2 -2
  226. three/src/nodes/utils/UVUtils.d.ts +6 -4
  227. three/src/objects/BatchedMesh.d.ts +6 -4
  228. three/src/objects/InstancedMesh.d.ts +32 -24
  229. three/src/renderers/WebGLRenderer.d.ts +4 -93
  230. three/src/renderers/common/Animation.d.ts +46 -9
  231. three/src/renderers/common/Attributes.d.ts +11 -13
  232. three/src/renderers/common/Backend.d.ts +0 -2
  233. three/src/renderers/common/Background.d.ts +17 -15
  234. three/src/renderers/common/BindGroup.d.ts +27 -13
  235. three/src/renderers/common/Binding.d.ts +15 -3
  236. three/src/renderers/common/Bindings.d.ts +41 -17
  237. three/src/renderers/common/BlendMode.d.ts +22 -0
  238. three/src/renderers/common/Buffer.d.ts +35 -11
  239. three/src/renderers/common/BufferUtils.d.ts +3 -4
  240. three/src/renderers/common/BundleGroup.d.ts +16 -6
  241. three/src/renderers/common/CanvasTarget.d.ts +76 -13
  242. three/src/renderers/common/ChainMap.d.ts +12 -9
  243. three/src/renderers/common/ClippingContext.d.ts +61 -10
  244. three/src/renderers/common/Color4.d.ts +10 -5
  245. three/src/renderers/common/ComputePipeline.d.ts +16 -2
  246. three/src/renderers/common/Constants.d.ts +5 -3
  247. three/src/renderers/common/CubeRenderTarget.d.ts +24 -7
  248. three/src/renderers/common/DataMap.d.ts +10 -18
  249. three/src/renderers/common/Geometries.d.ts +39 -20
  250. three/src/renderers/common/Info.d.ts +62 -9
  251. three/src/renderers/common/InspectorBase.d.ts +19 -7
  252. three/src/renderers/common/Lighting.d.ts +2 -6
  253. three/src/renderers/common/Pipeline.d.ts +14 -2
  254. three/src/renderers/common/Pipelines.d.ts +58 -60
  255. three/src/renderers/common/PostProcessing.d.ts +14 -17
  256. three/src/renderers/common/ProgrammableStage.d.ts +48 -8
  257. three/src/renderers/common/RenderBundle.d.ts +4 -2
  258. three/src/renderers/common/RenderBundles.d.ts +6 -3
  259. three/src/renderers/common/RenderContext.d.ts +175 -7
  260. three/src/renderers/common/RenderContexts.d.ts +20 -25
  261. three/src/renderers/common/RenderList.d.ts +77 -11
  262. three/src/renderers/common/RenderLists.d.ts +16 -4
  263. three/src/renderers/common/RenderObject.d.ts +223 -47
  264. three/src/renderers/common/RenderObjectPipeline.d.ts +33 -0
  265. three/src/renderers/common/RenderObjects.d.ts +55 -22
  266. three/src/renderers/common/RenderPipeline.d.ts +20 -17
  267. three/src/renderers/common/Renderer.d.ts +625 -207
  268. three/src/renderers/common/Textures.d.ts +24 -46
  269. three/src/renderers/common/TimestampQueryPool.d.ts +62 -8
  270. three/src/renderers/common/Uniform.d.ts +143 -58
  271. three/src/renderers/common/UniformBuffer.d.ts +7 -5
  272. three/src/renderers/common/UniformsGroup.d.ts +50 -35
  273. three/src/renderers/common/XRManager.d.ts +321 -83
  274. three/src/renderers/common/XRRenderTarget.d.ts +49 -6
  275. three/src/renderers/common/nodes/NodeBuilderState.d.ts +75 -15
  276. three/src/renderers/common/nodes/NodeLibrary.d.ts +25 -5
  277. three/src/renderers/common/nodes/{Nodes.d.ts → NodeManager.d.ts} +54 -73
  278. three/src/renderers/common/nodes/NodeUniform.d.ts +60 -70
  279. three/src/renderers/common/nodes/NodeUniformsGroup.d.ts +23 -4
  280. three/src/renderers/shaders/UniformsLib.d.ts +0 -3
  281. three/src/renderers/webgl/WebGLAttributes.d.ts +9 -7
  282. three/src/renderers/webgl/WebGLEnvironments.d.ts +8 -0
  283. three/src/renderers/webgl/WebGLExtensions.d.ts +1 -1
  284. three/src/renderers/webgl/WebGLIndexedBufferRenderer.d.ts +9 -5
  285. three/src/renderers/webgl/WebGLLights.d.ts +19 -18
  286. three/src/renderers/webgl/WebGLObjects.d.ts +15 -2
  287. three/src/renderers/webgl/WebGLProgram.d.ts +2 -10
  288. three/src/renderers/webgl/WebGLPrograms.d.ts +2 -2
  289. three/src/renderers/webgl/WebGLRenderLists.d.ts +1 -3
  290. three/src/renderers/webgl/WebGLShadowMap.d.ts +0 -5
  291. three/src/renderers/webgl/WebGLState.d.ts +305 -28
  292. three/src/renderers/webgl/WebGLTextures.d.ts +10 -9
  293. three/src/renderers/webgl/WebGLUniforms.d.ts +0 -7
  294. three/src/renderers/webgpu/WebGPUBackend.d.ts +0 -1
  295. three/src/renderers/webgpu/nodes/BasicNodeLibrary.d.ts +2 -4
  296. three/src/renderers/webgpu/nodes/StandardNodeLibrary.d.ts +15 -4
  297. three/src/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +1 -1
  298. three/src/scenes/Fog.d.ts +31 -37
  299. three/src/scenes/FogExp2.d.ts +26 -31
  300. three/src/scenes/Scene.d.ts +51 -65
  301. three/src/textures/CompressedArrayTexture.d.ts +1 -1
  302. three/src/textures/DataArrayTexture.d.ts +1 -1
  303. three/src/utils.d.ts +5 -0
  304. three/examples/jsm/materials/MeshGouraudMaterial.d.ts +0 -18
  305. three/examples/jsm/materials/MeshPostProcessingMaterial.d.ts +0 -13
  306. three/examples/jsm/shaders/GodRaysShader.d.ts +0 -44
  307. three/src/nodes/accessors/SceneNode.d.ts +0 -21
  308. three/src/nodes/code/ScriptableNode.d.ts +0 -21
  309. three/src/nodes/code/ScriptableValueNode.d.ts +0 -9
  310. three/src/nodes/display/PosterizeNode.d.ts +0 -13
  311. three/src/nodes/utils/SpriteSheetUVNode.d.ts +0 -15
  312. three/src/renderers/webgl/WebGLCubeMaps.d.ts +0 -8
  313. three/src/renderers/webgl/WebGLCubeUVMaps.d.ts +0 -9
three/src/constants.d.ts CHANGED
@@ -50,13 +50,15 @@ export const AdditiveBlending: 2;
50
50
  export const SubtractiveBlending: 3;
51
51
  export const MultiplyBlending: 4;
52
52
  export const CustomBlending: 5;
53
+ export const MaterialBlending: 6;
53
54
  export type Blending =
54
55
  | typeof NoBlending
55
56
  | typeof NormalBlending
56
57
  | typeof AdditiveBlending
57
58
  | typeof SubtractiveBlending
58
59
  | typeof MultiplyBlending
59
- | typeof CustomBlending;
60
+ | typeof CustomBlending
61
+ | typeof MaterialBlending;
60
62
 
61
63
  // custom blending equations
62
64
  // (numbers start from 100 not to clash with other
@@ -651,7 +653,12 @@ export type AnimationActionLoopStyles = typeof LoopOnce | typeof LoopRepeat | ty
651
653
  export const InterpolateDiscrete: 2300;
652
654
  export const InterpolateLinear: 2301;
653
655
  export const InterpolateSmooth: 2302;
654
- export type InterpolationModes = typeof InterpolateDiscrete | typeof InterpolateLinear | typeof InterpolateSmooth;
656
+ export const InterpolateBezier: 2303;
657
+ export type InterpolationModes =
658
+ | typeof InterpolateDiscrete
659
+ | typeof InterpolateLinear
660
+ | typeof InterpolateSmooth
661
+ | typeof InterpolateBezier;
655
662
 
656
663
  // Interpolant ending modes
657
664
  export const ZeroCurvatureEnding: 2400;
@@ -824,6 +831,11 @@ export type InterpolationSamplingMode =
824
831
  | typeof InterpolationSamplingMode.FIRST
825
832
  | typeof InterpolationSamplingMode.EITHER;
826
833
 
834
+ export const Compatibility: {
835
+ TEXTURE_COMPARE: "depthTextureCompare";
836
+ };
837
+ export type Compatibility = typeof Compatibility.TEXTURE_COMPARE;
838
+
827
839
  ///////////////////////////////////////////////////////////////////////////////
828
840
  // Texture - Internal Pixel Formats
829
841
 
three/src/core/Clock.d.ts CHANGED
@@ -3,10 +3,13 @@
3
3
  * [performance.now]{@link https://developer.mozilla.org/en-US/docs/Web/API/Performance/now}.
4
4
  * @see [Official Documentation]{@link https://threejs.org/docs/index.html#api/en/core/Clock}
5
5
  * @see [Source]{@link https://github.com/mrdoob/three.js/blob/master/src/core/Clock.js}
6
+ *
7
+ * @deprecated Please use THREE.Timer instead.
6
8
  */
7
9
  export class Clock {
8
10
  /**
9
11
  * Create a new instance of {@link THREE.Clock | Clock}
12
+ * @deprecated Please use THREE.Timer instead.
10
13
  * @param autoStart - Whether to automatically start the clock when {@link getDelta | .getDelta()} is called for the first time. Default `true`
11
14
  */
12
15
  constructor(autoStart?: boolean);
@@ -28,12 +28,15 @@ export interface Object3DJSONObject {
28
28
  visible?: boolean;
29
29
  frustumCulled?: boolean;
30
30
  renderOrder?: number;
31
+ static?: boolean;
31
32
  userData?: Record<string, unknown>;
32
33
 
33
34
  layers: number;
34
35
  matrix: Matrix4Tuple;
35
36
  up: Vector3Tuple;
36
37
 
38
+ pivot?: Vector3Tuple;
39
+
37
40
  matrixAutoUpdate?: boolean;
38
41
 
39
42
  material?: string | string[];
@@ -265,13 +268,6 @@ export class Object3D<TEventMap extends Object3DEventMap = Object3DEventMap> ext
265
268
  */
266
269
  animations: AnimationClip[];
267
270
 
268
- /**
269
- * An object that can be used to store custom data about the {@link Object3D}.
270
- * @remarks It should not hold references to _functions_ as these **will not** be cloned.
271
- * @default `{}`
272
- */
273
- userData: Record<string, any>;
274
-
275
271
  /**
276
272
  * Custom depth material to be used when rendering to the depth map.
277
273
  * @remarks Can only be used in context of meshes.
@@ -287,6 +283,34 @@ export class Object3D<TEventMap extends Object3DEventMap = Object3DEventMap> ext
287
283
  */
288
284
  customDistanceMaterial?: Material | undefined;
289
285
 
286
+ /**
287
+ * Whether the 3D object is supposed to be static or not. If set to `true`, it means
288
+ * the 3D object is not going to be changed after the initial renderer. This includes
289
+ * geometry and material settings. A static 3D object can be processed by the renderer
290
+ * slightly faster since certain state checks can be bypassed.
291
+ *
292
+ * Only relevant in context of {@link WebGPURenderer}.
293
+ *
294
+ * @default false
295
+ */
296
+ static: boolean;
297
+
298
+ /**
299
+ * An object that can be used to store custom data about the {@link Object3D}.
300
+ * @remarks It should not hold references to _functions_ as these **will not** be cloned.
301
+ * @default `{}`
302
+ */
303
+ userData: Record<string, any>;
304
+
305
+ /**
306
+ * The pivot point for rotation and scale transformations.
307
+ * When set, rotation and scale are applied around this point
308
+ * instead of the object's origin.
309
+ *
310
+ * @default null
311
+ */
312
+ pivot: Vector3 | null;
313
+
290
314
  /**
291
315
  * An optional callback that is executed immediately before a 3D object is rendered to a shadow map.
292
316
  * @remarks This function is called with the following parameters: renderer, scene, camera, shadowCamera, geometry,
@@ -1,5 +1,13 @@
1
1
  import { BufferGeometry } from "../core/BufferGeometry.js";
2
2
 
3
+ export interface TorusGeometryJSON {
4
+ radius: number;
5
+ tube: number;
6
+ radialSegments: number;
7
+ tubularSegments: number;
8
+ arc: number;
9
+ }
10
+
3
11
  /**
4
12
  * A class for generating torus geometries.
5
13
  * @example
@@ -21,8 +29,18 @@ export class TorusGeometry extends BufferGeometry {
21
29
  * @param radialSegments Default is `12`.
22
30
  * @param tubularSegments Default is `48`.
23
31
  * @param arc Central angle. Default is Math.PI * 2.
32
+ * @param {number} [thetaStart=0] - Start of the tubular sweep in radians.
33
+ * @param {number} [thetaLength=Math.PI times 2] - Length of the tubular sweep in radians.
24
34
  */
25
- constructor(radius?: number, tube?: number, radialSegments?: number, tubularSegments?: number, arc?: number);
35
+ constructor(
36
+ radius?: number,
37
+ tube?: number,
38
+ radialSegments?: number,
39
+ tubularSegments?: number,
40
+ arc?: number,
41
+ thetaStart?: number,
42
+ thetaLength?: number,
43
+ );
26
44
 
27
45
  /**
28
46
  * A Read-only _string_ to check if `this` object type.
@@ -41,8 +59,9 @@ export class TorusGeometry extends BufferGeometry {
41
59
  readonly radialSegments: number;
42
60
  readonly tubularSegments: number;
43
61
  readonly arc: number;
62
+ readonly thetaStart: number;
63
+ readonly thetaLength: number;
44
64
  };
45
65
 
46
- /** @internal */
47
- static fromJSON(data: any): TorusGeometry;
66
+ static fromJSON(data: TorusGeometryJSON): TorusGeometry;
48
67
  }
@@ -6,30 +6,31 @@ import { Mesh } from "../objects/Mesh.js";
6
6
 
7
7
  /**
8
8
  * An 3D arrow object for visualizing directions.
9
- * @example
10
- * ```typescript
11
- * const dir = new THREE.Vector3(1, 2, 0);
9
+ *
10
+ * ```js
11
+ * const dir = new THREE.Vector3( 1, 2, 0 );
12
+ *
12
13
  * //normalize the direction vector (convert to vector of length 1)
13
14
  * dir.normalize();
14
- * const origin = new THREE.Vector3(0, 0, 0);
15
+ *
16
+ * const origin = new THREE.Vector3( 0, 0, 0 );
15
17
  * const length = 1;
16
18
  * const hex = 0xffff00;
17
- * const {@link ArrowHelper} = new THREE.ArrowHelper(dir, origin, length, hex);
18
- * scene.add(arrowHelper);
19
+ *
20
+ * const arrowHelper = new THREE.ArrowHelper( dir, origin, length, hex );
21
+ * scene.add( arrowHelper );
19
22
  * ```
20
- * @see Example: {@link https://threejs.org/examples/#webgl_shadowmesh | WebGL / shadowmesh}
21
- * @see {@link https://threejs.org/docs/index.html#api/en/helpers/ArrowHelper | Official Documentation}
22
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/helpers/ArrowHelper.js | Source}
23
23
  */
24
24
  export class ArrowHelper extends Object3D {
25
25
  /**
26
- * Create a new instance of {@link ArrowHelper}
27
- * @param dir Direction from origin. Must be a unit vector. Default `new THREE.Vector3(0, 0, 1)`
28
- * @param origin Point at which the arrow starts. Default `new THREE.Vector3(0, 0, 0)`
29
- * @param length Length of the arrow. Default `1`
30
- * @param hex Hexadecimal value to define color. Default `0xffff00`
31
- * @param headLength The length of the head of the arrow. Default `0.2 * length`
32
- * @param headWidth The width of the head of the arrow. Default `0.2 * headLength`
26
+ * Constructs a new arrow helper.
27
+ *
28
+ * @param {Vector3} [dir=(0, 0, 1)] - The (normalized) direction vector.
29
+ * @param {Vector3} [origin=(0, 0, 0)] - Point at which the arrow starts.
30
+ * @param {number} [length=1] - Length of the arrow in world units.
31
+ * @param {(number|Color|string)} [color=0xffff00] - Color of the arrow.
32
+ * @param {number} [headLength=length times 0.2] - The length of the head of the arrow.
33
+ * @param {number} [headWidth=headLength times 0.2] - The width of the head of the arrow.
33
34
  */
34
35
  constructor(
35
36
  dir?: Vector3,
@@ -39,55 +40,38 @@ export class ArrowHelper extends Object3D {
39
40
  headLength?: number,
40
41
  headWidth?: number,
41
42
  );
42
-
43
- /**
44
- * A Read-only _string_ to check if `this` object type.
45
- * @remarks Sub-classes will update this value.
46
- * @override
47
- * @defaultValue `ArrowHelper`
48
- */
49
- override readonly type: string | "ArrowHelper";
50
-
51
43
  /**
52
- * Contains the line part of the arrowHelper.
44
+ * The line part of the arrow helper.
53
45
  */
54
46
  line: Line;
55
-
56
47
  /**
57
- * Contains the cone part of the arrowHelper.
48
+ * The cone part of the arrow helper.
58
49
  */
59
50
  cone: Mesh;
60
-
61
- /**
62
- * Sets the color of the arrowHelper.
63
- * @param color The desired color.
64
- */
65
- setColor(color: ColorRepresentation): void;
66
-
67
51
  /**
68
- * @param dir The desired direction. Must be a unit vector.
52
+ * Sets the direction of the helper.
53
+ *
54
+ * @param {Vector3} dir - The normalized direction vector.
69
55
  */
70
56
  setDirection(dir: Vector3): void;
71
-
72
57
  /**
73
- * Sets the length of the arrowhelper.
74
- * @param length The desired length.
75
- * @param headLength The length of the head of the arrow. Default `0.2 * length`
76
- * @param headWidth The width of the head of the arrow. Default `0.2 * headLength`
58
+ * Sets the length of the helper.
59
+ *
60
+ * @param {number} length - Length of the arrow in world units.
61
+ * @param {number} [headLength=length times 0.2] - The length of the head of the arrow.
62
+ * @param {number} [headWidth=headLength times 0.2] - The width of the head of the arrow.
77
63
  */
78
64
  setLength(length: number, headLength?: number, headWidth?: number): void;
79
-
80
65
  /**
81
- * Copy the given object into this object
82
- * @remarks Note: event listeners and user-defined callbacks ({@link onAfterRender | .onAfterRender} and {@link onBeforeRender | .onBeforeRender}) are not copied.
83
- * @param source
66
+ * Sets the color of the helper.
67
+ *
68
+ * @param {number|Color|string} color - The color to set.
84
69
  */
85
- override copy(source: this): this;
86
-
70
+ setColor(color: ColorRepresentation): void;
71
+ copy(source: ArrowHelper): this;
87
72
  /**
88
- * Frees the GPU-related resources allocated by this instance
89
- * @remarks
90
- * Call this method whenever this instance is no longer used in your app.
73
+ * Frees the GPU-related resources allocated by this instance. Call this
74
+ * method whenever this instance is no longer used in your app.
91
75
  */
92
76
  dispose(): void;
93
77
  }
@@ -1,52 +1,38 @@
1
- import { BufferGeometry } from "../core/BufferGeometry.js";
2
- import { LineBasicMaterial } from "../materials/LineBasicMaterial.js";
3
1
  import { ColorRepresentation } from "../math/Color.js";
4
2
  import { LineSegments } from "../objects/LineSegments.js";
5
3
 
6
4
  /**
7
5
  * An axis object to visualize the 3 axes in a simple way.
8
- * @remarks
9
- * The X axis is red
10
- * The Y axis is green
11
- * The Z axis is blue.
12
- * @example
13
- * ```typescript
14
- * const {@link AxesHelper} = new THREE.AxesHelper(5);
15
- * scene.add(axesHelper);
6
+ * The X axis is red. The Y axis is green. The Z axis is blue.
7
+ *
8
+ * ```js
9
+ * const axesHelper = new THREE.AxesHelper( 5 );
10
+ * scene.add( axesHelper );
16
11
  * ```
17
- * @see Example: {@link https://threejs.org/examples/#webgl_buffergeometry_compression | WebGL / buffergeometry / compression}
18
- * @see Example: {@link https://threejs.org/examples/#webgl_geometry_convex | WebGL / geometry / convex}
19
- * @see Example: {@link https://threejs.org/examples/#webgl_loader_nrrd | WebGL / loader / nrrd}
20
- * @see {@link https://threejs.org/docs/index.html#api/en/helpers/AxesHelper | Official Documentation}
21
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/helpers/AxesHelper.js | Source}
22
12
  */
23
- export class AxesHelper extends LineSegments<BufferGeometry, LineBasicMaterial> {
13
+ export class AxesHelper extends LineSegments {
24
14
  /**
25
- * Create a new instance of {@link AxesHelper}
26
- * @param size Size of the lines representing the axes. Default `1`
15
+ * Constructs a new axes helper.
16
+ *
17
+ * @param {number} [size=1] - Size of the lines representing the axes.
27
18
  */
28
19
  constructor(size?: number);
29
-
30
20
  /**
31
- * A Read-only _string_ to check if `this` object type.
32
- * @remarks Sub-classes will update this value.
33
- * @override
34
- * @defaultValue `AxesHelper`
21
+ * Defines the colors of the axes helper.
22
+ *
23
+ * @param {number|Color|string} xAxisColor - The color for the x axis.
24
+ * @param {number|Color|string} yAxisColor - The color for the y axis.
25
+ * @param {number|Color|string} zAxisColor - The color for the z axis.
26
+ * @return {AxesHelper} A reference to this axes helper.
35
27
  */
36
- override readonly type: string | "AxesHelper";
37
-
38
- /**
39
- * Sets the axes colors to {@link Color | xAxisColor}, {@link Color | yAxisColor}, {@link Color | zAxisColor}.
40
- * @param xAxisColor
41
- * @param yAxisColor
42
- * @param zAxisColor
43
- */
44
- setColors(xAxisColor: ColorRepresentation, yAxisColor: ColorRepresentation, zAxisColor: ColorRepresentation): this;
45
-
28
+ setColors(
29
+ xAxisColor: ColorRepresentation,
30
+ yAxisColor: ColorRepresentation,
31
+ zAxisColor: ColorRepresentation,
32
+ ): AxesHelper;
46
33
  /**
47
- * Frees the GPU-related resources allocated by this instance
48
- * @remarks
49
- * Call this method whenever this instance is no longer used in your app.
34
+ * Frees the GPU-related resources allocated by this instance. Call this
35
+ * method whenever this instance is no longer used in your app.
50
36
  */
51
37
  dispose(): void;
52
38
  }
@@ -3,42 +3,31 @@ import { ColorRepresentation } from "../math/Color.js";
3
3
  import { LineSegments } from "../objects/LineSegments.js";
4
4
 
5
5
  /**
6
- * Helper object to visualize a {@link THREE.Box3 | Box3}.
7
- * @example
8
- * ```typescript
6
+ * A helper object to visualize an instance of {@link Box3}.
7
+ *
8
+ * ```js
9
9
  * const box = new THREE.Box3();
10
- * box.setFromCenterAndSize(new THREE.Vector3(1, 1, 1), new THREE.Vector3(2, 1, 3));
11
- * const helper = new THREE.Box3Helper(box, 0xffff00);
12
- * scene.add(helper);
10
+ * box.setFromCenterAndSize( new THREE.Vector3( 1, 1, 1 ), new THREE.Vector3( 2, 1, 3 ) );
11
+ *
12
+ * const helper = new THREE.Box3Helper( box, 0xffff00 );
13
+ * scene.add( helper )
13
14
  * ```
14
- * @see {@link https://threejs.org/docs/index.html#api/en/helpers/Box3Helper | Official Documentation}
15
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/helpers/Box3Helper.js | Source}
16
15
  */
17
16
  export class Box3Helper extends LineSegments {
18
17
  /**
19
- * Creates a new wireframe box that represents the passed Box3.
20
- * @param box The Box3 to show.
21
- * @param color The box's color. Default `0xffff00`
18
+ * Constructs a new box3 helper.
19
+ *
20
+ * @param {Box3} box - The box to visualize.
21
+ * @param {number|Color|string} [color=0xffff00] - The box's color.
22
22
  */
23
23
  constructor(box: Box3, color?: ColorRepresentation);
24
-
25
24
  /**
26
- * A Read-only _string_ to check if `this` object type.
27
- * @remarks Sub-classes will update this value.
28
- * @override
29
- * @defaultValue `Box3Helper`
30
- */
31
- override readonly type: string | "Box3Helper";
32
-
33
- /**
34
- * The Box3 being visualized.
25
+ * The box being visualized.
35
26
  */
36
27
  box: Box3;
37
-
38
28
  /**
39
- * Frees the GPU-related resources allocated by this instance
40
- * @remarks
41
- * Call this method whenever this instance is no longer used in your app.
29
+ * Frees the GPU-related resources allocated by this instance. Call this
30
+ * method whenever this instance is no longer used in your app.
42
31
  */
43
32
  dispose(): void;
44
33
  }
@@ -1,64 +1,53 @@
1
1
  import { BufferGeometry } from "../core/BufferGeometry.js";
2
2
  import { Object3D } from "../core/Object3D.js";
3
3
  import { LineBasicMaterial } from "../materials/LineBasicMaterial.js";
4
+ import { Box3 } from "../math/Box3.js";
4
5
  import { ColorRepresentation } from "../math/Color.js";
5
6
  import { LineSegments } from "../objects/LineSegments.js";
6
7
 
7
8
  /**
8
- * Helper object to graphically show the world-axis-aligned bounding box around an object
9
- * @remarks
10
- * The actual bounding box is handled with {@link THREE.Box3 | Box3}, this is just a visual helper for debugging
11
- * It can be automatically resized with the {@link THREE.BoxHelper.update | BoxHelper.update} method when the object it's created from is transformed
12
- * Note that the object must have a {@link THREE.BufferGeometry | BufferGeometry} for this to work, so it won't work with {@link Sprite | Sprites}.
13
- * @example
14
- * ```typescript
9
+ * Helper object to graphically show the world-axis-aligned bounding box
10
+ * around an object. The actual bounding box is handled with {@link Box3},
11
+ * this is just a visual helper for debugging. It can be automatically
12
+ * resized with {@link BoxHelper#update} when the object it's created from
13
+ * is transformed. Note that the object must have a geometry for this to work,
14
+ * so it won't work with sprites.
15
+ *
16
+ * ```js
15
17
  * const sphere = new THREE.SphereGeometry();
16
- * const object = new THREE.Mesh(sphere, new THREE.MeshBasicMaterial(0xff0000));
17
- * const box = new THREE.BoxHelper(object, 0xffff00);
18
- * scene.add(box);
18
+ * const object = new THREE.Mesh( sphere, new THREE.MeshBasicMaterial( 0xff0000 ) );
19
+ * const box = new THREE.BoxHelper( object, 0xffff00 );
20
+ * scene.add( box );
19
21
  * ```
20
- * @see Example: {@link https://threejs.org/examples/#webgl_helpers | WebGL / helpers}
21
- * @see Example: {@link https://threejs.org/examples/#webgl_loader_nrrd | WebGL / loader / nrrd}
22
- * @see Example: {@link https://threejs.org/examples/#webgl_buffergeometry_drawrange | WebGL / buffergeometry / drawrange}
23
- * @see {@link https://threejs.org/docs/index.html#api/en/helpers/BoxHelper | Official Documentation}
24
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/helpers/BoxHelper.js | Source}
25
22
  */
26
23
  export class BoxHelper extends LineSegments<BufferGeometry, LineBasicMaterial> {
27
24
  /**
28
- * Creates a new wireframe box that bounds the passed object
29
- * @remarks
30
- * Internally this uses {@link THREE.Box3.setFromObject | Box3.setFromObject} to calculate the dimensions
31
- * Note that this includes any children.
32
- * @param object The object3D to show the world-axis-aligned bounding box.
33
- * @param color Hexadecimal value that defines the box's color. Default `0xffff00`
25
+ * Constructs a new box helper.
26
+ *
27
+ * @param {Object3D} [object] - The 3D object to show the world-axis-aligned bounding box.
28
+ * @param {number|Color|string} [color=0xffff00] - The box's color.
34
29
  */
35
30
  constructor(object: Object3D, color?: ColorRepresentation);
36
-
37
31
  /**
38
- * A Read-only _string_ to check if `this` object type.
39
- * @remarks Sub-classes will update this value.
40
- * @override
41
- * @defaultValue `BoxHelper`
32
+ * The 3D object being visualized.
42
33
  */
43
- override readonly type: string | "BoxHelper";
44
-
34
+ object: Object3D;
45
35
  /**
46
- * Updates the helper's geometry to match the dimensions of the object, including any children
47
- * @remarks
48
- * See {@link THREE.Box3.setFromObject | Box3.setFromObject}.
36
+ * Updates the helper's geometry to match the dimensions of the object,
37
+ * including any children.
49
38
  */
50
- update(object?: Object3D): void;
51
-
39
+ update(): void;
52
40
  /**
53
41
  * Updates the wireframe box for the passed object.
54
- * @param object {@link THREE.Object3D | Object3D} to create the helper of.
42
+ *
43
+ * @param {Object3D} object - The 3D object to create the helper for.
44
+ * @return {BoxHelper} A reference to this instance.
55
45
  */
56
- setFromObject(object: Object3D): this;
57
-
46
+ setFromObject(object: Object3D): BoxHelper;
47
+ copy(source: BoxHelper, recursive?: boolean): this;
58
48
  /**
59
- * Frees the GPU-related resources allocated by this instance
60
- * @remarks
61
- * Call this method whenever this instance is no longer used in your app.
49
+ * Frees the GPU-related resources allocated by this instance. Call this
50
+ * method whenever this instance is no longer used in your app.
62
51
  */
63
52
  dispose(): void;
64
53
  }
@@ -1,80 +1,59 @@
1
1
  import { Camera } from "../cameras/Camera.js";
2
2
  import { Color } from "../math/Color.js";
3
- import { Matrix4 } from "../math/Matrix4.js";
4
3
  import { LineSegments } from "../objects/LineSegments.js";
5
4
 
6
5
  /**
7
- * This helps with visualizing what a camera contains in its frustum
8
- * @remarks
9
- * It visualizes the frustum of a camera using a {@link THREE.LineSegments | LineSegments}.
10
- * @remarks {@link CameraHelper} must be a child of the scene.
11
- * @example
12
- * ```typescript
13
- * const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);
14
- * const helper = new THREE.CameraHelper(camera);
15
- * scene.add(helper);
6
+ * This helps with visualizing what a camera contains in its frustum. It
7
+ * visualizes the frustum of a camera using a line segments.
8
+ *
9
+ * Based on frustum visualization in [lightgl.js shadowmap example](https://github.com/evanw/lightgl.js/blob/master/tests/shadowmap.html).
10
+ *
11
+ * `CameraHelper` must be a child of the scene.
12
+ *
13
+ * When the camera is transformed or its projection matrix is changed, it's necessary
14
+ * to call the `update()` method of the respective helper.
15
+ *
16
+ * ```js
17
+ * const camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 0.1, 1000 );
18
+ * const helper = new THREE.CameraHelper( camera );
19
+ * scene.add( helper );
16
20
  * ```
17
- * @see Example: {@link https://threejs.org/examples/#webgl_camera | WebGL / camera}
18
- * @see Example: {@link https://threejs.org/examples/#webgl_geometry_extrude_splines | WebGL / extrude / splines}
19
- * @see {@link https://threejs.org/docs/index.html#api/en/helpers/CameraHelper | Official Documentation}
20
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/helpers/CameraHelper.js | Source}
21
21
  */
22
22
  export class CameraHelper extends LineSegments {
23
23
  /**
24
- * This create a new {@link CameraHelper} for the specified camera.
25
- * @param camera The camera to visualize.
24
+ * Constructs a new arrow helper.
25
+ *
26
+ * @param {Camera} camera - The camera to visualize.
26
27
  */
27
28
  constructor(camera: Camera);
28
-
29
- /**
30
- * A Read-only _string_ to check if `this` object type.
31
- * @remarks Sub-classes will update this value.
32
- * @override
33
- * @defaultValue `CameraHelper`
34
- */
35
- override readonly type: string | "CameraHelper";
36
-
37
29
  /**
38
30
  * The camera being visualized.
39
31
  */
40
32
  camera: Camera;
41
-
42
33
  /**
43
34
  * This contains the points used to visualize the camera.
44
35
  */
45
- pointMap: { [id: string]: number[] };
46
-
47
- /**
48
- * Reference to the {@link THREE.Camera.matrixWorld | camera.matrixWorld}.
49
- */
50
- matrix: Matrix4;
51
-
52
- /**
53
- * Is set to `false`, as the helper is using the {@link THREE.Camera.matrixWorld | camera.matrixWorld}.
54
- * @see {@link THREE.Object3D.matrixAutoUpdate | Object3D.matrixAutoUpdate}.
55
- * @defaultValue `false`.
56
- */
57
- override matrixAutoUpdate: boolean;
58
-
36
+ pointMap: {
37
+ [x: string]: number[];
38
+ };
59
39
  /**
60
40
  * Defines the colors of the helper.
61
- * @param frustum
62
- * @param cone
63
- * @param up
64
- * @param target
65
- * @param cross
41
+ *
42
+ * @param {Color} frustum - The frustum line color.
43
+ * @param {Color} cone - The cone line color.
44
+ * @param {Color} up - The up line color.
45
+ * @param {Color} target - The target line color.
46
+ * @param {Color} cross - The cross line color.
47
+ * @return {CameraHelper} A reference to this helper.
66
48
  */
67
- setColors(frustum: Color, cone: Color, up: Color, target: Color, cross: Color): this;
68
-
49
+ setColors(frustum: Color, cone: Color, up: Color, target: Color, cross: Color): CameraHelper;
69
50
  /**
70
- * Updates the helper based on the projectionMatrix of the camera.
51
+ * Updates the helper based on the projection matrix of the camera.
71
52
  */
72
53
  update(): void;
73
-
74
54
  /**
75
- * Frees the GPU-related resources allocated by this instance
76
- * @remarks
77
- * Call this method whenever this instance is no longer used in your app.
55
+ * Frees the GPU-related resources allocated by this instance. Call this
56
+ * method whenever this instance is no longer used in your app.
78
57
  */
79
58
  dispose(): void;
80
59
  }