@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
@@ -1,73 +1,49 @@
1
1
  import { Object3D } from "../core/Object3D.js";
2
2
  import { Color } from "../math/Color.js";
3
- import { Matrix4 } from "../math/Matrix4.js";
4
3
  import { Bone } from "../objects/Bone.js";
5
4
  import { LineSegments } from "../objects/LineSegments.js";
6
- import { SkinnedMesh } from "../objects/SkinnedMesh.js";
7
5
 
8
6
  /**
9
- * A helper object to assist with visualizing a {@link Skeleton | Skeleton}
10
- * @remarks
11
- * The helper is rendered using a {@link LineBasicMaterial | LineBasicMaterial}.
12
- * @example
13
- * ```typescript
14
- * const helper = new THREE.SkeletonHelper(skinnedMesh);
15
- * scene.add(helper);
7
+ * A helper object to assist with visualizing a {@link Skeleton}.
8
+ *
9
+ * ```js
10
+ * const helper = new THREE.SkeletonHelper( skinnedMesh );
11
+ * scene.add( helper );
16
12
  * ```
17
- * @see Example: {@link https://threejs.org/examples/#webgl_animation_skinning_blending | WebGL / animation / skinning / blending}
18
- * @see Example: {@link https://threejs.org/examples/#webgl_animation_skinning_morph | WebGL / animation / skinning / morph}
19
- * @see Example: {@link https://threejs.org/examples/#webgl_loader_bvh | WebGL / loader / bvh }
20
- * @see {@link https://threejs.org/docs/index.html#api/en/helpers/SkeletonHelper | Official Documentation}
21
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/helpers/SkeletonHelper.js | Source}
22
13
  */
23
- declare class SkeletonHelper extends LineSegments {
14
+ export class SkeletonHelper extends LineSegments {
24
15
  /**
25
- * Create a new instance of {@link SkeletonHelper}
26
- * @param object Usually an instance of {@link THREE.SkinnedMesh | SkinnedMesh}.
27
- * However, any instance of {@link THREE.Object3D | Object3D} can be used if it represents a hierarchy of {@link Bone | Bone}s (via {@link THREE.Object3D.children | Object3D.children}).
16
+ * Constructs a new skeleton helper.
17
+ *
18
+ * @param {Object3D} object - Usually an instance of {@link SkinnedMesh}. However, any 3D object
19
+ * can be used if it represents a hierarchy of bones (see {@link Bone}).
28
20
  */
29
- constructor(object: SkinnedMesh | Object3D);
30
-
21
+ constructor(object: Object3D);
31
22
  /**
32
- * Read-only flag to check if a given object is of type {@link SkeletonHelper}.
33
- * @remarks This is a _constant_ value
34
- * @defaultValue `true`
23
+ * This flag can be used for type testing.
24
+ *
25
+ * @default true
35
26
  */
36
- readonly isSkeletonHelper = true;
37
-
38
- /**
39
- * A Read-only _string_ to check if `this` object type.
40
- * @remarks Sub-classes will update this value.
41
- * @override
42
- * @defaultValue `SkeletonHelper`
43
- */
44
- override readonly type: string | "SkeletonHelper";
45
-
27
+ readonly isSkeletonHelper: boolean;
46
28
  /**
47
- * The object passed in the constructor.
29
+ * The object being visualized.
48
30
  */
49
- root: SkinnedMesh | Object3D;
50
-
31
+ root: Object3D;
51
32
  /**
52
- * The list of bones that the helper renders as {@link Line | Lines}.
33
+ * The list of bones that the helper visualizes.
53
34
  */
54
35
  bones: Bone[];
55
-
56
36
  /**
57
- * Is set to `false`, as the helper is using the {@link THREE.Object3D.matrixWorld | root.matrixWorld}.
58
- * @see {@link THREE.Object3D.matrixAutoUpdate | Object3D.matrixAutoUpdate}.
59
- * @defaultValue `false`.
37
+ * Defines the colors of the helper.
38
+ *
39
+ * @param {Color} color1 - The first line color for each bone.
40
+ * @param {Color} color2 - The second line color for each bone.
41
+ * @return {SkeletonHelper} A reference to this helper.
60
42
  */
61
- override matrixAutoUpdate: boolean;
62
-
63
- setColors(color1: Color, color2: Color): this;
64
-
43
+ setColors(color1: Color, color2: Color): SkeletonHelper;
65
44
  /**
66
- * Frees the GPU-related resources allocated by this instance
67
- * @remarks
68
- * Call this method whenever this instance is no longer used in your app.
45
+ * Frees the GPU-related resources allocated by this instance. Call this
46
+ * method whenever this instance is no longer used in your app.
69
47
  */
70
48
  dispose(): void;
71
49
  }
72
-
73
- export { SkeletonHelper };
@@ -1,77 +1,50 @@
1
1
  import { Object3D } from "../core/Object3D.js";
2
- import { Light } from "../lights/Light.js";
2
+ import { SpotLight } from "../lights/SpotLight.js";
3
3
  import { ColorRepresentation } from "../math/Color.js";
4
- import { Matrix4 } from "../math/Matrix4.js";
5
4
  import { LineSegments } from "../objects/LineSegments.js";
6
5
 
7
6
  /**
8
- * This displays a cone shaped helper object for a {@link THREE.SpotLight | SpotLight}.
9
- * @example
10
- * ```typescript
11
- * const spotLight = new THREE.SpotLight(0xffffff);
12
- * spotLight.position.set(10, 10, 10);
13
- * scene.add(spotLight);
14
- * const {@link SpotLightHelper} = new THREE.SpotLightHelper(spotLight);
15
- * scene.add(spotLightHelper);
7
+ * This displays a cone shaped helper object for a {@link SpotLight}.
8
+ *
9
+ * When the spot light or its target are transformed or light properties are
10
+ * changed, it's necessary to call the `update()` method of the respective helper.
11
+ *
12
+ * ```js
13
+ * const spotLight = new THREE.SpotLight( 0xffffff );
14
+ * spotLight.position.set( 10, 10, 10 );
15
+ * scene.add( spotLight );
16
+ *
17
+ * const spotLightHelper = new THREE.SpotLightHelper( spotLight );
18
+ * scene.add( spotLightHelper );
16
19
  * ```
17
- * @see Example: {@link https://threejs.org/examples/#webgl_lights_spotlights | WebGL/ lights / spotlights }
18
- * @see {@link https://threejs.org/docs/index.html#api/en/helpers/SpotLightHelper | Official Documentation}
19
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/helpers/SpotLightHelper.js | Source}
20
20
  */
21
21
  export class SpotLightHelper extends Object3D {
22
22
  /**
23
- * Create a new instance of {@link SpotLightHelper}
24
- * @param light The {@link THREE.SpotLight | SpotLight} to be visualized.
25
- * @param color If this is not the set the helper will take the color of the light. Default `light.color`
23
+ * Constructs a new spot light helper.
24
+ *
25
+ * @param {HemisphereLight} light - The light to be visualized.
26
+ * @param {number|Color|string} [color] - The helper's color. If not set, the helper will take
27
+ * the color of the light.
26
28
  */
27
- constructor(light: Light, color?: ColorRepresentation);
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 `SpotLightHelper`
34
- */
35
- override readonly type: string | "SpotLightHelper";
36
-
37
- /**
38
- * {@link THREE.LineSegments | LineSegments} used to visualize the light.
39
- */
40
- cone: LineSegments;
41
-
42
- /**
43
- * Reference to the {@link THREE.SpotLight | SpotLight} being visualized.
44
- */
45
- light: Light;
46
-
29
+ constructor(light: SpotLight, color?: ColorRepresentation);
47
30
  /**
48
- * Reference to the spotLight's {@link Object3D.matrixWorld | matrixWorld}.
31
+ * The light being visualized.
49
32
  */
50
- matrix: Matrix4;
51
-
33
+ light: SpotLight;
52
34
  /**
53
35
  * The color parameter passed in the constructor.
54
- * If this is changed, the helper's color will update the next time {@link SpotLightHelper.update | update} is called.
55
- * @defaultValue `undefined`
36
+ * If not set, the helper will take the color of the light.
56
37
  */
57
38
  color: ColorRepresentation | undefined;
58
-
39
+ cone: LineSegments;
59
40
  /**
60
- * Is set to `false`, as the helper is using the {@link THREE.Light.matrixWorld | light.matrixWorld}.
61
- * @see {@link THREE.Object3D.matrixAutoUpdate | Object3D.matrixAutoUpdate}.
62
- * @defaultValue `false`.
41
+ * Frees the GPU-related resources allocated by this instance. Call this
42
+ * method whenever this instance is no longer used in your app.
63
43
  */
64
- override matrixAutoUpdate: boolean;
65
-
44
+ dispose(): void;
66
45
  /**
67
- * Updates the light helper.
46
+ * Updates the helper to match the position and direction of the
47
+ * light being visualized.
68
48
  */
69
49
  update(): void;
70
-
71
- /**
72
- * Frees the GPU-related resources allocated by this instance
73
- * @remarks
74
- * Call this method whenever this instance is no longer used in your app.
75
- */
76
- dispose(): void;
77
50
  }
@@ -3,34 +3,26 @@ import { Light } from "./Light.js";
3
3
 
4
4
  /**
5
5
  * This light globally illuminates all objects in the scene equally.
6
- * @remarks This light cannot be used to cast shadows as it does not have a direction.
7
- * @example
8
- * ```typescript
9
- * const light = new THREE.AmbientLight(0x404040); // soft white light
10
- * scene.add(light);
6
+ *
7
+ * It cannot be used to cast shadows as it does not have a direction.
8
+ *
9
+ * ```js
10
+ * const light = new THREE.AmbientLight( 0x404040 ); // soft white light
11
+ * scene.add( light );
11
12
  * ```
12
- * @see {@link https://threejs.org/docs/index.html#api/en/lights/AmbientLight | Official Documentation}
13
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/lights/AmbientLight.js | Source}
14
13
  */
15
- export class AmbientLight extends Light<undefined> {
14
+ export class AmbientLight extends Light {
16
15
  /**
17
- * Creates a new {@link AmbientLight}.
18
- * @param color Numeric value of the RGB component of the color. Default `0xffffff`
19
- * @param intensity Numeric value of the light's strength/intensity. Expects a `Float`. Default `1`
16
+ * Constructs a new ambient light.
17
+ *
18
+ * @param {(number|Color|string)} [color=0xffffff] - The light's color.
19
+ * @param {number} [intensity=1] - The light's strength/intensity.
20
20
  */
21
21
  constructor(color?: ColorRepresentation, intensity?: number);
22
-
23
- /**
24
- * Read-only flag to check if a given object is of type {@link AmbientLight}.
25
- * @remarks This is a _constant_ value
26
- * @defaultValue `true`
27
- */
28
- readonly isAmbientLight: true;
29
-
30
22
  /**
31
- * A Read-only _string_ to check if `this` object type.
32
- * @remarks Sub-classes will update this value.
33
- * @defaultValue `AmbientLight`
23
+ * This flag can be used for type testing.
24
+ *
25
+ * @default true
34
26
  */
35
- override readonly type: string | "AmbientLight";
27
+ readonly isAmbientLight: boolean;
36
28
  }
@@ -1,102 +1,68 @@
1
- import { Object3D } from "../core/Object3D.js";
1
+ import { JSONMeta, Object3D } from "../core/Object3D.js";
2
2
  import { ColorRepresentation } from "../math/Color.js";
3
- import { Vector3 } from "../math/Vector3.js";
4
3
  import { DirectionalLightShadow } from "./DirectionalLightShadow.js";
5
- import { Light } from "./Light.js";
4
+ import { Light, LightJSON } from "./Light.js";
5
+ import { LightShadowJSON } from "./LightShadow.js";
6
+
7
+ export interface DirectionalLightJSON extends LightJSON {
8
+ shadow: LightShadowJSON;
9
+ target: string;
10
+ }
6
11
 
7
12
  /**
8
- * A light that gets emitted in a specific direction
9
- * @remarks
10
- * This light will behave as though it is infinitely far away and the rays produced from it are all parallel
11
- * The common use case for this is to simulate daylight; the sun is far enough away that its position can be considered to be infinite, and all light rays coming from it are parallel.
12
- * A common point of confusion for directional lights is that setting the rotation has no effect
13
- * This is because three.js's {@link DirectionalLight} is the equivalent to what is often called a 'Target Direct Light' in other applications.
14
- * This means that its direction is calculated as pointing from the light's {@link THREE.Object3D.position | position} to the {@link THREE.DirectionalLight.target | target}'s
15
- * position (as opposed to a 'Free Direct Light' that just has a rotation component).
16
- * See the {@link THREE.DirectionalLight.target | target} property below for details on updating the target.
17
- * @example
18
- * ```typescript
13
+ * A light that gets emitted in a specific direction. This light will behave
14
+ * as though it is infinitely far away and the rays produced from it are all
15
+ * parallel. The common use case for this is to simulate daylight; the sun is
16
+ * far enough away that its position can be considered to be infinite, and
17
+ * all light rays coming from it are parallel.
18
+ *
19
+ * A common point of confusion for directional lights is that setting the
20
+ * rotation has no effect. This is because three.js's DirectionalLight is the
21
+ * equivalent to what is often called a 'Target Direct Light' in other
22
+ * applications.
23
+ *
24
+ * This means that its direction is calculated as pointing from the light's
25
+ * {@link Object3D#position} to the {@link DirectionalLight#target} position
26
+ * (as opposed to a 'Free Direct Light' that just has a rotation
27
+ * component).
28
+ *
29
+ * This light can cast shadows - see the {@link DirectionalLightShadow} for details.
30
+ *
31
+ * ```js
19
32
  * // White directional light at half intensity shining from the top.
20
- * const {@link DirectionalLight} = new THREE.DirectionalLight(0xffffff, 0.5);
21
- * scene.add(directionalLight);
33
+ * const directionalLight = new THREE.DirectionalLight( 0xffffff, 0.5 );
34
+ * scene.add( directionalLight );
22
35
  * ```
23
- * @see Example: {@link https://threejs.org/examples/#misc_controls_fly | controls / fly }
24
- * @see Example: {@link https://threejs.org/examples/#webgl_effects_parallaxbarrier | effects / parallaxbarrier }
25
- * @see Example: {@link https://threejs.org/examples/#webgl_effects_stereo | effects / stereo }
26
- * @see Example: {@link https://threejs.org/examples/#webgl_geometry_extrude_splines | geometry / extrude / splines }
27
- * @see Example: {@link https://threejs.org/examples/#webgl_materials_bumpmap | materials / bumpmap }
28
- * @see {@link https://threejs.org/docs/index.html#api/en/lights/DirectionalLight | Official Documentation}
29
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/lights/DirectionalLight.js | Source}
30
36
  */
31
- export class DirectionalLight extends Light<DirectionalLightShadow> {
37
+ export class DirectionalLight extends Light {
32
38
  /**
33
- * Creates a new {@link DirectionalLight}.
34
- * @param color Hexadecimal color of the light. Default `0xffffff` _(white)_.
35
- * @param intensity Numeric value of the light's strength/intensity. Expects a `Float`. Default `1`
39
+ * Constructs a new directional light.
40
+ *
41
+ * @param {(number|Color|string)} [color=0xffffff] - The light's color.
42
+ * @param {number} [intensity=1] - The light's strength/intensity.
36
43
  */
37
44
  constructor(color?: ColorRepresentation, intensity?: number);
38
-
39
- /**
40
- * Read-only flag to check if a given object is of type {@link DirectionalLight}.
41
- * @remarks This is a _constant_ value
42
- * @defaultValue `true`
43
- */
44
- readonly isDirectionalLight: true;
45
-
46
- /**
47
- * A Read-only _string_ to check if `this` object type.
48
- * @remarks Sub-classes will update this value.
49
- * @defaultValue `DirectionalLight`
50
- */
51
- override readonly type: string | "DirectionalLight";
52
-
53
- /**
54
- * Whether the object gets rendered into shadow map.
55
- * @remarks
56
- * If set to `true` light will cast dynamic shadows.
57
- * **Warning**: This is expensive and requires tweaking to get shadows looking right.
58
- * @see {@link THREE.DirectionalLightShadow | DirectionalLightShadow} for details.
59
- * @defaultValue `false`
60
- */
61
- override castShadow: boolean;
62
-
63
45
  /**
64
- * This is set equal to {@link THREE.Object3D.DEFAULT_UP}, so that the light shines from the top down.
65
- * @defaultValue {@link Object3D.DEFAULT_UP} _(0, 1, 0)_
46
+ * This flag can be used for type testing.
47
+ *
48
+ * @default true
66
49
  */
67
- override readonly position: Vector3;
68
-
50
+ readonly isDirectionalLight: boolean;
69
51
  /**
70
- * A {@link THREE.DirectionalLightShadow | DirectionalLightShadow} used to calculate shadows for this light.
71
- * @defaultValue `new THREE.DirectionalLightShadow()`
72
- */
73
- shadow: DirectionalLightShadow;
74
-
75
- /**
76
- * The {@link DirectionalLight} points from its {@link DirectionalLight.position | position} to target.position.
77
- * @remarks **Note**: For the target's position to be changed to anything other than the default,
78
- * it must be added to the {@link THREE.Scene | scene} using
79
- * ```typescript
80
- * Scene.add( light.target );
81
- * ```
82
- * This is so that the target's {@link THREE.Object3D.matrixWorld | matrixWorld} gets automatically updated each frame.
52
+ * The directional light points from its position to the
53
+ * target's position.
54
+ *
55
+ * For the target's position to be changed to anything other
56
+ * than the default, it must be added to the scene.
83
57
  *
84
- * It is also possible to set the target to be another object in the scene (anything with a {@link THREE.Object3D.position | position} property),
85
- * like so:
86
- * ```typescript
87
- * const targetObject = new THREE.Object3D();
88
- * scene.add(targetObject);
89
- * light.target = targetObject;
90
- * ```
91
- * The {@link DirectionalLight} will now track the target object.
92
- * @defaultValue `new THREE.Object3D()` at _(0, 0, 0)_
58
+ * It is also possible to set the target to be another 3D object
59
+ * in the scene. The light will now track the target object.
93
60
  */
94
61
  target: Object3D;
95
-
96
62
  /**
97
- * Frees the GPU-related resources allocated by this instance
98
- * @remarks
99
- * Call this method whenever this instance is no longer used in your app.
63
+ * This property holds the light's shadow configuration.
100
64
  */
101
- dispose(): void;
65
+ shadow: DirectionalLightShadow;
66
+ copy(source: DirectionalLight): this;
67
+ toJSON(meta?: JSONMeta): DirectionalLightJSON;
102
68
  }
@@ -2,72 +2,17 @@ import { OrthographicCamera } from "../cameras/OrthographicCamera.js";
2
2
  import { LightShadow } from "./LightShadow.js";
3
3
 
4
4
  /**
5
- * This is used internally by {@link DirectionalLight | DirectionalLights} for calculating shadows.
6
- * Unlike the other shadow classes, this uses an {@link THREE.OrthographicCamera | OrthographicCamera} to calculate the shadows,
7
- * rather than a {@link THREE.PerspectiveCamera | PerspectiveCamera}
8
- * @remarks
9
- * This is because light rays from a {@link THREE.DirectionalLight | DirectionalLight} are parallel.
10
- * @example
11
- * ```typescript
12
- * //Create a WebGLRenderer and turn on shadows in the renderer
13
- * const renderer = new THREE.WebGLRenderer();
14
- * renderer.shadowMap.enabled = true;
15
- * renderer.shadowMap.type = THREE.PCFSoftShadowMap; // default THREE.PCFShadowMap
16
- * //Create a DirectionalLight and turn on shadows for the light
17
- * const light = new THREE.DirectionalLight(0xffffff, 1);
18
- * light.position.set(0, 1, 0); //default; light shining from top
19
- * light.castShadow = true; // default false
20
- * scene.add(light);
21
- * //Set up shadow properties for the light
22
- * light.shadow.mapSize.width = 512; // default
23
- * light.shadow.mapSize.height = 512; // default
24
- * light.shadow.camera.near = 0.5; // default
25
- * light.shadow.camera.far = 500; // default
26
- * //Create a sphere that cast shadows (but does not receive them)
27
- * const sphereGeometry = new THREE.SphereGeometry(5, 32, 32);
28
- * const sphereMaterial = new THREE.MeshStandardMaterial({
29
- * color: 0xff0000
30
- * });
31
- * const sphere = new THREE.Mesh(sphereGeometry, sphereMaterial);
32
- * sphere.castShadow = true; //default is false
33
- * sphere.receiveShadow = false; //default
34
- * scene.add(sphere);
35
- * //Create a plane that receives shadows (but does not cast them)
36
- * const planeGeometry = new THREE.PlaneGeometry(20, 20, 32, 32);
37
- * const planeMaterial = new THREE.MeshStandardMaterial({
38
- * color: 0x00ff00
39
- * })
40
- * const plane = new THREE.Mesh(planeGeometry, planeMaterial);
41
- * plane.receiveShadow = true;
42
- * scene.add(plane);
43
- * //Create a helper for the shadow camera (optional)
44
- * const helper = new THREE.CameraHelper(light.shadow.camera);
45
- * scene.add(helper);
46
- * ```
47
- * @see {@link https://threejs.org/docs/index.html#api/en/lights/shadows/DirectionalLightShadow | Official Documentation}
48
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/lights/DirectionalLightShadow.js | Source}
5
+ * Represents the shadow configuration of directional lights.
49
6
  */
50
7
  export class DirectionalLightShadow extends LightShadow<OrthographicCamera> {
51
8
  /**
52
- * Create a new instance of {@link DirectionalLightShadow}
9
+ * Constructs a new directional light shadow.
53
10
  */
54
11
  constructor();
55
-
56
- /**
57
- * Read-only flag to check if a given object is of type {@link DirectionalLightShadow}.
58
- * @remarks This is a _constant_ value
59
- * @defaultValue `true`
60
- */
61
- readonly isDirectionalLightShadow: true;
62
-
63
12
  /**
64
- * The light's view of the world.
65
- * @remarks This is used to generate a depth map of the scene; objects behind other objects from the light's perspective will be in shadow.
66
- * @defaultValue is an {@link THREE.OrthographicCamera | OrthographicCamera} with
67
- * {@link OrthographicCamera.left | left} and {@link OrthographicCamera.bottom | bottom} set to -5,
68
- * {@link OrthographicCamera.right | right} and {@link OrthographicCamera.top | top} set to 5,
69
- * the {@link OrthographicCamera.near | near} clipping plane at 0.5 and
70
- * the {@link OrthographicCamera.far | far} clipping plane at 500.
13
+ * This flag can be used for type testing.
14
+ *
15
+ * @default true
71
16
  */
72
- camera: OrthographicCamera;
17
+ readonly isDirectionalLightShadow: boolean;
73
18
  }
@@ -1,61 +1,41 @@
1
+ import { JSONMeta } from "../core/Object3D.js";
1
2
  import { Color, ColorRepresentation } from "../math/Color.js";
2
- import { Vector3 } from "../math/Vector3.js";
3
- import { Light } from "./Light.js";
3
+ import { Light, LightJSON } from "./Light.js";
4
+
5
+ export interface HemisphereLightJSON extends LightJSON {
6
+ groundColor: number;
7
+ }
4
8
 
5
9
  /**
6
- * A light source positioned directly above the scene, with color fading from the sky color to the ground color.
7
- * @remarks This light cannot be used to cast shadows.
8
- * @example
9
- * ```typescript
10
- * const light = new THREE.HemisphereLight(0xffffbb, 0x080820, 1);
11
- * scene.add(light);
10
+ * A light source positioned directly above the scene, with color fading from
11
+ * the sky color to the ground color.
12
+ *
13
+ * This light cannot be used to cast shadows.
14
+ *
15
+ * ```js
16
+ * const light = new THREE.HemisphereLight( 0xffffbb, 0x080820, 1 );
17
+ * scene.add( light );
12
18
  * ```
13
- * @see Example: {@link https://threejs.org/examples/#webgl_animation_skinning_blending | animation / skinning / blending }
14
- * @see Example: {@link https://threejs.org/examples/#webgl_lights_hemisphere | lights / hemisphere }
15
- * @see Example: {@link https://threejs.org/examples/#misc_controls_pointerlock | controls / pointerlock }
16
- * @see Example: {@link https://threejs.org/examples/#webgl_loader_collada_kinematics | loader / collada / kinematics }
17
- * @see Example: {@link https://threejs.org/examples/#webgl_loader_stl | loader / stl }
18
- * @see {@link https://threejs.org/docs/index.html#api/en/lights/HemisphereLight | Official Documentation}
19
- * @see {@link https://github.com/mrdoob/three.js/blob/master/src/lights/HemisphereLight.js | Source}
20
19
  */
21
- export class HemisphereLight extends Light<undefined> {
20
+ export class HemisphereLight extends Light {
22
21
  /**
23
- * Creates a new {@link HemisphereLight}.
24
- * @param skyColor Hexadecimal color of the sky. Expects a `Integer`. Default `0xffffff` _(white)_.
25
- * @param groundColor Hexadecimal color of the ground. Expects a `Integer`. Default `0xffffff` _(white)_.
26
- * @param intensity Numeric value of the light's strength/intensity. Expects a `Float`. Default `1`.
22
+ * Constructs a new hemisphere light.
23
+ *
24
+ * @param {(number|Color|string)} [skyColor=0xffffff] - The light's sky color.
25
+ * @param {(number|Color|string)} [groundColor=0xffffff] - The light's ground color.
26
+ * @param {number} [intensity=1] - The light's strength/intensity.
27
27
  */
28
28
  constructor(skyColor?: ColorRepresentation, groundColor?: ColorRepresentation, intensity?: number);
29
-
30
29
  /**
31
- * Read-only flag to check if a given object is of type {@link HemisphereLight}.
32
- * @remarks This is a _constant_ value
33
- * @defaultValue `true`
30
+ * This flag can be used for type testing.
31
+ *
32
+ * @default true
34
33
  */
35
- readonly isHemisphereLight: true;
36
-
37
- /**
38
- * A Read-only _string_ to check if `this` object type.
39
- * @remarks Sub-classes will update this value.
40
- * @defaultValue `HemisphereLight`
41
- */
42
- override readonly type: string | "HemisphereLight";
43
-
44
- /**
45
- * This is set equal to {@link THREE.Object3D.DEFAULT_UP}, so that the light shines from the top down.
46
- * @defaultValue {@link Object3D.DEFAULT_UP} _(0, 1, 0)_
47
- */
48
- override readonly position: Vector3;
49
-
50
- /**
51
- * The light's sky color, as passed in the constructor.
52
- * @defaultValue `new THREE.Color()` set to white _(0xffffff)_.
53
- */
54
- override color: Color;
55
-
34
+ readonly isHemisphereLight: boolean;
56
35
  /**
57
- * The light's ground color, as passed in the constructor.
58
- * @defaultValue `new THREE.Color()` set to white _(0xffffff)_.
36
+ * The light's ground color.
59
37
  */
60
38
  groundColor: Color;
39
+ copy(source: HemisphereLight, recursive?: boolean): this;
40
+ toJSON(meta?: JSONMeta): HemisphereLightJSON;
61
41
  }