@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.
- three/README.md +1 -1
- three/examples/jsm/Addons.d.ts +0 -3
- three/examples/jsm/controls/ArcballControls.d.ts +1 -1
- three/examples/jsm/controls/DragControls.d.ts +1 -1
- three/examples/jsm/controls/FirstPersonControls.d.ts +1 -1
- three/examples/jsm/controls/FlyControls.d.ts +1 -1
- three/examples/jsm/controls/OrbitControls.d.ts +40 -1
- three/examples/jsm/controls/PointerLockControls.d.ts +1 -1
- three/examples/jsm/controls/TrackballControls.d.ts +1 -1
- three/examples/jsm/controls/TransformControls.d.ts +1 -1
- three/examples/jsm/effects/AnaglyphEffect.d.ts +4 -0
- three/examples/jsm/environments/ColorEnvironment.d.ts +9 -0
- three/examples/jsm/gpgpu/BitonicSort.d.ts +5 -5
- three/examples/jsm/helpers/AnimationPathHelper.d.ts +38 -0
- three/examples/jsm/helpers/ViewHelper.d.ts +4 -1
- three/examples/jsm/inspector/tabs/Parameters.d.ts +3 -0
- three/examples/jsm/inspector/ui/Item.d.ts +5 -0
- three/examples/jsm/libs/meshopt_decoder.module.d.ts +1 -1
- three/examples/jsm/lights/LightProbeGenerator.d.ts +11 -5
- three/examples/jsm/loaders/ColladaLoader.d.ts +27 -4
- three/examples/jsm/loaders/UltraHDRLoader.d.ts +7 -0
- three/examples/jsm/loaders/VOXLoader.d.ts +22 -5
- three/examples/jsm/math/Octree.d.ts +36 -14
- three/examples/jsm/objects/SkyMesh.d.ts +16 -6
- three/examples/jsm/objects/Water2Mesh.d.ts +7 -7
- three/examples/jsm/objects/WaterMesh.d.ts +6 -6
- three/examples/jsm/physics/AmmoPhysics.d.ts +1 -1
- three/examples/jsm/postprocessing/EffectComposer.d.ts +9 -10
- three/examples/jsm/postprocessing/OutputPass.d.ts +10 -6
- three/examples/jsm/postprocessing/RenderPass.d.ts +15 -10
- three/examples/jsm/postprocessing/UnrealBloomPass.d.ts +4 -9
- three/examples/jsm/transpiler/AST.d.ts +17 -0
- three/examples/jsm/transpiler/TSLEncoder.d.ts +2 -0
- three/examples/jsm/tsl/display/AnaglyphPassNode.d.ts +30 -0
- three/examples/jsm/tsl/display/AnamorphicNode.d.ts +1 -1
- three/examples/jsm/tsl/display/BilateralBlurNode.d.ts +27 -0
- three/examples/jsm/tsl/display/BleachBypass.d.ts +1 -1
- three/examples/jsm/tsl/display/BloomNode.d.ts +5 -5
- three/examples/jsm/tsl/display/CRT.d.ts +22 -0
- three/examples/jsm/tsl/display/DenoiseNode.d.ts +5 -5
- three/examples/jsm/tsl/display/DotScreenNode.d.ts +4 -6
- three/examples/jsm/tsl/display/GTAONode.d.ts +8 -8
- three/examples/jsm/tsl/display/GaussianBlurNode.d.ts +4 -2
- three/examples/jsm/tsl/display/GodraysNode.d.ts +20 -0
- three/examples/jsm/tsl/display/LensflareNode.d.ts +6 -6
- three/examples/jsm/tsl/display/Lut3DNode.d.ts +5 -5
- three/examples/jsm/tsl/display/MotionBlur.d.ts +1 -1
- three/examples/jsm/tsl/display/OutlineNode.d.ts +6 -6
- three/examples/jsm/tsl/display/PixelationPassNode.d.ts +10 -10
- three/examples/jsm/tsl/display/RGBShiftNode.d.ts +2 -2
- three/examples/jsm/tsl/display/RetroPassNode.d.ts +17 -0
- three/examples/jsm/tsl/display/SSAAPassNode.d.ts +1 -1
- three/examples/jsm/tsl/display/SSGINode.d.ts +11 -11
- three/examples/jsm/tsl/display/SSRNode.d.ts +6 -6
- three/examples/jsm/tsl/display/SSSNode.d.ts +7 -5
- three/examples/jsm/tsl/display/Shape.d.ts +3 -0
- three/examples/jsm/tsl/display/TRAANode.d.ts +5 -0
- three/examples/jsm/tsl/display/TransitionNode.d.ts +3 -3
- three/examples/jsm/tsl/display/boxBlur.d.ts +1 -1
- three/examples/jsm/tsl/display/depthAwareBlend.d.ts +15 -0
- three/examples/jsm/tsl/display/hashBlur.d.ts +1 -1
- three/examples/jsm/tsl/display/radialBlur.d.ts +12 -0
- three/examples/jsm/tsl/math/Bayer.d.ts +2 -0
- three/examples/jsm/tsl/utils/Raymarching.d.ts +2 -2
- three/package.json +4 -4
- three/src/Three.Core.d.ts +1 -1
- three/src/Three.TSL.d.ts +20 -13
- three/src/Three.WebGPU.Nodes.d.ts +2 -0
- three/src/Three.WebGPU.d.ts +3 -0
- three/src/Three.d.ts +2 -2
- three/src/animation/AnimationClip.d.ts +1 -1
- three/src/animation/AnimationMixer.d.ts +42 -0
- three/src/animation/AnimationUtils.d.ts +3 -8
- three/src/animation/KeyframeTrack.d.ts +19 -5
- three/src/animation/PropertyMixer.d.ts +5 -4
- three/src/audio/Audio.d.ts +224 -157
- three/src/audio/AudioAnalyser.d.ts +32 -27
- three/src/audio/AudioContext.d.ts +12 -12
- three/src/audio/AudioListener.d.ts +44 -65
- three/src/audio/PositionalAudio.d.ts +69 -62
- three/src/cameras/ArrayCamera.d.ts +21 -24
- three/src/cameras/Camera.d.ts +14 -53
- three/src/cameras/CubeCamera.d.ts +32 -28
- three/src/cameras/OrthographicCamera.d.ts +70 -100
- three/src/cameras/PerspectiveCamera.d.ts +133 -146
- three/src/cameras/StereoCamera.d.ts +24 -30
- three/src/constants.d.ts +28 -2
- three/src/core/BufferGeometry.d.ts +3 -1
- three/src/core/Clock.d.ts +3 -0
- three/src/core/Object3D.d.ts +31 -7
- three/src/extras/Controls.d.ts +3 -3
- three/src/geometries/TorusGeometry.d.ts +22 -3
- three/src/helpers/ArrowHelper.d.ts +34 -50
- three/src/helpers/AxesHelper.d.ts +22 -36
- three/src/helpers/Box3Helper.d.ts +14 -25
- three/src/helpers/BoxHelper.d.ts +28 -39
- three/src/helpers/CameraHelper.d.ts +31 -52
- three/src/helpers/DirectionalLightHelper.d.ts +32 -53
- three/src/helpers/GridHelper.d.ts +15 -29
- three/src/helpers/HemisphereLightHelper.d.ts +26 -49
- three/src/helpers/PlaneHelper.d.ts +21 -33
- three/src/helpers/PointLightHelper.d.ts +25 -50
- three/src/helpers/PolarGridHelper.d.ts +19 -32
- three/src/helpers/SkeletonHelper.d.ts +26 -50
- three/src/helpers/SpotLightHelper.d.ts +28 -55
- three/src/lights/AmbientLight.d.ts +15 -23
- three/src/lights/DirectionalLight.d.ts +49 -83
- three/src/lights/DirectionalLightShadow.d.ts +6 -61
- three/src/lights/HemisphereLight.d.ts +27 -47
- three/src/lights/Light.d.ts +22 -56
- three/src/lights/LightProbe.d.ts +31 -32
- three/src/lights/LightShadow.d.ts +107 -91
- three/src/lights/PointLight.d.ts +47 -77
- three/src/lights/PointLightShadow.d.ts +7 -11
- three/src/lights/RectAreaLight.d.ts +39 -59
- three/src/lights/SpotLight.d.ts +78 -117
- three/src/lights/SpotLightShadow.d.ts +17 -59
- three/src/lights/webgpu/IESSpotLight.d.ts +13 -1
- three/src/lights/webgpu/ProjectorLight.d.ts +9 -10
- three/src/materials/Material.d.ts +1 -0
- three/src/materials/MeshLambertMaterial.d.ts +6 -0
- three/src/materials/MeshPhongMaterial.d.ts +6 -0
- three/src/materials/ShaderMaterial.d.ts +18 -3
- three/src/materials/nodes/Line2NodeMaterial.d.ts +0 -6
- three/src/materials/nodes/LineBasicNodeMaterial.d.ts +0 -4
- three/src/materials/nodes/MeshBasicNodeMaterial.d.ts +1 -2
- three/src/materials/nodes/MeshLambertNodeMaterial.d.ts +0 -2
- three/src/materials/nodes/MeshNormalNodeMaterial.d.ts +0 -2
- three/src/materials/nodes/MeshSSSNodeMaterial.d.ts +5 -8
- three/src/materials/nodes/MeshToonNodeMaterial.d.ts +0 -4
- three/src/materials/nodes/NodeMaterial.d.ts +15 -2
- three/src/materials/nodes/SpriteNodeMaterial.d.ts +0 -3
- three/src/materials/nodes/VolumeNodeMaterial.d.ts +0 -2
- three/src/materials/nodes/manager/NodeMaterialObserver.d.ts +39 -93
- three/src/math/Color.d.ts +1 -0
- three/src/math/Vector3.d.ts +2 -2
- three/src/math/interpolants/BezierInterpolant.d.ts +7 -0
- three/src/nodes/Nodes.d.ts +55 -35
- three/src/nodes/TSL.d.ts +6 -6
- three/src/nodes/accessors/Arrays.d.ts +19 -10
- three/src/nodes/accessors/BufferAttributeNode.d.ts +108 -41
- three/src/nodes/accessors/BufferNode.d.ts +21 -7
- three/src/nodes/accessors/Camera.d.ts +10 -10
- three/src/nodes/accessors/CubeTextureNode.d.ts +1 -1
- three/src/nodes/accessors/InstanceNode.d.ts +13 -6
- three/src/nodes/accessors/Lights.d.ts +9 -6
- three/src/nodes/accessors/MaterialNode.d.ts +1 -3
- three/src/nodes/accessors/MaterialProperties.d.ts +4 -4
- three/src/nodes/accessors/MaterialReferenceNode.d.ts +1 -1
- three/src/nodes/accessors/ModelNode.d.ts +34 -17
- three/src/nodes/accessors/MorphNode.d.ts +1 -1
- three/src/nodes/accessors/Normal.d.ts +13 -15
- three/src/nodes/accessors/Object3DNode.d.ts +35 -16
- three/src/nodes/accessors/Position.d.ts +9 -7
- three/src/nodes/accessors/ReferenceNode.d.ts +16 -7
- three/src/nodes/accessors/ReflectVector.d.ts +4 -5
- three/src/nodes/accessors/RendererReferenceNode.d.ts +1 -1
- three/src/nodes/accessors/SceneProperties.d.ts +5 -0
- three/src/nodes/accessors/SkinningNode.d.ts +5 -3
- three/src/nodes/accessors/StorageBufferNode.d.ts +49 -22
- three/src/nodes/accessors/StorageTextureNode.d.ts +1 -1
- three/src/nodes/accessors/Tangent.d.ts +5 -7
- three/src/nodes/accessors/Texture3DNode.d.ts +13 -1
- three/src/nodes/accessors/TextureBicubic.d.ts +3 -2
- three/src/nodes/accessors/TextureNode.d.ts +19 -18
- three/src/nodes/accessors/UV.d.ts +1 -1
- three/src/nodes/accessors/UniformArrayNode.d.ts +10 -8
- three/src/nodes/accessors/UserDataNode.d.ts +1 -1
- three/src/nodes/accessors/VelocityNode.d.ts +3 -3
- three/src/nodes/accessors/VertexColorNode.d.ts +1 -1
- three/src/nodes/code/FunctionCallNode.d.ts +0 -1
- three/src/nodes/code/FunctionNode.d.ts +7 -3
- three/src/nodes/core/ArrayNode.d.ts +2 -3
- three/src/nodes/core/AttributeNode.d.ts +12 -6
- three/src/nodes/core/BypassNode.d.ts +2 -3
- three/src/nodes/core/ConstNode.d.ts +10 -3
- three/src/nodes/core/ContextNode.d.ts +32 -21
- three/src/nodes/core/IndexNode.d.ts +1 -1
- three/src/nodes/core/InputNode.d.ts +12 -4
- three/src/nodes/core/InspectorNode.d.ts +2 -3
- three/src/nodes/core/IsolateNode.d.ts +2 -7
- three/src/nodes/core/MRTNode.d.ts +7 -0
- three/src/nodes/core/Node.d.ts +258 -39
- three/src/nodes/core/NodeAttribute.d.ts +30 -5
- three/src/nodes/core/NodeBuilder.d.ts +5 -3
- three/src/nodes/core/NodeCache.d.ts +24 -48
- three/src/nodes/core/NodeError.d.ts +9 -0
- three/src/nodes/core/NodeParser.d.ts +2 -0
- three/src/nodes/core/NodeUniform.d.ts +33 -9
- three/src/nodes/core/NodeUtils.d.ts +1 -1
- three/src/nodes/core/NodeVar.d.ts +33 -5
- three/src/nodes/core/NodeVarying.d.ts +32 -4
- three/src/nodes/core/ParameterNode.d.ts +11 -4
- three/src/nodes/core/PropertyNode.d.ts +45 -33
- three/src/nodes/core/StackTrace.d.ts +9 -0
- three/src/nodes/core/StructType.d.ts +3 -1
- three/src/nodes/core/StructTypeNode.d.ts +19 -5
- three/src/nodes/core/TempNode.d.ts +9 -3
- three/src/nodes/core/UniformNode.d.ts +53 -15
- three/src/nodes/core/VarNode.d.ts +15 -14
- three/src/nodes/core/VaryingNode.d.ts +14 -19
- three/src/nodes/core/constants.d.ts +9 -4
- three/src/nodes/display/BlendModes.d.ts +7 -27
- three/src/nodes/display/ColorAdjustment.d.ts +8 -9
- three/src/nodes/display/ColorSpaceNode.d.ts +2 -8
- three/src/nodes/display/FrontFacingNode.d.ts +1 -1
- three/src/nodes/display/NormalMapNode.d.ts +3 -1
- three/src/nodes/display/PassNode.d.ts +16 -4
- three/src/nodes/display/RenderOutputNode.d.ts +3 -7
- three/src/nodes/display/ScreenNode.d.ts +25 -17
- three/src/nodes/display/ToneMappingNode.d.ts +3 -7
- three/src/nodes/display/ViewportDepthNode.d.ts +11 -7
- three/src/nodes/display/ViewportTextureNode.d.ts +2 -0
- three/src/nodes/fog/Fog.d.ts +5 -3
- three/src/nodes/functions/BSDF/DFGLUT.d.ts +12 -0
- three/src/nodes/functions/PhysicalLightingModel.d.ts +8 -1
- three/src/nodes/geometry/RangeNode.d.ts +51 -9
- three/src/nodes/gpgpu/AtomicFunctionNode.d.ts +2 -0
- three/src/nodes/gpgpu/BarrierNode.d.ts +2 -0
- three/src/nodes/gpgpu/ComputeNode.d.ts +2 -7
- three/src/nodes/lighting/AnalyticLightNode.d.ts +3 -1
- three/src/nodes/lighting/HemisphereLightNode.d.ts +3 -2
- three/src/nodes/lighting/LightProbeNode.d.ts +1 -1
- three/src/nodes/lighting/LightUtils.d.ts +1 -1
- three/src/nodes/lighting/LightingContextNode.d.ts +1 -1
- three/src/nodes/lighting/PointShadowNode.d.ts +11 -15
- three/src/nodes/lighting/ShadowFilterNode.d.ts +2 -0
- three/src/nodes/lighting/SpotLightNode.d.ts +0 -6
- three/src/nodes/materialx/MaterialXNodes.d.ts +11 -11
- three/src/nodes/math/BitcountNode.d.ts +23 -0
- three/src/nodes/math/ConditionalNode.d.ts +43 -22
- three/src/nodes/math/Hash.d.ts +1 -1
- three/src/nodes/math/MathNode.d.ts +603 -267
- three/src/nodes/math/MathUtils.d.ts +9 -5
- three/src/nodes/math/OperatorNode.d.ts +490 -227
- three/src/nodes/math/PackFloatNode.d.ts +19 -0
- three/src/nodes/math/TriNoise3D.d.ts +3 -3
- three/src/nodes/math/UnpackFloatNode.d.ts +18 -0
- three/src/nodes/pmrem/PMREMNode.d.ts +1 -1
- three/src/nodes/procedural/Checker.d.ts +1 -1
- three/src/nodes/tsl/TSLCore.d.ts +1683 -224
- three/src/nodes/utils/ArrayElementNode.d.ts +9 -4
- three/src/nodes/utils/DebugNode.d.ts +2 -5
- three/src/nodes/utils/Discard.d.ts +2 -3
- three/src/nodes/utils/FlipNode.d.ts +11 -0
- three/src/nodes/utils/LoopNode.d.ts +17 -13
- three/src/nodes/utils/MaxMipLevelNode.d.ts +1 -1
- three/src/nodes/utils/Oscillators.d.ts +4 -4
- three/src/nodes/utils/Packing.d.ts +3 -2
- three/src/nodes/utils/PostProcessingUtils.d.ts +6 -4
- three/src/nodes/utils/RemapNode.d.ts +33 -39
- three/src/nodes/utils/RotateNode.d.ts +17 -8
- three/src/nodes/utils/SplitNode.d.ts +1 -2
- three/src/nodes/utils/SpriteSheetUV.d.ts +7 -0
- three/src/nodes/utils/StorageArrayElementNode.d.ts +18 -9
- three/src/nodes/utils/Timer.d.ts +4 -4
- three/src/nodes/utils/TriplanarTextures.d.ts +2 -2
- three/src/nodes/utils/UVUtils.d.ts +8 -3
- three/src/objects/BatchedMesh.d.ts +6 -4
- three/src/objects/InstancedMesh.d.ts +32 -24
- three/src/objects/LOD.d.ts +1 -1
- three/src/objects/Skeleton.d.ts +4 -2
- three/src/renderers/WebGLRenderer.d.ts +25 -96
- three/src/renderers/common/Animation.d.ts +46 -9
- three/src/renderers/common/Attributes.d.ts +11 -13
- three/src/renderers/common/Backend.d.ts +0 -2
- three/src/renderers/common/Background.d.ts +17 -15
- three/src/renderers/common/BindGroup.d.ts +27 -13
- three/src/renderers/common/Binding.d.ts +21 -3
- three/src/renderers/common/Bindings.d.ts +41 -17
- three/src/renderers/common/BlendMode.d.ts +22 -0
- three/src/renderers/common/Buffer.d.ts +53 -5
- three/src/renderers/common/BufferUtils.d.ts +3 -4
- three/src/renderers/common/BundleGroup.d.ts +16 -6
- three/src/renderers/common/CanvasTarget.d.ts +76 -13
- three/src/renderers/common/ChainMap.d.ts +18 -8
- three/src/renderers/common/ClippingContext.d.ts +61 -10
- three/src/renderers/common/Color4.d.ts +10 -5
- three/src/renderers/common/ComputePipeline.d.ts +16 -2
- three/src/renderers/common/Constants.d.ts +5 -3
- three/src/renderers/common/CubeRenderTarget.d.ts +24 -7
- three/src/renderers/common/DataMap.d.ts +10 -18
- three/src/renderers/common/Geometries.d.ts +45 -19
- three/src/renderers/common/Info.d.ts +62 -9
- three/src/renderers/common/InspectorBase.d.ts +19 -7
- three/src/renderers/common/Lighting.d.ts +2 -6
- three/src/renderers/common/Pipeline.d.ts +14 -2
- three/src/renderers/common/Pipelines.d.ts +58 -60
- three/src/renderers/common/PostProcessing.d.ts +14 -17
- three/src/renderers/common/ProgrammableStage.d.ts +48 -8
- three/src/renderers/common/RenderBundle.d.ts +4 -2
- three/src/renderers/common/RenderBundles.d.ts +6 -3
- three/src/renderers/common/RenderContext.d.ts +175 -7
- three/src/renderers/common/RenderContexts.d.ts +21 -24
- three/src/renderers/common/RenderList.d.ts +77 -11
- three/src/renderers/common/RenderLists.d.ts +16 -4
- three/src/renderers/common/RenderObject.d.ts +229 -47
- three/src/renderers/common/{RenderPipeline.d.ts → RenderObjectPipeline.d.ts} +17 -5
- three/src/renderers/common/RenderObjects.d.ts +55 -22
- three/src/renderers/common/Renderer.d.ts +645 -216
- three/src/renderers/common/Textures.d.ts +24 -46
- three/src/renderers/common/TimestampQueryPool.d.ts +62 -8
- three/src/renderers/common/Uniform.d.ts +143 -58
- three/src/renderers/common/UniformBuffer.d.ts +7 -5
- three/src/renderers/common/UniformsGroup.d.ts +51 -35
- three/src/renderers/common/XRManager.d.ts +321 -83
- three/src/renderers/common/XRRenderTarget.d.ts +49 -6
- three/src/renderers/common/nodes/NodeBuilderState.d.ts +75 -15
- three/src/renderers/common/nodes/NodeLibrary.d.ts +25 -5
- three/src/renderers/common/nodes/{Nodes.d.ts → NodeManager.d.ts} +54 -73
- three/src/renderers/common/nodes/NodeUniform.d.ts +60 -70
- three/src/renderers/common/nodes/NodeUniformsGroup.d.ts +23 -4
- three/src/renderers/shaders/ShaderLib.d.ts +1 -1
- three/src/renderers/shaders/UniformsLib.d.ts +0 -3
- three/src/renderers/webgl/WebGLAttributes.d.ts +9 -7
- three/src/renderers/webgl/WebGLCapabilities.d.ts +2 -2
- three/src/renderers/webgl/WebGLEnvironments.d.ts +8 -0
- three/src/renderers/webgl/WebGLExtensions.d.ts +1 -1
- three/src/renderers/webgl/WebGLIndexedBufferRenderer.d.ts +9 -5
- three/src/renderers/webgl/WebGLLights.d.ts +19 -18
- three/src/renderers/webgl/WebGLObjects.d.ts +15 -2
- three/src/renderers/webgl/WebGLProgram.d.ts +2 -10
- three/src/renderers/webgl/WebGLPrograms.d.ts +2 -3
- three/src/renderers/webgl/WebGLRenderLists.d.ts +1 -3
- three/src/renderers/webgl/WebGLShadowMap.d.ts +0 -5
- three/src/renderers/webgl/WebGLState.d.ts +305 -28
- three/src/renderers/webgl/WebGLTextures.d.ts +10 -9
- three/src/renderers/webgl/WebGLUniforms.d.ts +0 -7
- three/src/renderers/webgpu/WebGPUBackend.d.ts +0 -1
- three/src/renderers/webgpu/nodes/BasicNodeLibrary.d.ts +2 -4
- three/src/renderers/webgpu/nodes/StandardNodeLibrary.d.ts +15 -4
- three/src/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +1 -1
- three/src/scenes/Fog.d.ts +31 -37
- three/src/scenes/FogExp2.d.ts +26 -31
- three/src/scenes/Scene.d.ts +51 -65
- three/src/textures/CompressedArrayTexture.d.ts +1 -1
- three/src/textures/CubeDepthTexture.d.ts +41 -0
- three/src/textures/CubeTexture.d.ts +4 -4
- three/src/textures/DataArrayTexture.d.ts +1 -1
- three/src/utils.d.ts +18 -1
- three/examples/jsm/materials/MeshGouraudMaterial.d.ts +0 -18
- three/examples/jsm/materials/MeshPostProcessingMaterial.d.ts +0 -13
- three/examples/jsm/shaders/GodRaysShader.d.ts +0 -44
- three/src/nodes/accessors/SceneNode.d.ts +0 -21
- three/src/nodes/code/ScriptableNode.d.ts +0 -21
- three/src/nodes/code/ScriptableValueNode.d.ts +0 -9
- three/src/nodes/display/PosterizeNode.d.ts +0 -13
- three/src/nodes/functions/BSDF/DFGApprox.d.ts +0 -10
- three/src/nodes/utils/SpriteSheetUVNode.d.ts +0 -15
- three/src/renderers/webgl/WebGLCubeMaps.d.ts +0 -8
- three/src/renderers/webgl/WebGLCubeUVMaps.d.ts +0 -9
three/src/lights/Light.d.ts
CHANGED
|
@@ -1,82 +1,48 @@
|
|
|
1
|
-
import { JSONMeta, Object3D, Object3DJSON } from "../core/Object3D.js";
|
|
1
|
+
import { JSONMeta, Object3D, Object3DEventMap, Object3DJSON } from "../core/Object3D.js";
|
|
2
2
|
import { Color, ColorRepresentation } from "../math/Color.js";
|
|
3
|
-
import { LightShadow, LightShadowJSON } from "./LightShadow.js";
|
|
4
3
|
|
|
5
4
|
export interface LightJSON extends Object3DJSON {
|
|
6
5
|
color: number;
|
|
7
6
|
intensity: number;
|
|
7
|
+
}
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
distance?: number;
|
|
12
|
-
angle?: number;
|
|
13
|
-
decay?: number;
|
|
14
|
-
penumbra?: number;
|
|
15
|
-
|
|
16
|
-
shadow?: LightShadowJSON;
|
|
17
|
-
target?: string;
|
|
9
|
+
export interface LightEventMap extends Object3DEventMap {
|
|
10
|
+
dispose: {};
|
|
18
11
|
}
|
|
19
12
|
|
|
20
13
|
/**
|
|
21
|
-
* Abstract base class for lights
|
|
22
|
-
*
|
|
14
|
+
* Abstract base class for lights - all other light types inherit the
|
|
15
|
+
* properties and methods described here.
|
|
23
16
|
*/
|
|
24
|
-
export abstract class Light
|
|
17
|
+
export abstract class Light extends Object3D<LightEventMap> {
|
|
25
18
|
/**
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* @param
|
|
30
|
-
* @param intensity Numeric value of the light's strength/intensity. Expects a `Float`. Default `1`.
|
|
19
|
+
* Constructs a new light.
|
|
20
|
+
*
|
|
21
|
+
* @param {(number|Color|string)} [color=0xffffff] - The light's color.
|
|
22
|
+
* @param {number} [intensity=1] - The light's strength/intensity.
|
|
31
23
|
*/
|
|
32
24
|
constructor(color?: ColorRepresentation, intensity?: number);
|
|
33
|
-
|
|
34
25
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* @
|
|
26
|
+
* This flag can be used for type testing.
|
|
27
|
+
*
|
|
28
|
+
* @default true
|
|
38
29
|
*/
|
|
39
|
-
readonly isLight:
|
|
40
|
-
|
|
30
|
+
readonly isLight: boolean;
|
|
41
31
|
/**
|
|
42
|
-
*
|
|
43
|
-
* @remarks Sub-classes will update this value.
|
|
44
|
-
* @defaultValue `Light`
|
|
45
|
-
*/
|
|
46
|
-
override readonly type: string | "Light";
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Color of the light. \
|
|
50
|
-
* @defaultValue `new THREE.Color(0xffffff)` _(white)_.
|
|
32
|
+
* The light's color.
|
|
51
33
|
*/
|
|
52
34
|
color: Color;
|
|
53
|
-
|
|
54
35
|
/**
|
|
55
|
-
* The light's intensity
|
|
56
|
-
*
|
|
57
|
-
* @
|
|
36
|
+
* The light's intensity.
|
|
37
|
+
*
|
|
38
|
+
* @default 1
|
|
58
39
|
*/
|
|
59
40
|
intensity: number;
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* A {@link THREE.LightShadow | LightShadow} used to calculate shadows for this light.
|
|
63
|
-
* @remarks Available only on Light's that support shadows.
|
|
64
|
-
*/
|
|
65
|
-
shadow: TShadowSupport;
|
|
66
|
-
|
|
67
41
|
/**
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
* @param recursive
|
|
71
|
-
*/
|
|
72
|
-
copy(source: this, recursive?: boolean): this;
|
|
73
|
-
|
|
74
|
-
/**
|
|
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.
|
|
42
|
+
* Frees the GPU-related resources allocated by this instance. Call this
|
|
43
|
+
* method whenever this instance is no longer used in your app.
|
|
78
44
|
*/
|
|
79
45
|
dispose(): void;
|
|
80
|
-
|
|
46
|
+
copy(source: Light, recursive?: boolean): this;
|
|
81
47
|
toJSON(meta?: JSONMeta): LightJSON;
|
|
82
48
|
}
|
three/src/lights/LightProbe.d.ts
CHANGED
|
@@ -1,47 +1,46 @@
|
|
|
1
|
+
import { JSONMeta } from "../core/Object3D.js";
|
|
1
2
|
import { SphericalHarmonics3 } from "../math/SphericalHarmonics3.js";
|
|
2
|
-
import { Light } from "./Light.js";
|
|
3
|
+
import { Light, LightJSON } from "./Light.js";
|
|
4
|
+
|
|
5
|
+
export interface LightProbeJSON extends LightJSON {
|
|
6
|
+
sh: number[];
|
|
7
|
+
}
|
|
3
8
|
|
|
4
9
|
/**
|
|
5
|
-
* Light probes are an alternative way of adding light to a 3D scene.
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* Light probes are usually created from (radiance) environment maps
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* The current probe implementation in three.js supports so-called diffuse
|
|
18
|
-
* This type of light probe is functionally equivalent to an
|
|
19
|
-
*
|
|
20
|
-
* @see Example: {@link https://threejs.org/examples/#webgl_lightprobe_cubecamera | WebGL / light probe / cube camera }
|
|
21
|
-
* @see {@link https://threejs.org/docs/index.html#api/en/lights/LightProbe | Official Documentation}
|
|
22
|
-
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/lights/LightProbe.js | Source}
|
|
10
|
+
* Light probes are an alternative way of adding light to a 3D scene. Unlike
|
|
11
|
+
* classical light sources (e.g. directional, point or spot lights), light
|
|
12
|
+
* probes do not emit light. Instead they store information about light
|
|
13
|
+
* passing through 3D space. During rendering, the light that hits a 3D
|
|
14
|
+
* object is approximated by using the data from the light probe.
|
|
15
|
+
*
|
|
16
|
+
* Light probes are usually created from (radiance) environment maps. The
|
|
17
|
+
* class {@link LightProbeGenerator} can be used to create light probes from
|
|
18
|
+
* cube textures or render targets. However, light estimation data could also
|
|
19
|
+
* be provided in other forms e.g. by WebXR. This enables the rendering of
|
|
20
|
+
* augmented reality content that reacts to real world lighting.
|
|
21
|
+
*
|
|
22
|
+
* The current probe implementation in three.js supports so-called diffuse
|
|
23
|
+
* light probes. This type of light probe is functionally equivalent to an
|
|
24
|
+
* irradiance environment map.
|
|
23
25
|
*/
|
|
24
26
|
export class LightProbe extends Light {
|
|
25
27
|
/**
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
* @param
|
|
28
|
+
* Constructs a new light probe.
|
|
29
|
+
*
|
|
30
|
+
* @param {SphericalHarmonics3} sh - The spherical harmonics which represents encoded lighting information.
|
|
31
|
+
* @param {number} [intensity=1] - The light's strength/intensity.
|
|
29
32
|
*/
|
|
30
33
|
constructor(sh?: SphericalHarmonics3, intensity?: number);
|
|
31
|
-
|
|
32
34
|
/**
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
* @
|
|
35
|
+
* This flag can be used for type testing.
|
|
36
|
+
*
|
|
37
|
+
* @default true
|
|
36
38
|
*/
|
|
37
|
-
readonly isLightProbe:
|
|
38
|
-
|
|
39
|
+
readonly isLightProbe: boolean;
|
|
39
40
|
/**
|
|
40
41
|
* A light probe uses spherical harmonics to encode lighting information.
|
|
41
|
-
* @defaultValue `new THREE.SphericalHarmonics3()`
|
|
42
42
|
*/
|
|
43
43
|
sh: SphericalHarmonics3;
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
fromJSON(json: {}): LightProbe;
|
|
44
|
+
copy(source: LightProbe): this;
|
|
45
|
+
toJSON(meta?: JSONMeta): LightProbeJSON;
|
|
47
46
|
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Camera } from "../cameras/Camera.js";
|
|
2
2
|
import { TextureDataType } from "../constants.js";
|
|
3
3
|
import { Object3DJSONObject } from "../core/Object3D.js";
|
|
4
|
+
import { RenderTarget } from "../core/RenderTarget.js";
|
|
4
5
|
import { Frustum } from "../math/Frustum.js";
|
|
5
6
|
import { Matrix4 } from "../math/Matrix4.js";
|
|
6
7
|
import { Vector2, Vector2Tuple } from "../math/Vector2.js";
|
|
7
8
|
import { Vector4 } from "../math/Vector4.js";
|
|
8
|
-
import
|
|
9
|
+
import Node from "../nodes/core/Node.js";
|
|
9
10
|
import { Light } from "./Light.js";
|
|
10
11
|
|
|
11
12
|
export interface LightShadowJSON {
|
|
@@ -19,159 +20,174 @@ export interface LightShadowJSON {
|
|
|
19
20
|
}
|
|
20
21
|
|
|
21
22
|
/**
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/lights/LightShadow.js | Source}
|
|
23
|
+
* Abstract base class for light shadow classes. These classes
|
|
24
|
+
* represent the shadow configuration for different light types.
|
|
25
25
|
*/
|
|
26
|
-
export class LightShadow<TCamera extends Camera = Camera> {
|
|
26
|
+
export abstract class LightShadow<TCamera extends Camera = Camera> {
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
29
|
-
*
|
|
28
|
+
* Constructs a new light shadow.
|
|
29
|
+
*
|
|
30
|
+
* @param {Camera} camera - The light's view of the world.
|
|
30
31
|
*/
|
|
31
32
|
constructor(camera: TCamera);
|
|
32
|
-
|
|
33
33
|
/**
|
|
34
34
|
* The light's view of the world.
|
|
35
|
-
* @remark This is used to generate a depth map of the scene; objects behind other objects from the light's perspective will be in shadow.
|
|
36
35
|
*/
|
|
37
36
|
camera: TCamera;
|
|
38
|
-
|
|
39
37
|
/**
|
|
40
|
-
* The intensity of the shadow. The default is `1`.
|
|
38
|
+
* The intensity of the shadow. The default is `1`.
|
|
39
|
+
* Valid values are in the range `[0, 1]`.
|
|
40
|
+
*
|
|
41
|
+
* @default 1
|
|
41
42
|
*/
|
|
42
43
|
intensity: number;
|
|
43
|
-
|
|
44
44
|
/**
|
|
45
|
-
* Shadow map bias, how much to add or subtract from the normalized depth
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
45
|
+
* Shadow map bias, how much to add or subtract from the normalized depth
|
|
46
|
+
* when deciding whether a surface is in shadow.
|
|
47
|
+
*
|
|
48
|
+
* The default is `0`. Very tiny adjustments here (in the order of `0.0001`)
|
|
49
|
+
* may help reduce artifacts in shadows.
|
|
50
|
+
*
|
|
51
|
+
* @default 0
|
|
49
52
|
*/
|
|
50
53
|
bias: number;
|
|
51
|
-
|
|
52
54
|
/**
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
* @
|
|
55
|
+
* A node version of `bias`. Only supported with `WebGPURenderer`.
|
|
56
|
+
*
|
|
57
|
+
* If a bias node is defined, `bias` has no effect.
|
|
58
|
+
*
|
|
59
|
+
* @default null
|
|
60
|
+
*/
|
|
61
|
+
biasNode: Node<"float"> | null;
|
|
62
|
+
/**
|
|
63
|
+
* Defines how much the position used to query the shadow map is offset along
|
|
64
|
+
* the object normal. The default is `0`. Increasing this value can be used to
|
|
65
|
+
* reduce shadow acne especially in large scenes where light shines onto
|
|
66
|
+
* geometry at a shallow angle. The cost is that shadows may appear distorted.
|
|
67
|
+
*
|
|
68
|
+
* @default 0
|
|
58
69
|
*/
|
|
59
70
|
normalBias: number;
|
|
60
|
-
|
|
61
71
|
/**
|
|
62
|
-
* Setting this to values greater than 1 will blur the edges of the shadow.
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
* @
|
|
70
|
-
* @defaultValue `1`
|
|
72
|
+
* Setting this to values greater than 1 will blur the edges of the shadow.
|
|
73
|
+
* High values will cause unwanted banding effects in the shadows - a greater
|
|
74
|
+
* map size will allow for a higher value to be used here before these effects
|
|
75
|
+
* become visible.
|
|
76
|
+
*
|
|
77
|
+
* The property has no effect when the shadow map type is `BasicShadowMap`.
|
|
78
|
+
*
|
|
79
|
+
* @default 1
|
|
71
80
|
*/
|
|
72
81
|
radius: number;
|
|
73
|
-
|
|
74
82
|
/**
|
|
75
83
|
* The amount of samples to use when blurring a VSM shadow map.
|
|
76
|
-
*
|
|
77
|
-
* @
|
|
84
|
+
*
|
|
85
|
+
* @default 8
|
|
78
86
|
*/
|
|
79
87
|
blurSamples: number;
|
|
80
|
-
|
|
81
88
|
/**
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
*
|
|
86
|
-
* @defaultValue `new THREE.Vector2(512, 512)`
|
|
89
|
+
* Defines the width and height of the shadow map. Higher values give better quality
|
|
90
|
+
* shadows at the cost of computation time. Values must be powers of two.
|
|
91
|
+
*
|
|
92
|
+
* @default (512,512)
|
|
87
93
|
*/
|
|
88
94
|
mapSize: Vector2;
|
|
89
|
-
|
|
90
95
|
/**
|
|
91
96
|
* The type of shadow texture. The default is `UnsignedByteType`.
|
|
92
97
|
*
|
|
93
98
|
* @default UnsignedByteType
|
|
94
99
|
*/
|
|
95
100
|
mapType: TextureDataType;
|
|
96
|
-
|
|
97
101
|
/**
|
|
98
|
-
* The depth map generated using the internal camera; a location beyond a
|
|
99
|
-
*
|
|
102
|
+
* The depth map generated using the internal camera; a location beyond a
|
|
103
|
+
* pixel's depth is in shadow. Computed internally during rendering.
|
|
104
|
+
*
|
|
105
|
+
* @default null
|
|
100
106
|
*/
|
|
101
|
-
map:
|
|
102
|
-
|
|
107
|
+
map: RenderTarget | null;
|
|
103
108
|
/**
|
|
104
|
-
* The distribution map generated using the internal camera; an occlusion is
|
|
105
|
-
*
|
|
109
|
+
* The distribution map generated using the internal camera; an occlusion is
|
|
110
|
+
* calculated based on the distribution of depths. Computed internally during
|
|
111
|
+
* rendering.
|
|
112
|
+
*
|
|
113
|
+
* @default null
|
|
106
114
|
*/
|
|
107
|
-
mapPass:
|
|
108
|
-
|
|
115
|
+
mapPass: RenderTarget | null;
|
|
109
116
|
/**
|
|
110
117
|
* Model to shadow camera space, to compute location and depth in shadow map.
|
|
111
|
-
*
|
|
112
|
-
* @remarks This is computed internally during rendering.
|
|
113
|
-
* @defaultValue new THREE.Matrix4()
|
|
118
|
+
* This is computed internally during rendering.
|
|
114
119
|
*/
|
|
115
120
|
matrix: Matrix4;
|
|
116
|
-
|
|
117
121
|
/**
|
|
118
|
-
* Enables automatic updates of the light's shadow. If you do not require dynamic
|
|
119
|
-
*
|
|
122
|
+
* Enables automatic updates of the light's shadow. If you do not require dynamic
|
|
123
|
+
* lighting / shadows, you may set this to `false`.
|
|
124
|
+
*
|
|
125
|
+
* @default true
|
|
120
126
|
*/
|
|
121
127
|
autoUpdate: boolean;
|
|
122
|
-
|
|
123
128
|
/**
|
|
124
129
|
* When set to `true`, shadow maps will be updated in the next `render` call.
|
|
125
|
-
* If you have set {@link autoUpdate} to `false`, you will need to
|
|
126
|
-
*
|
|
130
|
+
* If you have set {@link LightShadow#autoUpdate} to `false`, you will need to
|
|
131
|
+
* set this property to `true` and then make a render call to update the light's shadow.
|
|
132
|
+
*
|
|
133
|
+
* @default false
|
|
127
134
|
*/
|
|
128
135
|
needsUpdate: boolean;
|
|
129
|
-
|
|
130
136
|
/**
|
|
131
|
-
* Used internally by the renderer to get the number of viewports that need
|
|
137
|
+
* Used internally by the renderer to get the number of viewports that need
|
|
138
|
+
* to be rendered for this shadow.
|
|
139
|
+
*
|
|
140
|
+
* @return {number} The viewport count.
|
|
132
141
|
*/
|
|
133
142
|
getViewportCount(): number;
|
|
134
|
-
|
|
135
143
|
/**
|
|
136
|
-
*
|
|
137
|
-
*
|
|
138
|
-
|
|
139
|
-
copy(source: LightShadow): this;
|
|
140
|
-
|
|
141
|
-
/**
|
|
142
|
-
* Creates a new {@link LightShadow} with the same properties as this one.
|
|
143
|
-
*/
|
|
144
|
-
clone(recursive?: boolean): this;
|
|
145
|
-
|
|
146
|
-
/**
|
|
147
|
-
* Serialize this LightShadow.
|
|
148
|
-
*/
|
|
149
|
-
toJSON(): LightShadowJSON;
|
|
150
|
-
|
|
151
|
-
/**
|
|
152
|
-
* Gets the shadow cameras frustum
|
|
153
|
-
* @remarks
|
|
154
|
-
* Used internally by the renderer to cull objects.
|
|
144
|
+
* Gets the shadow cameras frustum. Used internally by the renderer to cull objects.
|
|
145
|
+
*
|
|
146
|
+
* @return {Frustum} The shadow camera frustum.
|
|
155
147
|
*/
|
|
156
148
|
getFrustum(): Frustum;
|
|
157
|
-
|
|
158
149
|
/**
|
|
159
150
|
* Update the matrices for the camera and shadow, used internally by the renderer.
|
|
160
|
-
*
|
|
151
|
+
*
|
|
152
|
+
* @param {Light} light - The light for which the shadow is being rendered.
|
|
161
153
|
*/
|
|
162
154
|
updateMatrices(light: Light): void;
|
|
163
|
-
|
|
155
|
+
/**
|
|
156
|
+
* Returns a viewport definition for the given viewport index.
|
|
157
|
+
*
|
|
158
|
+
* @param {number} viewportIndex - The viewport index.
|
|
159
|
+
* @return {Vector4} The viewport.
|
|
160
|
+
*/
|
|
164
161
|
getViewport(viewportIndex: number): Vector4;
|
|
165
|
-
|
|
166
162
|
/**
|
|
167
|
-
*
|
|
163
|
+
* Returns the frame extends.
|
|
164
|
+
*
|
|
165
|
+
* @return {Vector2} The frame extends.
|
|
168
166
|
*/
|
|
169
167
|
getFrameExtents(): Vector2;
|
|
170
|
-
|
|
171
168
|
/**
|
|
172
|
-
* Frees the GPU-related resources allocated by this instance
|
|
173
|
-
*
|
|
174
|
-
* Call this method whenever this instance is no longer used in your app.
|
|
169
|
+
* Frees the GPU-related resources allocated by this instance. Call this
|
|
170
|
+
* method whenever this instance is no longer used in your app.
|
|
175
171
|
*/
|
|
176
172
|
dispose(): void;
|
|
173
|
+
/**
|
|
174
|
+
* Copies the values of the given light shadow instance to this instance.
|
|
175
|
+
*
|
|
176
|
+
* @param {LightShadow} source - The light shadow to copy.
|
|
177
|
+
* @return {LightShadow} A reference to this light shadow instance.
|
|
178
|
+
*/
|
|
179
|
+
copy(source: LightShadow): this;
|
|
180
|
+
/**
|
|
181
|
+
* Returns a new light shadow instance with copied values from this instance.
|
|
182
|
+
*
|
|
183
|
+
* @return {LightShadow} A clone of this instance.
|
|
184
|
+
*/
|
|
185
|
+
clone(): this;
|
|
186
|
+
/**
|
|
187
|
+
* Serializes the light shadow into JSON.
|
|
188
|
+
*
|
|
189
|
+
* @return {Object} A JSON object representing the serialized light shadow.
|
|
190
|
+
* @see {@link ObjectLoader#parse}
|
|
191
|
+
*/
|
|
192
|
+
toJSON(): LightShadowJSON;
|
|
177
193
|
}
|
three/src/lights/PointLight.d.ts
CHANGED
|
@@ -1,102 +1,72 @@
|
|
|
1
|
+
import { JSONMeta } from "../core/Object3D.js";
|
|
1
2
|
import { ColorRepresentation } from "../math/Color.js";
|
|
2
|
-
import { Light } from "./Light.js";
|
|
3
|
+
import { Light, LightJSON } from "./Light.js";
|
|
4
|
+
import { LightShadowJSON } from "./LightShadow.js";
|
|
3
5
|
import { PointLightShadow } from "./PointLightShadow.js";
|
|
4
6
|
|
|
7
|
+
export interface PointLightJSON extends LightJSON {
|
|
8
|
+
distance: number;
|
|
9
|
+
decay: number;
|
|
10
|
+
|
|
11
|
+
shadow: LightShadowJSON;
|
|
12
|
+
}
|
|
13
|
+
|
|
5
14
|
/**
|
|
6
|
-
* A light that gets emitted from a single point in all directions
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
15
|
+
* A light that gets emitted from a single point in all directions. A common
|
|
16
|
+
* use case for this is to replicate the light emitted from a bare
|
|
17
|
+
* lightbulb.
|
|
18
|
+
*
|
|
19
|
+
* This light can cast shadows - see the {@link PointLightShadow} for details.
|
|
20
|
+
*
|
|
21
|
+
* ```js
|
|
22
|
+
* const light = new THREE.PointLight( 0xff0000, 1, 100 );
|
|
23
|
+
* light.position.set( 50, 50, 50 );
|
|
24
|
+
* scene.add( light );
|
|
14
25
|
* ```
|
|
15
|
-
* @see Example: {@link https://threejs.org/examples/#webgl_lights_pointlights | lights / pointlights }
|
|
16
|
-
* @see Example: {@link https://threejs.org/examples/#webgl_effects_anaglyph | effects / anaglyph }
|
|
17
|
-
* @see Example: {@link https://threejs.org/examples/#webgl_geometry_text | geometry / text }
|
|
18
|
-
* @see Example: {@link https://threejs.org/examples/#webgl_lensflares | lensflares }
|
|
19
|
-
* @see {@link https://threejs.org/docs/index.html#api/en/lights/PointLight | Official Documentation}
|
|
20
|
-
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/lights/PointLight.js | Source}
|
|
21
26
|
*/
|
|
22
|
-
export class PointLight extends Light
|
|
27
|
+
export class PointLight extends Light {
|
|
23
28
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
* @param
|
|
27
|
-
* @param
|
|
28
|
-
* @param
|
|
29
|
+
* Constructs a new point light.
|
|
30
|
+
*
|
|
31
|
+
* @param {(number|Color|string)} [color=0xffffff] - The light's color.
|
|
32
|
+
* @param {number} [intensity=1] - The light's strength/intensity measured in candela (cd).
|
|
33
|
+
* @param {number} [distance=0] - Maximum range of the light. `0` means no limit.
|
|
34
|
+
* @param {number} [decay=2] - The amount the light dims along the distance of the light.
|
|
29
35
|
*/
|
|
30
36
|
constructor(color?: ColorRepresentation, intensity?: number, distance?: number, decay?: number);
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Read-only flag to check if a given object is of type {@link PointLight}.
|
|
34
|
-
* @remarks This is a _constant_ value
|
|
35
|
-
* @defaultValue `true`
|
|
36
|
-
*/
|
|
37
|
-
readonly isPointLight: true;
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* @default 'PointLight'
|
|
41
|
-
*/
|
|
42
|
-
type: string;
|
|
43
|
-
|
|
44
37
|
/**
|
|
45
|
-
*
|
|
38
|
+
* This flag can be used for type testing.
|
|
46
39
|
*
|
|
47
|
-
*
|
|
48
|
-
* @remarks Changing the intensity will also change the light's power.
|
|
49
|
-
* @remarks Expects a `Float`
|
|
50
|
-
* @defaultValue `1`
|
|
40
|
+
* @default true
|
|
51
41
|
*/
|
|
52
|
-
|
|
53
|
-
|
|
42
|
+
readonly isPointLight: boolean;
|
|
54
43
|
/**
|
|
55
|
-
* When
|
|
56
|
-
*
|
|
44
|
+
* When distance is zero, light will attenuate according to inverse-square
|
|
45
|
+
* law to infinite distance. When distance is non-zero, light will attenuate
|
|
46
|
+
* according to inverse-square law until near the distance cutoff, where it
|
|
47
|
+
* will then attenuate quickly and smoothly to 0. Inherently, cutoffs are not
|
|
48
|
+
* physically correct.
|
|
57
49
|
*
|
|
58
|
-
*
|
|
59
|
-
* light will attenuate according to inverse-square law to infinite distance.
|
|
60
|
-
* When distance is non-zero, light will attenuate according to inverse-square law until near the distance cutoff,
|
|
61
|
-
* where it will then attenuate quickly and smoothly to 0. Inherently, cutoffs are not physically correct.
|
|
62
|
-
*
|
|
63
|
-
* @defaultValue `0.0`
|
|
64
|
-
* @remarks Expects a `Float`
|
|
50
|
+
* @default 0
|
|
65
51
|
*/
|
|
66
52
|
distance: number;
|
|
67
|
-
|
|
68
53
|
/**
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
* @
|
|
73
|
-
*/
|
|
74
|
-
castShadow: boolean;
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* The amount the light dims along the distance of the light.
|
|
78
|
-
* In context of physically-correct rendering the default value should not be changed.
|
|
79
|
-
* @remarks Expects a `Float`
|
|
80
|
-
* @defaultValue `2`
|
|
54
|
+
* The amount the light dims along the distance of the light. In context of
|
|
55
|
+
* physically-correct rendering the default value should not be changed.
|
|
56
|
+
*
|
|
57
|
+
* @default 2
|
|
81
58
|
*/
|
|
82
59
|
decay: number;
|
|
83
|
-
|
|
84
60
|
/**
|
|
85
|
-
*
|
|
86
|
-
* The lightShadow's {@link LightShadow.camera | camera} is set to
|
|
87
|
-
* a {@link THREE.PerspectiveCamera | PerspectiveCamera} with {@link PerspectiveCamera.fov | fov} of 90,
|
|
88
|
-
* {@link PerspectiveCamera.aspect | aspect} of 1,
|
|
89
|
-
* {@link PerspectiveCamera.near | near} clipping plane at 0.5
|
|
90
|
-
* and {@link PerspectiveCamera.far | far} clipping plane at 500.
|
|
91
|
-
* @defaultValue new THREE.PointLightShadow()
|
|
61
|
+
* This property holds the light's shadow configuration.
|
|
92
62
|
*/
|
|
93
63
|
shadow: PointLightShadow;
|
|
94
|
-
|
|
64
|
+
set power(power: number);
|
|
95
65
|
/**
|
|
96
|
-
* The light's power.
|
|
97
|
-
*
|
|
98
|
-
* @remarks Changing the power will also change the light's intensity.
|
|
99
|
-
* @remarks Expects a `Float`
|
|
66
|
+
* The light's power. Power is the luminous power of the light measured in lumens (lm).
|
|
67
|
+
* Changing the power will also change the light's intensity.
|
|
100
68
|
*/
|
|
101
|
-
power: number;
|
|
69
|
+
get power(): number;
|
|
70
|
+
copy(source: PointLight, recursive?: boolean): this;
|
|
71
|
+
toJSON(meta?: JSONMeta): PointLightJSON;
|
|
102
72
|
}
|
|
@@ -1,22 +1,18 @@
|
|
|
1
1
|
import { PerspectiveCamera } from "../cameras/PerspectiveCamera.js";
|
|
2
|
-
import { Light } from "./Light.js";
|
|
3
2
|
import { LightShadow } from "./LightShadow.js";
|
|
4
3
|
|
|
5
4
|
/**
|
|
6
|
-
*
|
|
7
|
-
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/lights/PointLightShadow.js | Source}
|
|
5
|
+
* Represents the shadow configuration of point lights.
|
|
8
6
|
*/
|
|
9
7
|
export class PointLightShadow extends LightShadow<PerspectiveCamera> {
|
|
10
8
|
/**
|
|
11
|
-
*
|
|
12
|
-
* @remarks This is a _constant_ value
|
|
13
|
-
* @defaultValue `true`
|
|
9
|
+
* Constructs a new point light shadow.
|
|
14
10
|
*/
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
constructor();
|
|
17
12
|
/**
|
|
18
|
-
*
|
|
19
|
-
*
|
|
13
|
+
* This flag can be used for type testing.
|
|
14
|
+
*
|
|
15
|
+
* @default true
|
|
20
16
|
*/
|
|
21
|
-
|
|
17
|
+
readonly isPointLightShadow: boolean;
|
|
22
18
|
}
|