three-stdlib 2.15.0 → 2.15.2
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.
- package/animation/AnimationClipCreator.js +32 -52
- package/animation/AnimationClipCreator.mjs +57 -0
- package/animation/CCDIKSolver.js +66 -161
- package/animation/CCDIKSolver.mjs +234 -0
- package/animation/MMDAnimationHelper.js +150 -341
- package/animation/MMDAnimationHelper.mjs +514 -0
- package/animation/MMDPhysics.js +154 -361
- package/animation/MMDPhysics.mjs +769 -0
- package/cameras/CinematicCamera.js +67 -77
- package/cameras/CinematicCamera.mjs +129 -0
- package/controls/ArcballControls.js +544 -1449
- package/controls/ArcballControls.mjs +1737 -0
- package/controls/DeviceOrientationControls.js +52 -97
- package/controls/DeviceOrientationControls.mjs +74 -0
- package/controls/DragControls.js +85 -187
- package/controls/DragControls.mjs +172 -0
- package/controls/FirstPersonControls.js +123 -193
- package/controls/FirstPersonControls.mjs +220 -0
- package/controls/FlyControls.js +82 -152
- package/controls/FlyControls.mjs +239 -0
- package/controls/OrbitControls.js +232 -481
- package/controls/OrbitControls.mjs +731 -0
- package/controls/PointerLockControls.js +63 -99
- package/controls/PointerLockControls.mjs +88 -0
- package/controls/TrackballControls.js +211 -383
- package/controls/TrackballControls.mjs +481 -0
- package/controls/TransformControls.js +575 -782
- package/controls/TransformControls.mjs +1068 -0
- package/controls/experimental/CameraControls.js +329 -609
- package/controls/experimental/CameraControls.mjs +673 -0
- package/csm/CSM.js +47 -108
- package/csm/CSM.mjs +244 -0
- package/csm/CSMFrustum.js +14 -29
- package/csm/CSMFrustum.mjs +75 -0
- package/csm/CSMHelper.js +20 -34
- package/csm/CSMHelper.mjs +114 -0
- package/csm/CSMShader.js +7 -11
- package/csm/CSMShader.mjs +251 -0
- package/curves/CurveExtras.js +73 -115
- package/curves/CurveExtras.mjs +224 -0
- package/curves/NURBSCurve.js +15 -43
- package/curves/NURBSCurve.mjs +35 -0
- package/curves/NURBSSurface.js +11 -27
- package/curves/NURBSSurface.mjs +28 -0
- package/curves/NURBSUtils.js +54 -203
- package/curves/NURBSUtils.mjs +226 -0
- package/deprecated/Geometry.js +191 -486
- package/deprecated/Geometry.mjs +966 -0
- package/effects/AnaglyphEffect.js +95 -60
- package/effects/AnaglyphEffect.mjs +120 -0
- package/effects/AsciiEffect.js +80 -110
- package/effects/AsciiEffect.mjs +173 -0
- package/effects/OutlineEffect.js +121 -204
- package/effects/OutlineEffect.mjs +295 -0
- package/effects/ParallaxBarrierEffect.js +39 -38
- package/effects/ParallaxBarrierEffect.mjs +64 -0
- package/effects/PeppersGhostEffect.js +19 -68
- package/effects/PeppersGhostEffect.mjs +85 -0
- package/effects/StereoEffect.js +12 -16
- package/effects/StereoEffect.mjs +32 -0
- package/environments/RoomEnvironment.js +52 -47
- package/environments/RoomEnvironment.mjs +78 -0
- package/exporters/ColladaExporter.js +115 -241
- package/exporters/ColladaExporter.mjs +299 -0
- package/exporters/DRACOExporter.js +67 -121
- package/exporters/DRACOExporter.mjs +132 -0
- package/exporters/GLTFExporter.js +463 -1014
- package/exporters/GLTFExporter.mjs +1381 -0
- package/exporters/MMDExporter.js +44 -102
- package/exporters/MMDExporter.mjs +102 -0
- package/exporters/OBJExporter.js +78 -140
- package/exporters/OBJExporter.mjs +166 -0
- package/exporters/PLYExporter.js +93 -154
- package/exporters/PLYExporter.mjs +278 -0
- package/exporters/STLExporter.js +30 -81
- package/exporters/STLExporter.mjs +129 -0
- package/exporters/USDZExporter.js +84 -144
- package/exporters/USDZExporter.mjs +328 -0
- package/geometries/BoxLineGeometry.js +7 -14
- package/geometries/BoxLineGeometry.mjs +45 -0
- package/geometries/ConvexGeometry.js +15 -24
- package/geometries/ConvexGeometry.mjs +29 -0
- package/geometries/DecalGeometry.js +108 -162
- package/geometries/DecalGeometry.mjs +184 -0
- package/geometries/LightningStrike.js +101 -294
- package/geometries/LightningStrike.mjs +547 -0
- package/geometries/ParametricGeometries.js +26 -76
- package/geometries/ParametricGeometries.mjs +129 -0
- package/geometries/ParametricGeometry.js +24 -48
- package/geometries/ParametricGeometry.mjs +63 -0
- package/geometries/RoundedBoxGeometry.js +33 -64
- package/geometries/RoundedBoxGeometry.mjs +91 -0
- package/geometries/TeapotGeometry.js +1434 -174
- package/geometries/TeapotGeometry.mjs +1557 -0
- package/geometries/TextGeometry.js +9 -17
- package/geometries/TextGeometry.mjs +23 -0
- package/helpers/LightProbeHelper.js +53 -21
- package/helpers/LightProbeHelper.mjs +72 -0
- package/helpers/PositionalAudioHelper.js +23 -30
- package/helpers/PositionalAudioHelper.mjs +68 -0
- package/helpers/RectAreaLightHelper.js +17 -33
- package/helpers/RectAreaLightHelper.mjs +44 -0
- package/helpers/VertexNormalsHelper.js +20 -41
- package/helpers/VertexNormalsHelper.mjs +54 -0
- package/helpers/VertexTangentsHelper.js +18 -36
- package/helpers/VertexTangentsHelper.mjs +45 -0
- package/index.d.ts +54 -0
- package/index.js +968 -333
- package/index.mjs +968 -0
- package/interactive/SelectionBox.js +31 -46
- package/interactive/SelectionBox.mjs +137 -0
- package/interactive/SelectionHelper.js +16 -21
- package/interactive/SelectionHelper.mjs +54 -0
- package/libs/MeshoptDecoder.js +147 -58
- package/libs/MeshoptDecoder.mjs +210 -0
- package/libs/MotionControllers.js +66 -208
- package/libs/MotionControllers.mjs +261 -0
- package/lights/LightProbeGenerator.js +40 -96
- package/lights/LightProbeGenerator.mjs +145 -0
- package/lights/RectAreaLightUniformsLib.js +32842 -9
- package/lights/RectAreaLightUniformsLib.mjs +32842 -0
- package/lines/Line2.js +9 -12
- package/lines/Line2.mjs +13 -0
- package/lines/LineGeometry.js +7 -19
- package/lines/LineGeometry.mjs +44 -0
- package/lines/LineMaterial.js +51 -89
- package/lines/LineMaterial.mjs +539 -0
- package/lines/LineSegments2.js +56 -165
- package/lines/LineSegments2.mjs +202 -0
- package/lines/LineSegmentsGeometry.js +29 -71
- package/lines/LineSegmentsGeometry.mjs +124 -0
- package/lines/Wireframe.js +15 -29
- package/lines/Wireframe.mjs +31 -0
- package/lines/WireframeGeometry2.js +8 -9
- package/lines/WireframeGeometry2.mjs +13 -0
- package/loaders/3DMLoader.js +234 -469
- package/loaders/3DMLoader.mjs +802 -0
- package/loaders/3MFLoader.js +340 -555
- package/loaders/3MFLoader.mjs +837 -0
- package/loaders/AMFLoader.js +114 -219
- package/loaders/AMFLoader.mjs +284 -0
- package/loaders/AssimpLoader.js +328 -725
- package/loaders/AssimpLoader.mjs +1396 -0
- package/loaders/BVHLoader.js +94 -200
- package/loaders/BVHLoader.mjs +207 -0
- package/loaders/BasisTextureLoader.js +229 -357
- package/loaders/BasisTextureLoader.mjs +474 -0
- package/loaders/ColladaLoader.js +932 -1522
- package/loaders/ColladaLoader.mjs +2403 -0
- package/loaders/DDSLoader.js +42 -108
- package/loaders/DDSLoader.mjs +148 -0
- package/loaders/DRACOLoader.js +103 -210
- package/loaders/DRACOLoader.mjs +340 -0
- package/loaders/EXRLoader.js +461 -809
- package/loaders/EXRLoader.mjs +1351 -0
- package/loaders/FBXLoader.js +842 -1397
- package/loaders/FBXLoader.mjs +2362 -0
- package/loaders/FontLoader.js +33 -66
- package/loaders/FontLoader.mjs +111 -0
- package/loaders/GCodeLoader.js +63 -111
- package/loaders/GCodeLoader.mjs +141 -0
- package/loaders/GLTFLoader.js +771 -1484
- package/loaders/GLTFLoader.mjs +2316 -0
- package/loaders/HDRCubeTextureLoader.js +45 -50
- package/loaders/HDRCubeTextureLoader.mjs +77 -0
- package/loaders/KMZLoader.js +42 -55
- package/loaders/KMZLoader.mjs +75 -0
- package/loaders/KTX2Loader.js +229 -362
- package/loaders/KTX2Loader.mjs +427 -0
- package/loaders/KTXLoader.js +37 -99
- package/loaders/KTXLoader.mjs +87 -0
- package/loaders/LDrawLoader.js +313 -746
- package/loaders/LDrawLoader.mjs +1409 -0
- package/loaders/LUT3dlLoader.js +50 -62
- package/loaders/LUT3dlLoader.mjs +100 -0
- package/loaders/LUTCubeLoader.js +45 -56
- package/loaders/LUTCubeLoader.mjs +104 -0
- package/loaders/LWOLoader.js +227 -339
- package/loaders/LWOLoader.mjs +625 -0
- package/loaders/LottieLoader.js +36 -38
- package/loaders/LottieLoader.mjs +47 -0
- package/loaders/MD2Loader.js +248 -91
- package/loaders/MD2Loader.mjs +359 -0
- package/loaders/MDDLoader.js +25 -45
- package/loaders/MDDLoader.mjs +58 -0
- package/loaders/MMDLoader.js +359 -795
- package/loaders/MMDLoader.mjs +998 -0
- package/loaders/MTLLoader.js +91 -201
- package/loaders/MTLLoader.mjs +280 -0
- package/loaders/NRRDLoader.js +182 -263
- package/loaders/NRRDLoader.mjs +401 -0
- package/loaders/NodeMaterialLoader.js +121 -14
- package/loaders/NodeMaterialLoader.mjs +146 -0
- package/loaders/OBJLoader.js +161 -283
- package/loaders/OBJLoader.mjs +487 -0
- package/loaders/PCDLoader.js +145 -164
- package/loaders/PCDLoader.mjs +248 -0
- package/loaders/PDBLoader.js +45 -63
- package/loaders/PDBLoader.mjs +246 -0
- package/loaders/PLYLoader.js +106 -203
- package/loaders/PLYLoader.mjs +317 -0
- package/loaders/PRWMLoader.js +73 -110
- package/loaders/PRWMLoader.mjs +160 -0
- package/loaders/PVRLoader.js +32 -93
- package/loaders/PVRLoader.mjs +131 -0
- package/loaders/RGBELoader.js +96 -233
- package/loaders/RGBELoader.mjs +244 -0
- package/loaders/RGBMLoader.js +344 -514
- package/loaders/RGBMLoader.mjs +998 -0
- package/loaders/STLLoader.js +59 -165
- package/loaders/STLLoader.mjs +190 -0
- package/loaders/SVGLoader.js +481 -851
- package/loaders/SVGLoader.mjs +1709 -0
- package/loaders/TDSLoader.js +137 -527
- package/loaders/TDSLoader.mjs +480 -0
- package/loaders/TGALoader.js +94 -205
- package/loaders/TGALoader.mjs +285 -0
- package/loaders/TTFLoader.js +58 -79
- package/loaders/TTFLoader.mjs +131 -0
- package/loaders/TiltLoader.js +129 -167
- package/loaders/TiltLoader.mjs +373 -0
- package/loaders/VOXLoader.js +320 -84
- package/loaders/VOXLoader.mjs +431 -0
- package/loaders/VRMLLoader.js +786 -1268
- package/loaders/VRMLLoader.mjs +2093 -0
- package/loaders/VRMLoader.js +23 -31
- package/loaders/VRMLoader.mjs +38 -0
- package/loaders/VTKLoader.js +219 -407
- package/loaders/VTKLoader.mjs +646 -0
- package/loaders/XLoader.js +1083 -1259
- package/loaders/XLoader.mjs +1258 -0
- package/loaders/XYZLoader.js +28 -34
- package/loaders/XYZLoader.mjs +60 -0
- package/loaders/lwo/IFFParser.js +238 -492
- package/loaders/lwo/IFFParser.mjs +697 -0
- package/loaders/lwo/LWO2Parser.js +176 -279
- package/loaders/lwo/LWO2Parser.mjs +327 -0
- package/loaders/lwo/LWO3Parser.js +160 -247
- package/loaders/lwo/LWO3Parser.mjs +298 -0
- package/math/Capsule.js +56 -43
- package/math/Capsule.mjs +100 -0
- package/math/ColorConverter.js +18 -32
- package/math/ColorConverter.mjs +51 -0
- package/math/ConvexHull.js +515 -739
- package/math/ConvexHull.mjs +574 -0
- package/math/ImprovedNoise.js +282 -32
- package/math/ImprovedNoise.mjs +302 -0
- package/math/Lut.js +51 -35
- package/math/Lut.mjs +135 -0
- package/math/MeshSurfaceSampler.js +25 -68
- package/math/MeshSurfaceSampler.mjs +107 -0
- package/math/OBB.js +91 -152
- package/math/OBB.mjs +235 -0
- package/math/Octree.js +76 -139
- package/math/Octree.mjs +278 -0
- package/math/SimplexNoise.js +217 -238
- package/math/SimplexNoise.mjs +425 -0
- package/misc/ConvexObjectBreaker.js +79 -185
- package/misc/ConvexObjectBreaker.mjs +292 -0
- package/misc/GPUComputationRenderer.js +69 -194
- package/misc/GPUComputationRenderer.mjs +171 -0
- package/misc/Gyroscope.js +16 -22
- package/misc/Gyroscope.mjs +35 -0
- package/misc/MD2Character.js +52 -74
- package/misc/MD2Character.mjs +162 -0
- package/misc/MD2CharacterComplex.js +112 -163
- package/misc/MD2CharacterComplex.mjs +328 -0
- package/misc/MorphAnimMesh.js +20 -28
- package/misc/MorphAnimMesh.mjs +40 -0
- package/misc/MorphBlendMesh.js +45 -69
- package/misc/MorphBlendMesh.mjs +179 -0
- package/misc/ProgressiveLightmap.js +70 -187
- package/misc/ProgressiveLightmap.mjs +166 -0
- package/misc/RollerCoaster.js +106 -135
- package/misc/RollerCoaster.mjs +346 -0
- package/misc/TubePainter.js +74 -92
- package/misc/TubePainter.mjs +123 -0
- package/misc/Volume.js +108 -270
- package/misc/Volume.mjs +244 -0
- package/misc/VolumeSlice.js +34 -122
- package/misc/VolumeSlice.mjs +106 -0
- package/misc/WebGL.js +37 -34
- package/misc/WebGL.mjs +74 -0
- package/modifiers/CurveModifier.js +46 -151
- package/modifiers/CurveModifier.mjs +182 -0
- package/modifiers/EdgeSplitModifier.js +46 -90
- package/modifiers/EdgeSplitModifier.mjs +162 -0
- package/modifiers/SimplifyModifier.js +77 -202
- package/modifiers/SimplifyModifier.mjs +282 -0
- package/modifiers/TessellateModifier.js +65 -90
- package/modifiers/TessellateModifier.mjs +206 -0
- package/nodes/Nodes.js +274 -140
- package/nodes/Nodes.mjs +400 -0
- package/nodes/ShaderNode.js +296 -196
- package/nodes/ShaderNode.mjs +408 -0
- package/nodes/accessors/BufferNode.js +4 -8
- package/nodes/accessors/BufferNode.mjs +15 -0
- package/nodes/accessors/CameraNode.js +20 -25
- package/nodes/accessors/CameraNode.mjs +44 -0
- package/nodes/accessors/CubeTextureNode.js +14 -26
- package/nodes/accessors/CubeTextureNode.mjs +42 -0
- package/nodes/accessors/MaterialNode.js +43 -53
- package/nodes/accessors/MaterialNode.mjs +71 -0
- package/nodes/accessors/MaterialReferenceNode.js +3 -6
- package/nodes/accessors/MaterialReferenceNode.mjs +14 -0
- package/nodes/accessors/ModelNode.js +3 -5
- package/nodes/accessors/ModelNode.mjs +9 -0
- package/nodes/accessors/ModelViewProjectionNode.js +14 -13
- package/nodes/accessors/ModelViewProjectionNode.mjs +24 -0
- package/nodes/accessors/NormalNode.js +40 -39
- package/nodes/accessors/NormalNode.mjs +62 -0
- package/nodes/accessors/Object3DNode.js +40 -50
- package/nodes/accessors/Object3DNode.mjs +76 -0
- package/nodes/accessors/PointUVNode.js +5 -9
- package/nodes/accessors/PointUVNode.mjs +13 -0
- package/nodes/accessors/PositionNode.js +42 -41
- package/nodes/accessors/PositionNode.mjs +65 -0
- package/nodes/accessors/ReferenceNode.js +10 -17
- package/nodes/accessors/ReferenceNode.mjs +37 -0
- package/nodes/accessors/ReflectNode.js +23 -26
- package/nodes/accessors/ReflectNode.mjs +43 -0
- package/nodes/accessors/SkinningNode.js +46 -48
- package/nodes/accessors/SkinningNode.mjs +58 -0
- package/nodes/accessors/TextureNode.js +14 -29
- package/nodes/accessors/TextureNode.mjs +54 -0
- package/nodes/accessors/UVNode.js +5 -11
- package/nodes/accessors/UVNode.mjs +23 -0
- package/nodes/core/ArrayUniformNode.js +3 -7
- package/nodes/core/ArrayUniformNode.mjs +14 -0
- package/nodes/core/AttributeNode.js +5 -12
- package/nodes/core/AttributeNode.mjs +30 -0
- package/nodes/core/BypassNode.js +5 -12
- package/nodes/core/BypassNode.mjs +22 -0
- package/nodes/core/CodeNode.js +4 -12
- package/nodes/core/CodeNode.mjs +28 -0
- package/nodes/core/ConstNode.js +3 -7
- package/nodes/core/ConstNode.mjs +14 -0
- package/nodes/core/ContextNode.js +3 -8
- package/nodes/core/ContextNode.mjs +22 -0
- package/nodes/core/ExpressionNode.js +5 -9
- package/nodes/core/ExpressionNode.mjs +19 -0
- package/nodes/core/FunctionCallNode.js +6 -15
- package/nodes/core/FunctionCallNode.mjs +37 -0
- package/nodes/core/FunctionNode.js +10 -25
- package/nodes/core/FunctionNode.mjs +56 -0
- package/nodes/core/InputNode.js +12 -23
- package/nodes/core/InputNode.mjs +38 -0
- package/nodes/core/Node.js +35 -75
- package/nodes/core/Node.mjs +139 -0
- package/nodes/core/NodeAttribute.js +2 -4
- package/nodes/core/NodeAttribute.mjs +10 -0
- package/nodes/core/NodeBuilder.js +110 -224
- package/nodes/core/NodeBuilder.mjs +395 -0
- package/nodes/core/NodeCode.js +4 -7
- package/nodes/core/NodeCode.mjs +11 -0
- package/nodes/core/NodeFrame.js +9 -12
- package/nodes/core/NodeFrame.mjs +35 -0
- package/nodes/core/NodeFunctionInput.js +3 -5
- package/nodes/core/NodeFunctionInput.mjs +13 -0
- package/nodes/core/NodeKeywords.js +5 -16
- package/nodes/core/NodeKeywords.mjs +44 -0
- package/nodes/core/NodeUniform.js +3 -7
- package/nodes/core/NodeUniform.mjs +18 -0
- package/nodes/core/NodeUtils.js +39 -43
- package/nodes/core/NodeUtils.mjs +57 -0
- package/nodes/core/NodeVar.js +2 -4
- package/nodes/core/NodeVar.mjs +10 -0
- package/nodes/core/NodeVary.js +2 -4
- package/nodes/core/NodeVary.mjs +10 -0
- package/nodes/core/PropertyNode.js +4 -10
- package/nodes/core/PropertyNode.mjs +21 -0
- package/nodes/core/TempNode.js +5 -11
- package/nodes/core/TempNode.mjs +25 -0
- package/nodes/core/UniformNode.js +4 -10
- package/nodes/core/UniformNode.mjs +23 -0
- package/nodes/core/VarNode.js +3 -11
- package/nodes/core/VarNode.mjs +31 -0
- package/nodes/core/VaryNode.js +6 -15
- package/nodes/core/VaryNode.mjs +30 -0
- package/nodes/core/constants.js +20 -7
- package/nodes/core/constants.mjs +24 -0
- package/nodes/display/ColorSpaceNode.js +34 -38
- package/nodes/display/ColorSpaceNode.mjs +63 -0
- package/nodes/display/NormalMapNode.js +35 -53
- package/nodes/display/NormalMapNode.mjs +54 -0
- package/nodes/fog/FogNode.js +5 -9
- package/nodes/fog/FogNode.mjs +15 -0
- package/nodes/fog/FogRangeNode.js +5 -9
- package/nodes/fog/FogRangeNode.mjs +17 -0
- package/nodes/functions/BSDFs.js +61 -118
- package/nodes/functions/BSDFs.mjs +64 -0
- package/nodes/lights/LightContextNode.js +14 -23
- package/nodes/lights/LightContextNode.mjs +35 -0
- package/nodes/lights/LightNode.js +27 -31
- package/nodes/lights/LightNode.mjs +58 -0
- package/nodes/lights/LightsNode.js +9 -28
- package/nodes/lights/LightsNode.mjs +59 -0
- package/nodes/loaders/NodeLoader.js +27 -42
- package/nodes/loaders/NodeLoader.mjs +66 -0
- package/nodes/loaders/NodeMaterialLoader.js +4 -10
- package/nodes/loaders/NodeMaterialLoader.mjs +24 -0
- package/nodes/loaders/NodeObjectLoader.js +9 -19
- package/nodes/loaders/NodeObjectLoader.mjs +40 -0
- package/nodes/materials/LineBasicNodeMaterial.js +5 -10
- package/nodes/materials/LineBasicNodeMaterial.mjs +27 -0
- package/nodes/materials/Materials.js +14 -17
- package/nodes/materials/Materials.mjs +28 -0
- package/nodes/materials/MeshBasicNodeMaterial.js +5 -10
- package/nodes/materials/MeshBasicNodeMaterial.mjs +28 -0
- package/nodes/materials/MeshStandardNodeMaterial.js +5 -8
- package/nodes/materials/MeshStandardNodeMaterial.mjs +41 -0
- package/nodes/materials/NodeMaterial.js +20 -36
- package/nodes/materials/NodeMaterial.mjs +64 -0
- package/nodes/materials/PointsNodeMaterial.js +5 -10
- package/nodes/materials/PointsNodeMaterial.mjs +30 -0
- package/nodes/math/CondNode.js +11 -23
- package/nodes/math/CondNode.mjs +38 -0
- package/nodes/math/MathNode.js +98 -142
- package/nodes/math/MathNode.mjs +163 -0
- package/nodes/math/OperatorNode.js +24 -46
- package/nodes/math/OperatorNode.mjs +103 -0
- package/nodes/procedural/CheckerNode.js +13 -19
- package/nodes/procedural/CheckerNode.mjs +21 -0
- package/nodes/utils/ArrayElementNode.js +4 -8
- package/nodes/utils/ArrayElementNode.mjs +19 -0
- package/nodes/utils/ConvertNode.js +3 -8
- package/nodes/utils/ConvertNode.mjs +25 -0
- package/nodes/utils/JoinNode.js +7 -11
- package/nodes/utils/JoinNode.mjs +26 -0
- package/nodes/utils/MatcapUVNode.js +8 -11
- package/nodes/utils/MatcapUVNode.mjs +16 -0
- package/nodes/utils/OscNode.js +27 -33
- package/nodes/utils/OscNode.mjs +50 -0
- package/nodes/utils/SplitNode.js +6 -20
- package/nodes/utils/SplitNode.mjs +45 -0
- package/nodes/utils/SpriteSheetUVNode.js +23 -23
- package/nodes/utils/SpriteSheetUVNode.mjs +40 -0
- package/nodes/utils/TimerNode.js +20 -24
- package/nodes/utils/TimerNode.mjs +44 -0
- package/objects/GroundProjectedEnv.js +22 -37
- package/objects/GroundProjectedEnv.mjs +130 -0
- package/objects/Lensflare.js +86 -156
- package/objects/Lensflare.mjs +262 -0
- package/objects/LightningStorm.js +38 -102
- package/objects/LightningStorm.mjs +110 -0
- package/objects/MarchingCubes.js +150 -303
- package/objects/MarchingCubes.mjs +457 -0
- package/objects/Reflector.js +50 -72
- package/objects/Reflector.mjs +166 -0
- package/objects/ReflectorForSSRPass.js +80 -131
- package/objects/ReflectorForSSRPass.mjs +247 -0
- package/objects/ReflectorRTT.js +6 -7
- package/objects/ReflectorRTT.mjs +10 -0
- package/objects/Refractor.js +64 -106
- package/objects/Refractor.mjs +178 -0
- package/objects/ShadowMesh.js +8 -17
- package/objects/ShadowMesh.mjs +41 -0
- package/objects/Sky.js +119 -80
- package/objects/Sky.mjs +124 -0
- package/objects/Water.js +83 -127
- package/objects/Water.mjs +235 -0
- package/objects/Water2.js +72 -108
- package/objects/Water2.mjs +252 -0
- package/offscreen/jank.js +10 -14
- package/offscreen/jank.mjs +27 -0
- package/offscreen/offscreen.js +4 -5
- package/offscreen/offscreen.mjs +5 -0
- package/offscreen/scene.js +45 -48
- package/offscreen/scene.mjs +52 -0
- package/package.json +3 -3
- package/physics/AmmoPhysics.js +30 -71
- package/physics/AmmoPhysics.mjs +165 -0
- package/postprocessing/AdaptiveToneMappingPass.js +97 -123
- package/postprocessing/AdaptiveToneMappingPass.mjs +221 -0
- package/postprocessing/AfterimagePass.js +28 -49
- package/postprocessing/AfterimagePass.mjs +55 -0
- package/postprocessing/BloomPass.js +43 -69
- package/postprocessing/BloomPass.mjs +90 -0
- package/postprocessing/BokehPass.js +39 -69
- package/postprocessing/BokehPass.mjs +76 -0
- package/postprocessing/ClearPass.js +10 -25
- package/postprocessing/ClearPass.mjs +27 -0
- package/postprocessing/CubeTexturePass.js +28 -27
- package/postprocessing/CubeTexturePass.mjs +49 -0
- package/postprocessing/DotScreenPass.js +24 -32
- package/postprocessing/DotScreenPass.mjs +40 -0
- package/postprocessing/EffectComposer.js +39 -86
- package/postprocessing/EffectComposer.mjs +139 -0
- package/postprocessing/FilmPass.js +25 -30
- package/postprocessing/FilmPass.mjs +42 -0
- package/postprocessing/GlitchPass.js +38 -61
- package/postprocessing/GlitchPass.mjs +75 -0
- package/postprocessing/HalftonePass.js +19 -39
- package/postprocessing/HalftonePass.mjs +44 -0
- package/postprocessing/LUTPass.js +13 -38
- package/postprocessing/LUTPass.mjs +136 -0
- package/postprocessing/MaskPass.js +19 -38
- package/postprocessing/MaskPass.mjs +60 -0
- package/postprocessing/OutlinePass.js +135 -277
- package/postprocessing/OutlinePass.mjs +438 -0
- package/postprocessing/Pass.js +20 -44
- package/postprocessing/Pass.mjs +37 -0
- package/postprocessing/RenderPass.js +13 -36
- package/postprocessing/RenderPass.mjs +48 -0
- package/postprocessing/RenderPixelatedPass.js +44 -58
- package/postprocessing/RenderPixelatedPass.mjs +199 -0
- package/postprocessing/SAOPass.js +154 -189
- package/postprocessing/SAOPass.mjs +282 -0
- package/postprocessing/SMAAPass.js +64 -84
- package/postprocessing/SMAAPass.mjs +112 -0
- package/postprocessing/SSAARenderPass.js +121 -69
- package/postprocessing/SSAARenderPass.mjs +170 -0
- package/postprocessing/SSAOPass.js +123 -172
- package/postprocessing/SSAOPass.mjs +265 -0
- package/postprocessing/SSRPass.js +211 -280
- package/postprocessing/SSRPass.mjs +432 -0
- package/postprocessing/SavePass.js +20 -25
- package/postprocessing/SavePass.mjs +37 -0
- package/postprocessing/ShaderPass.js +14 -30
- package/postprocessing/ShaderPass.mjs +39 -0
- package/postprocessing/TAARenderPass.js +42 -61
- package/postprocessing/TAARenderPass.mjs +88 -0
- package/postprocessing/TexturePass.js +21 -22
- package/postprocessing/TexturePass.mjs +39 -0
- package/postprocessing/UnrealBloomPass.js +105 -213
- package/postprocessing/UnrealBloomPass.mjs +220 -0
- package/renderers/CSS2DRenderer.js +44 -56
- package/renderers/CSS2DRenderer.mjs +112 -0
- package/renderers/CSS3DRenderer.js +53 -86
- package/renderers/CSS3DRenderer.mjs +133 -0
- package/renderers/Projector.js +107 -274
- package/renderers/Projector.mjs +511 -0
- package/renderers/SVGRenderer.js +72 -182
- package/renderers/SVGRenderer.mjs +306 -0
- package/renderers/nodes/accessors/CameraNode.js +29 -40
- package/renderers/nodes/accessors/CameraNode.mjs +63 -0
- package/renderers/nodes/accessors/ModelNode.js +28 -37
- package/renderers/nodes/accessors/ModelNode.mjs +61 -0
- package/renderers/nodes/accessors/ModelViewProjectionNode.js +10 -23
- package/renderers/nodes/accessors/ModelViewProjectionNode.mjs +21 -0
- package/renderers/nodes/accessors/NormalNode.js +35 -45
- package/renderers/nodes/accessors/NormalNode.mjs +61 -0
- package/renderers/nodes/accessors/PositionNode.js +18 -19
- package/renderers/nodes/accessors/PositionNode.mjs +30 -0
- package/renderers/nodes/accessors/UVNode.js +5 -10
- package/renderers/nodes/accessors/UVNode.mjs +13 -0
- package/renderers/nodes/core/AttributeNode.js +5 -14
- package/renderers/nodes/core/AttributeNode.mjs +35 -0
- package/renderers/nodes/core/InputNode.js +4 -14
- package/renderers/nodes/core/InputNode.mjs +31 -0
- package/renderers/nodes/core/Node.js +7 -17
- package/renderers/nodes/core/Node.mjs +34 -0
- package/renderers/nodes/core/NodeAttribute.js +3 -6
- package/renderers/nodes/core/NodeAttribute.mjs +10 -0
- package/renderers/nodes/core/NodeBuilder.js +87 -154
- package/renderers/nodes/core/NodeBuilder.mjs +243 -0
- package/renderers/nodes/core/NodeFrame.js +9 -12
- package/renderers/nodes/core/NodeFrame.mjs +35 -0
- package/renderers/nodes/core/NodeSlot.js +2 -3
- package/renderers/nodes/core/NodeSlot.mjs +10 -0
- package/renderers/nodes/core/NodeUniform.js +4 -9
- package/renderers/nodes/core/NodeUniform.mjs +18 -0
- package/renderers/nodes/core/NodeVary.js +4 -7
- package/renderers/nodes/core/NodeVary.mjs +11 -0
- package/renderers/nodes/core/VaryNode.js +6 -12
- package/renderers/nodes/core/VaryNode.mjs +22 -0
- package/renderers/nodes/core/constants.js +16 -13
- package/renderers/nodes/core/constants.mjs +22 -0
- package/renderers/nodes/inputs/ColorNode.js +5 -11
- package/renderers/nodes/inputs/ColorNode.mjs +11 -0
- package/renderers/nodes/inputs/FloatNode.js +5 -11
- package/renderers/nodes/inputs/FloatNode.mjs +11 -0
- package/renderers/nodes/inputs/Matrix3Node.js +7 -13
- package/renderers/nodes/inputs/Matrix3Node.mjs +12 -0
- package/renderers/nodes/inputs/Matrix4Node.js +7 -13
- package/renderers/nodes/inputs/Matrix4Node.mjs +12 -0
- package/renderers/nodes/inputs/TextureNode.js +7 -15
- package/renderers/nodes/inputs/TextureNode.mjs +20 -0
- package/renderers/nodes/inputs/Vector2Node.js +5 -11
- package/renderers/nodes/inputs/Vector2Node.mjs +11 -0
- package/renderers/nodes/inputs/Vector3Node.js +7 -13
- package/renderers/nodes/inputs/Vector3Node.mjs +12 -0
- package/renderers/nodes/inputs/Vector4Node.js +7 -13
- package/renderers/nodes/inputs/Vector4Node.mjs +12 -0
- package/renderers/nodes/math/MathNode.js +20 -30
- package/renderers/nodes/math/MathNode.mjs +55 -0
- package/renderers/nodes/math/OperatorNode.js +4 -20
- package/renderers/nodes/math/OperatorNode.mjs +42 -0
- package/renderers/nodes/utils/SwitchNode.js +4 -9
- package/renderers/nodes/utils/SwitchNode.mjs +20 -0
- package/renderers/nodes/utils/TimerNode.js +5 -10
- package/renderers/nodes/utils/TimerNode.mjs +14 -0
- package/renderers/webgpu/WebGPU.js +14 -16
- package/renderers/webgpu/WebGPU.mjs +24 -0
- package/renderers/webgpu/WebGPUAttributes.js +16 -23
- package/renderers/webgpu/WebGPUAttributes.mjs +69 -0
- package/renderers/webgpu/WebGPUBackground.js +13 -30
- package/renderers/webgpu/WebGPUBackground.mjs +61 -0
- package/renderers/webgpu/WebGPUBinding.js +4 -7
- package/renderers/webgpu/WebGPUBinding.mjs +14 -0
- package/renderers/webgpu/WebGPUBindings.js +21 -57
- package/renderers/webgpu/WebGPUBindings.mjs +155 -0
- package/renderers/webgpu/WebGPUComputePipelines.js +14 -25
- package/renderers/webgpu/WebGPUComputePipelines.mjs +44 -0
- package/renderers/webgpu/WebGPUGeometries.js +5 -15
- package/renderers/webgpu/WebGPUGeometries.mjs +41 -0
- package/renderers/webgpu/WebGPUInfo.js +3 -8
- package/renderers/webgpu/WebGPUInfo.mjs +46 -0
- package/renderers/webgpu/WebGPUObjects.js +5 -10
- package/renderers/webgpu/WebGPUObjects.mjs +25 -0
- package/renderers/webgpu/WebGPUProperties.js +5 -11
- package/renderers/webgpu/WebGPUProperties.mjs +22 -0
- package/renderers/webgpu/WebGPURenderLists.js +20 -36
- package/renderers/webgpu/WebGPURenderLists.mjs +119 -0
- package/renderers/webgpu/WebGPURenderPipelines.js +260 -387
- package/renderers/webgpu/WebGPURenderPipelines.mjs +545 -0
- package/renderers/webgpu/WebGPURenderer.js +124 -262
- package/renderers/webgpu/WebGPURenderer.mjs +574 -0
- package/renderers/webgpu/WebGPUSampledTexture.js +18 -31
- package/renderers/webgpu/WebGPUSampledTexture.mjs +40 -0
- package/renderers/webgpu/WebGPUSampler.js +7 -12
- package/renderers/webgpu/WebGPUSampler.mjs +15 -0
- package/renderers/webgpu/WebGPUStorageBuffer.js +7 -12
- package/renderers/webgpu/WebGPUStorageBuffer.mjs +15 -0
- package/renderers/webgpu/WebGPUTextureRenderer.js +5 -11
- package/renderers/webgpu/WebGPUTextureRenderer.mjs +23 -0
- package/renderers/webgpu/WebGPUTextureUtils.js +29 -40
- package/renderers/webgpu/WebGPUTextureUtils.mjs +98 -0
- package/renderers/webgpu/WebGPUTextures.js +186 -333
- package/renderers/webgpu/WebGPUTextures.mjs +484 -0
- package/renderers/webgpu/WebGPUUniform.js +25 -51
- package/renderers/webgpu/WebGPUUniform.mjs +81 -0
- package/renderers/webgpu/WebGPUUniformsGroup.js +32 -72
- package/renderers/webgpu/WebGPUUniformsGroup.mjs +176 -0
- package/renderers/webgpu/constants.js +190 -181
- package/renderers/webgpu/constants.mjs +230 -0
- package/renderers/webgpu/nodes/ShaderLib.js +2 -2
- package/renderers/webgpu/nodes/ShaderLib.mjs +42 -0
- package/renderers/webgpu/nodes/WebGPUNodeBuilder.js +53 -124
- package/renderers/webgpu/nodes/WebGPUNodeBuilder.mjs +165 -0
- package/renderers/webgpu/nodes/WebGPUNodeUniform.js +17 -31
- package/renderers/webgpu/nodes/WebGPUNodeUniform.mjs +73 -0
- package/renderers/webgpu/nodes/WebGPUNodeUniformsGroup.js +8 -9
- package/renderers/webgpu/nodes/WebGPUNodeUniformsGroup.mjs +15 -0
- package/renderers/webgpu/nodes/WebGPUNodes.js +7 -45
- package/renderers/webgpu/nodes/WebGPUNodes.mjs +40 -0
- package/shaders/ACESFilmicToneMappingShader.js +44 -24
- package/shaders/ACESFilmicToneMappingShader.mjs +48 -0
- package/shaders/AfterimageShader.js +28 -18
- package/shaders/AfterimageShader.mjs +32 -0
- package/shaders/BasicShader.js +9 -7
- package/shaders/BasicShader.mjs +12 -0
- package/shaders/BleachBypassShader.js +31 -15
- package/shaders/BleachBypassShader.mjs +35 -0
- package/shaders/BlendShader.js +26 -19
- package/shaders/BlendShader.mjs +30 -0
- package/shaders/BokehShader.js +98 -36
- package/shaders/BokehShader.mjs +106 -0
- package/shaders/BokehShader2.js +261 -90
- package/shaders/BokehShader2.mjs +269 -0
- package/shaders/BrightnessContrastShader.js +28 -19
- package/shaders/BrightnessContrastShader.mjs +32 -0
- package/shaders/ColorCorrectionShader.js +26 -22
- package/shaders/ColorCorrectionShader.mjs +30 -0
- package/shaders/ColorifyShader.js +24 -16
- package/shaders/ColorifyShader.mjs +28 -0
- package/shaders/ConvolutionShader.js +40 -36
- package/shaders/ConvolutionShader.mjs +55 -0
- package/shaders/CopyShader.js +21 -13
- package/shaders/CopyShader.mjs +25 -0
- package/shaders/DOFMipMapShader.js +28 -21
- package/shaders/DOFMipMapShader.mjs +32 -0
- package/shaders/DepthLimitedBlurShader.js +85 -40
- package/shaders/DepthLimitedBlurShader.mjs +114 -0
- package/shaders/DigitalGlitch.js +74 -46
- package/shaders/DigitalGlitch.mjs +78 -0
- package/shaders/DotScreenShader.js +35 -27
- package/shaders/DotScreenShader.mjs +39 -0
- package/shaders/FXAAShader.js +1094 -19
- package/shaders/FXAAShader.mjs +1098 -0
- package/shaders/FilmShader.js +38 -52
- package/shaders/FilmShader.mjs +42 -0
- package/shaders/FocusShader.js +51 -24
- package/shaders/FocusShader.mjs +55 -0
- package/shaders/FreiChenShader.js +57 -24
- package/shaders/FreiChenShader.mjs +61 -0
- package/shaders/FresnelShader.js +43 -22
- package/shaders/FresnelShader.mjs +47 -0
- package/shaders/GammaCorrectionShader.js +19 -11
- package/shaders/GammaCorrectionShader.mjs +23 -0
- package/shaders/GodRaysShader.js +103 -94
- package/shaders/GodRaysShader.mjs +146 -0
- package/shaders/HalftoneShader.js +208 -65
- package/shaders/HalftoneShader.mjs +212 -0
- package/shaders/HorizontalBlurShader.js +7 -23
- package/shaders/HorizontalBlurShader.mjs +43 -0
- package/shaders/HorizontalTiltShiftShader.js +33 -21
- package/shaders/HorizontalTiltShiftShader.mjs +37 -0
- package/shaders/HueSaturationShader.js +37 -21
- package/shaders/HueSaturationShader.mjs +41 -0
- package/shaders/KaleidoShader.js +30 -22
- package/shaders/KaleidoShader.mjs +34 -0
- package/shaders/LuminosityHighPassShader.js +33 -27
- package/shaders/LuminosityHighPassShader.mjs +37 -0
- package/shaders/LuminosityShader.js +21 -11
- package/shaders/LuminosityShader.mjs +25 -0
- package/shaders/MirrorShader.js +31 -16
- package/shaders/MirrorShader.mjs +35 -0
- package/shaders/NormalMapShader.js +27 -23
- package/shaders/NormalMapShader.mjs +31 -0
- package/shaders/ParallaxShader.js +107 -48
- package/shaders/ParallaxShader.mjs +113 -0
- package/shaders/PixelShader.js +24 -16
- package/shaders/PixelShader.mjs +28 -0
- package/shaders/RGBShiftShader.js +26 -22
- package/shaders/RGBShiftShader.mjs +30 -0
- package/shaders/SAOShader.js +132 -48
- package/shaders/SAOShader.mjs +144 -0
- package/shaders/SMAAShader.js +256 -135
- package/shaders/SMAAShader.mjs +272 -0
- package/shaders/SSAOShader.js +153 -81
- package/shaders/SSAOShader.mjs +172 -0
- package/shaders/SSRShader.js +32 -87
- package/shaders/SSRShader.mjs +324 -0
- package/shaders/SepiaShader.js +25 -15
- package/shaders/SepiaShader.mjs +29 -0
- package/shaders/SobelOperatorShader.js +40 -29
- package/shaders/SobelOperatorShader.mjs +44 -0
- package/shaders/SubsurfaceScatteringShader.js +53 -39
- package/shaders/SubsurfaceScatteringShader.mjs +59 -0
- package/shaders/TechnicolorShader.js +20 -13
- package/shaders/TechnicolorShader.mjs +24 -0
- package/shaders/ToneMapShader.js +44 -28
- package/shaders/ToneMapShader.mjs +48 -0
- package/shaders/ToonShader.js +172 -96
- package/shaders/ToonShader.mjs +188 -0
- package/shaders/TriangleBlurShader.js +32 -23
- package/shaders/TriangleBlurShader.mjs +36 -0
- package/shaders/UnpackDepthRGBAShader.js +22 -14
- package/shaders/UnpackDepthRGBAShader.mjs +26 -0
- package/shaders/VerticalBlurShader.js +7 -23
- package/shaders/VerticalBlurShader.mjs +44 -0
- package/shaders/VerticalTiltShiftShader.js +33 -21
- package/shaders/VerticalTiltShiftShader.mjs +37 -0
- package/shaders/VignetteShader.js +24 -28
- package/shaders/VignetteShader.mjs +28 -0
- package/shaders/VolumeShader.js +174 -77
- package/shaders/VolumeShader.mjs +178 -0
- package/shaders/WaterRefractionShader.js +38 -6
- package/shaders/WaterRefractionShader.mjs +57 -0
- package/shaders/types.js +1 -1
- package/{custom.d.js → shaders/types.mjs} +0 -0
- package/textures/FlakesTexture.js +8 -10
- package/textures/FlakesTexture.mjs +30 -0
- package/types/helpers.js +3 -2
- package/types/helpers.mjs +4 -0
- package/utils/BufferGeometryUtils.js +251 -325
- package/utils/BufferGeometryUtils.mjs +570 -0
- package/utils/GeometryCompressionUtils.js +241 -239
- package/utils/GeometryCompressionUtils.mjs +547 -0
- package/utils/GeometryUtils.js +41 -94
- package/utils/GeometryUtils.mjs +108 -0
- package/utils/RoughnessMipmapper.js +38 -82
- package/utils/RoughnessMipmapper.mjs +213 -0
- package/utils/SceneUtils.js +15 -20
- package/utils/SceneUtils.mjs +36 -0
- package/utils/ShadowMapViewer.js +49 -95
- package/utils/ShadowMapViewer.mjs +114 -0
- package/utils/SkeletonUtils.js +74 -165
- package/utils/SkeletonUtils.mjs +292 -0
- package/utils/UVsDebug.js +32 -62
- package/utils/UVsDebug.mjs +85 -0
- package/utils/WorkerPool.js +13 -33
- package/utils/WorkerPool.mjs +62 -0
- package/webxr/ARButton.js +72 -98
- package/webxr/ARButton.mjs +119 -0
- package/webxr/OculusHandModel.js +18 -37
- package/webxr/OculusHandModel.mjs +71 -0
- package/webxr/OculusHandPointerModel.js +58 -80
- package/webxr/OculusHandPointerModel.mjs +207 -0
- package/webxr/Text2D.js +37 -19
- package/webxr/Text2D.mjs +31 -0
- package/webxr/VRButton.js +59 -90
- package/webxr/VRButton.mjs +105 -0
- package/webxr/XRControllerModelFactory.js +58 -116
- package/webxr/XRControllerModelFactory.mjs +146 -0
- package/webxr/XREstimatedLight.js +39 -66
- package/webxr/XREstimatedLight.mjs +126 -0
- package/webxr/XRHandMeshModel.js +40 -29
- package/webxr/XRHandMeshModel.mjs +73 -0
- package/webxr/XRHandModelFactory.js +28 -31
- package/webxr/XRHandModelFactory.mjs +61 -0
- package/webxr/XRHandPrimitiveModel.js +41 -27
- package/webxr/XRHandPrimitiveModel.mjs +68 -0
- package/BufferGeometryUtils-1a7a235c.js +0 -655
- package/BufferGeometryUtils-971dfde3.js +0 -1
- package/Nodes-4f766d71.js +0 -471
- package/Nodes-9aa16d74.js +0 -1
- package/animation/AnimationClipCreator.cjs.js +0 -1
- package/animation/CCDIKSolver.cjs.js +0 -1
- package/animation/MMDAnimationHelper.cjs.js +0 -1
- package/animation/MMDPhysics.cjs.js +0 -1
- package/cameras/CinematicCamera.cjs.js +0 -1
- package/controls/ArcballControls.cjs.js +0 -1
- package/controls/DeviceOrientationControls.cjs.js +0 -1
- package/controls/DragControls.cjs.js +0 -1
- package/controls/FirstPersonControls.cjs.js +0 -1
- package/controls/FlyControls.cjs.js +0 -1
- package/controls/OrbitControls.cjs.js +0 -1
- package/controls/PointerLockControls.cjs.js +0 -1
- package/controls/TrackballControls.cjs.js +0 -1
- package/controls/TransformControls.cjs.js +0 -1
- package/controls/experimental/CameraControls.cjs.js +0 -1
- package/csm/CSM.cjs.js +0 -1
- package/csm/CSMFrustum.cjs.js +0 -1
- package/csm/CSMHelper.cjs.js +0 -1
- package/csm/CSMShader.cjs.js +0 -1
- package/curves/CurveExtras.cjs.js +0 -1
- package/curves/NURBSCurve.cjs.js +0 -1
- package/curves/NURBSSurface.cjs.js +0 -1
- package/curves/NURBSUtils.cjs.js +0 -1
- package/custom.d.cjs.js +0 -1
- package/deprecated/Geometry.cjs.js +0 -1
- package/effects/AnaglyphEffect.cjs.js +0 -1
- package/effects/AsciiEffect.cjs.js +0 -1
- package/effects/OutlineEffect.cjs.js +0 -1
- package/effects/ParallaxBarrierEffect.cjs.js +0 -1
- package/effects/PeppersGhostEffect.cjs.js +0 -1
- package/effects/StereoEffect.cjs.js +0 -1
- package/environments/RoomEnvironment.cjs.js +0 -1
- package/exporters/ColladaExporter.cjs.js +0 -1
- package/exporters/DRACOExporter.cjs.js +0 -1
- package/exporters/GLTFExporter.cjs.js +0 -1
- package/exporters/MMDExporter.cjs.js +0 -1
- package/exporters/OBJExporter.cjs.js +0 -1
- package/exporters/PLYExporter.cjs.js +0 -1
- package/exporters/STLExporter.cjs.js +0 -1
- package/exporters/USDZExporter.cjs.js +0 -1
- package/geometries/BoxLineGeometry.cjs.js +0 -1
- package/geometries/ConvexGeometry.cjs.js +0 -1
- package/geometries/DecalGeometry.cjs.js +0 -1
- package/geometries/LightningStrike.cjs.js +0 -1
- package/geometries/ParametricGeometries.cjs.js +0 -1
- package/geometries/ParametricGeometry.cjs.js +0 -1
- package/geometries/RoundedBoxGeometry.cjs.js +0 -1
- package/geometries/TeapotGeometry.cjs.js +0 -1
- package/geometries/TextGeometry.cjs.js +0 -1
- package/helpers/LightProbeHelper.cjs.js +0 -1
- package/helpers/PositionalAudioHelper.cjs.js +0 -1
- package/helpers/RectAreaLightHelper.cjs.js +0 -1
- package/helpers/VertexNormalsHelper.cjs.js +0 -1
- package/helpers/VertexTangentsHelper.cjs.js +0 -1
- package/index.cjs.js +0 -1
- package/interactive/InteractiveGroup.cjs.js +0 -1
- package/interactive/InteractiveGroup.d.ts +0 -5
- package/interactive/InteractiveGroup.js +0 -87
- package/interactive/SelectionBox.cjs.js +0 -1
- package/interactive/SelectionHelper.cjs.js +0 -1
- package/libs/MeshoptDecoder.cjs.js +0 -1
- package/libs/MotionControllers.cjs.js +0 -1
- package/lights/LightProbeGenerator.cjs.js +0 -1
- package/lights/RectAreaLightUniformsLib.cjs.js +0 -1
- package/lines/Line2.cjs.js +0 -1
- package/lines/LineGeometry.cjs.js +0 -1
- package/lines/LineMaterial.cjs.js +0 -1
- package/lines/LineSegments2.cjs.js +0 -1
- package/lines/LineSegmentsGeometry.cjs.js +0 -1
- package/lines/Wireframe.cjs.js +0 -1
- package/lines/WireframeGeometry2.cjs.js +0 -1
- package/loaders/3DMLoader.cjs.js +0 -1
- package/loaders/3MFLoader.cjs.js +0 -1
- package/loaders/AMFLoader.cjs.js +0 -1
- package/loaders/AssimpLoader.cjs.js +0 -1
- package/loaders/BVHLoader.cjs.js +0 -1
- package/loaders/BasisTextureLoader.cjs.js +0 -1
- package/loaders/ColladaLoader.cjs.js +0 -1
- package/loaders/DDSLoader.cjs.js +0 -1
- package/loaders/DRACOLoader.cjs.js +0 -1
- package/loaders/EXRLoader.cjs.js +0 -1
- package/loaders/FBXLoader.cjs.js +0 -1
- package/loaders/FontLoader.cjs.js +0 -1
- package/loaders/GCodeLoader.cjs.js +0 -1
- package/loaders/GLTFLoader.cjs.js +0 -1
- package/loaders/HDRCubeTextureLoader.cjs.js +0 -1
- package/loaders/KMZLoader.cjs.js +0 -1
- package/loaders/KTX2Loader.cjs.js +0 -1
- package/loaders/KTXLoader.cjs.js +0 -1
- package/loaders/LDrawLoader.cjs.js +0 -1
- package/loaders/LUT3dlLoader.cjs.js +0 -1
- package/loaders/LUTCubeLoader.cjs.js +0 -1
- package/loaders/LWOLoader.cjs.js +0 -1
- package/loaders/LottieLoader.cjs.js +0 -1
- package/loaders/MD2Loader.cjs.js +0 -1
- package/loaders/MDDLoader.cjs.js +0 -1
- package/loaders/MMDLoader.cjs.js +0 -1
- package/loaders/MTLLoader.cjs.js +0 -1
- package/loaders/NRRDLoader.cjs.js +0 -1
- package/loaders/NodeMaterialLoader.cjs.js +0 -1
- package/loaders/OBJLoader.cjs.js +0 -1
- package/loaders/PCDLoader.cjs.js +0 -1
- package/loaders/PDBLoader.cjs.js +0 -1
- package/loaders/PLYLoader.cjs.js +0 -1
- package/loaders/PRWMLoader.cjs.js +0 -1
- package/loaders/PVRLoader.cjs.js +0 -1
- package/loaders/RGBELoader.cjs.js +0 -1
- package/loaders/RGBMLoader.cjs.js +0 -1
- package/loaders/STLLoader.cjs.js +0 -1
- package/loaders/SVGLoader.cjs.js +0 -1
- package/loaders/TDSLoader.cjs.js +0 -1
- package/loaders/TGALoader.cjs.js +0 -1
- package/loaders/TTFLoader.cjs.js +0 -1
- package/loaders/TiltLoader.cjs.js +0 -1
- package/loaders/VOXLoader.cjs.js +0 -1
- package/loaders/VRMLLoader.cjs.js +0 -1
- package/loaders/VRMLoader.cjs.js +0 -1
- package/loaders/VTKLoader.cjs.js +0 -1
- package/loaders/XLoader.cjs.js +0 -1
- package/loaders/XYZLoader.cjs.js +0 -1
- package/loaders/lwo/IFFParser.cjs.js +0 -1
- package/loaders/lwo/LWO2Parser.cjs.js +0 -1
- package/loaders/lwo/LWO3Parser.cjs.js +0 -1
- package/math/Capsule.cjs.js +0 -1
- package/math/ColorConverter.cjs.js +0 -1
- package/math/ConvexHull.cjs.js +0 -1
- package/math/ImprovedNoise.cjs.js +0 -1
- package/math/Lut.cjs.js +0 -1
- package/math/MeshSurfaceSampler.cjs.js +0 -1
- package/math/OBB.cjs.js +0 -1
- package/math/Octree.cjs.js +0 -1
- package/math/SimplexNoise.cjs.js +0 -1
- package/misc/ConvexObjectBreaker.cjs.js +0 -1
- package/misc/GPUComputationRenderer.cjs.js +0 -1
- package/misc/Gyroscope.cjs.js +0 -1
- package/misc/MD2Character.cjs.js +0 -1
- package/misc/MD2CharacterComplex.cjs.js +0 -1
- package/misc/MorphAnimMesh.cjs.js +0 -1
- package/misc/MorphBlendMesh.cjs.js +0 -1
- package/misc/ProgressiveLightmap.cjs.js +0 -1
- package/misc/RollerCoaster.cjs.js +0 -1
- package/misc/TubePainter.cjs.js +0 -1
- package/misc/Volume.cjs.js +0 -1
- package/misc/VolumeSlice.cjs.js +0 -1
- package/misc/WebGL.cjs.js +0 -1
- package/modifiers/CurveModifier.cjs.js +0 -1
- package/modifiers/EdgeSplitModifier.cjs.js +0 -1
- package/modifiers/SimplifyModifier.cjs.js +0 -1
- package/modifiers/TessellateModifier.cjs.js +0 -1
- package/nodes/Nodes.cjs.js +0 -1
- package/nodes/ShaderNode.cjs.js +0 -1
- package/nodes/accessors/BufferNode.cjs.js +0 -1
- package/nodes/accessors/CameraNode.cjs.js +0 -1
- package/nodes/accessors/CubeTextureNode.cjs.js +0 -1
- package/nodes/accessors/MaterialNode.cjs.js +0 -1
- package/nodes/accessors/MaterialReferenceNode.cjs.js +0 -1
- package/nodes/accessors/ModelNode.cjs.js +0 -1
- package/nodes/accessors/ModelViewProjectionNode.cjs.js +0 -1
- package/nodes/accessors/NormalNode.cjs.js +0 -1
- package/nodes/accessors/Object3DNode.cjs.js +0 -1
- package/nodes/accessors/PointUVNode.cjs.js +0 -1
- package/nodes/accessors/PositionNode.cjs.js +0 -1
- package/nodes/accessors/ReferenceNode.cjs.js +0 -1
- package/nodes/accessors/ReflectNode.cjs.js +0 -1
- package/nodes/accessors/SkinningNode.cjs.js +0 -1
- package/nodes/accessors/TextureNode.cjs.js +0 -1
- package/nodes/accessors/UVNode.cjs.js +0 -1
- package/nodes/core/ArrayUniformNode.cjs.js +0 -1
- package/nodes/core/AttributeNode.cjs.js +0 -1
- package/nodes/core/BypassNode.cjs.js +0 -1
- package/nodes/core/CodeNode.cjs.js +0 -1
- package/nodes/core/ConstNode.cjs.js +0 -1
- package/nodes/core/ContextNode.cjs.js +0 -1
- package/nodes/core/ExpressionNode.cjs.js +0 -1
- package/nodes/core/FunctionCallNode.cjs.js +0 -1
- package/nodes/core/FunctionNode.cjs.js +0 -1
- package/nodes/core/InputNode.cjs.js +0 -1
- package/nodes/core/Node.cjs.js +0 -1
- package/nodes/core/NodeAttribute.cjs.js +0 -1
- package/nodes/core/NodeBuilder.cjs.js +0 -1
- package/nodes/core/NodeCode.cjs.js +0 -1
- package/nodes/core/NodeFrame.cjs.js +0 -1
- package/nodes/core/NodeFunction.cjs.js +0 -1
- package/nodes/core/NodeFunction.js +0 -17
- package/nodes/core/NodeFunctionInput.cjs.js +0 -1
- package/nodes/core/NodeKeywords.cjs.js +0 -1
- package/nodes/core/NodeParser.cjs.js +0 -1
- package/nodes/core/NodeParser.js +0 -8
- package/nodes/core/NodeUniform.cjs.js +0 -1
- package/nodes/core/NodeUtils.cjs.js +0 -1
- package/nodes/core/NodeVar.cjs.js +0 -1
- package/nodes/core/NodeVary.cjs.js +0 -1
- package/nodes/core/PropertyNode.cjs.js +0 -1
- package/nodes/core/TempNode.cjs.js +0 -1
- package/nodes/core/UniformNode.cjs.js +0 -1
- package/nodes/core/VarNode.cjs.js +0 -1
- package/nodes/core/VaryNode.cjs.js +0 -1
- package/nodes/core/constants.cjs.js +0 -1
- package/nodes/display/ColorSpaceNode.cjs.js +0 -1
- package/nodes/display/NormalMapNode.cjs.js +0 -1
- package/nodes/fog/FogNode.cjs.js +0 -1
- package/nodes/fog/FogRangeNode.cjs.js +0 -1
- package/nodes/functions/BSDFs.cjs.js +0 -1
- package/nodes/functions/PhysicalMaterialFunctions.cjs.js +0 -1
- package/nodes/functions/PhysicalMaterialFunctions.js +0 -57
- package/nodes/lights/LightContextNode.cjs.js +0 -1
- package/nodes/lights/LightNode.cjs.js +0 -1
- package/nodes/lights/LightsNode.cjs.js +0 -1
- package/nodes/loaders/NodeLoader.cjs.js +0 -1
- package/nodes/loaders/NodeMaterialLoader.cjs.js +0 -1
- package/nodes/loaders/NodeObjectLoader.cjs.js +0 -1
- package/nodes/materials/LineBasicNodeMaterial.cjs.js +0 -1
- package/nodes/materials/Materials.cjs.js +0 -1
- package/nodes/materials/MeshBasicNodeMaterial.cjs.js +0 -1
- package/nodes/materials/MeshStandardNodeMaterial.cjs.js +0 -1
- package/nodes/materials/NodeMaterial.cjs.js +0 -1
- package/nodes/materials/PointsNodeMaterial.cjs.js +0 -1
- package/nodes/math/CondNode.cjs.js +0 -1
- package/nodes/math/MathNode.cjs.js +0 -1
- package/nodes/math/OperatorNode.cjs.js +0 -1
- package/nodes/parsers/GLSLNodeFunction.cjs.js +0 -1
- package/nodes/parsers/GLSLNodeFunction.js +0 -101
- package/nodes/parsers/GLSLNodeParser.cjs.js +0 -1
- package/nodes/parsers/GLSLNodeParser.js +0 -13
- package/nodes/parsers/WGSLNodeFunction.cjs.js +0 -1
- package/nodes/parsers/WGSLNodeFunction.js +0 -71
- package/nodes/parsers/WGSLNodeParser.cjs.js +0 -1
- package/nodes/parsers/WGSLNodeParser.js +0 -13
- package/nodes/procedural/CheckerNode.cjs.js +0 -1
- package/nodes/utils/ArrayElementNode.cjs.js +0 -1
- package/nodes/utils/ConvertNode.cjs.js +0 -1
- package/nodes/utils/JoinNode.cjs.js +0 -1
- package/nodes/utils/MatcapUVNode.cjs.js +0 -1
- package/nodes/utils/OscNode.cjs.js +0 -1
- package/nodes/utils/SplitNode.cjs.js +0 -1
- package/nodes/utils/SpriteSheetUVNode.cjs.js +0 -1
- package/nodes/utils/TimerNode.cjs.js +0 -1
- package/objects/GroundProjectedEnv.cjs.js +0 -1
- package/objects/Lensflare.cjs.js +0 -1
- package/objects/LightningStorm.cjs.js +0 -1
- package/objects/MarchingCubes.cjs.js +0 -1
- package/objects/Reflector.cjs.js +0 -1
- package/objects/ReflectorForSSRPass.cjs.js +0 -1
- package/objects/ReflectorRTT.cjs.js +0 -1
- package/objects/Refractor.cjs.js +0 -1
- package/objects/ShadowMesh.cjs.js +0 -1
- package/objects/Sky.cjs.js +0 -1
- package/objects/Water.cjs.js +0 -1
- package/objects/Water2.cjs.js +0 -1
- package/offscreen/jank.cjs.js +0 -1
- package/offscreen/offscreen.cjs.js +0 -1
- package/offscreen/scene.cjs.js +0 -1
- package/physics/AmmoPhysics.cjs.js +0 -1
- package/postprocessing/AdaptiveToneMappingPass.cjs.js +0 -1
- package/postprocessing/AfterimagePass.cjs.js +0 -1
- package/postprocessing/BloomPass.cjs.js +0 -1
- package/postprocessing/BokehPass.cjs.js +0 -1
- package/postprocessing/ClearPass.cjs.js +0 -1
- package/postprocessing/CubeTexturePass.cjs.js +0 -1
- package/postprocessing/DotScreenPass.cjs.js +0 -1
- package/postprocessing/EffectComposer.cjs.js +0 -1
- package/postprocessing/FilmPass.cjs.js +0 -1
- package/postprocessing/GlitchPass.cjs.js +0 -1
- package/postprocessing/HalftonePass.cjs.js +0 -1
- package/postprocessing/LUTPass.cjs.js +0 -1
- package/postprocessing/MaskPass.cjs.js +0 -1
- package/postprocessing/OutlinePass.cjs.js +0 -1
- package/postprocessing/Pass.cjs.js +0 -1
- package/postprocessing/RenderPass.cjs.js +0 -1
- package/postprocessing/RenderPixelatedPass.cjs.js +0 -1
- package/postprocessing/SAOPass.cjs.js +0 -1
- package/postprocessing/SMAAPass.cjs.js +0 -1
- package/postprocessing/SSAARenderPass.cjs.js +0 -1
- package/postprocessing/SSAOPass.cjs.js +0 -1
- package/postprocessing/SSRPass.cjs.js +0 -1
- package/postprocessing/SavePass.cjs.js +0 -1
- package/postprocessing/ShaderPass.cjs.js +0 -1
- package/postprocessing/TAARenderPass.cjs.js +0 -1
- package/postprocessing/TexturePass.cjs.js +0 -1
- package/postprocessing/UnrealBloomPass.cjs.js +0 -1
- package/renderers/CSS2DRenderer.cjs.js +0 -1
- package/renderers/CSS3DRenderer.cjs.js +0 -1
- package/renderers/Projector.cjs.js +0 -1
- package/renderers/SVGRenderer.cjs.js +0 -1
- package/renderers/nodes/accessors/CameraNode.cjs.js +0 -1
- package/renderers/nodes/accessors/ModelNode.cjs.js +0 -1
- package/renderers/nodes/accessors/ModelViewProjectionNode.cjs.js +0 -1
- package/renderers/nodes/accessors/NormalNode.cjs.js +0 -1
- package/renderers/nodes/accessors/PositionNode.cjs.js +0 -1
- package/renderers/nodes/accessors/UVNode.cjs.js +0 -1
- package/renderers/nodes/core/AttributeNode.cjs.js +0 -1
- package/renderers/nodes/core/InputNode.cjs.js +0 -1
- package/renderers/nodes/core/Node.cjs.js +0 -1
- package/renderers/nodes/core/NodeAttribute.cjs.js +0 -1
- package/renderers/nodes/core/NodeBuilder.cjs.js +0 -1
- package/renderers/nodes/core/NodeFrame.cjs.js +0 -1
- package/renderers/nodes/core/NodeSlot.cjs.js +0 -1
- package/renderers/nodes/core/NodeUniform.cjs.js +0 -1
- package/renderers/nodes/core/NodeVary.cjs.js +0 -1
- package/renderers/nodes/core/VaryNode.cjs.js +0 -1
- package/renderers/nodes/core/constants.cjs.js +0 -1
- package/renderers/nodes/inputs/ColorNode.cjs.js +0 -1
- package/renderers/nodes/inputs/FloatNode.cjs.js +0 -1
- package/renderers/nodes/inputs/Matrix3Node.cjs.js +0 -1
- package/renderers/nodes/inputs/Matrix4Node.cjs.js +0 -1
- package/renderers/nodes/inputs/TextureNode.cjs.js +0 -1
- package/renderers/nodes/inputs/Vector2Node.cjs.js +0 -1
- package/renderers/nodes/inputs/Vector3Node.cjs.js +0 -1
- package/renderers/nodes/inputs/Vector4Node.cjs.js +0 -1
- package/renderers/nodes/math/MathNode.cjs.js +0 -1
- package/renderers/nodes/math/OperatorNode.cjs.js +0 -1
- package/renderers/nodes/utils/SwitchNode.cjs.js +0 -1
- package/renderers/nodes/utils/TimerNode.cjs.js +0 -1
- package/renderers/webgpu/WebGPU.cjs.js +0 -1
- package/renderers/webgpu/WebGPUAttributes.cjs.js +0 -1
- package/renderers/webgpu/WebGPUBackground.cjs.js +0 -1
- package/renderers/webgpu/WebGPUBinding.cjs.js +0 -1
- package/renderers/webgpu/WebGPUBindings.cjs.js +0 -1
- package/renderers/webgpu/WebGPUComputePipelines.cjs.js +0 -1
- package/renderers/webgpu/WebGPUGeometries.cjs.js +0 -1
- package/renderers/webgpu/WebGPUInfo.cjs.js +0 -1
- package/renderers/webgpu/WebGPUObjects.cjs.js +0 -1
- package/renderers/webgpu/WebGPUProperties.cjs.js +0 -1
- package/renderers/webgpu/WebGPURenderLists.cjs.js +0 -1
- package/renderers/webgpu/WebGPURenderPipelines.cjs.js +0 -1
- package/renderers/webgpu/WebGPURenderer.cjs.js +0 -1
- package/renderers/webgpu/WebGPUSampledTexture.cjs.js +0 -1
- package/renderers/webgpu/WebGPUSampler.cjs.js +0 -1
- package/renderers/webgpu/WebGPUStorageBuffer.cjs.js +0 -1
- package/renderers/webgpu/WebGPUTextureRenderer.cjs.js +0 -1
- package/renderers/webgpu/WebGPUTextureUtils.cjs.js +0 -1
- package/renderers/webgpu/WebGPUTextures.cjs.js +0 -1
- package/renderers/webgpu/WebGPUUniform.cjs.js +0 -1
- package/renderers/webgpu/WebGPUUniformsGroup.cjs.js +0 -1
- package/renderers/webgpu/constants.cjs.js +0 -1
- package/renderers/webgpu/nodes/ShaderLib.cjs.js +0 -1
- package/renderers/webgpu/nodes/WebGPUNodeBuilder.cjs.js +0 -1
- package/renderers/webgpu/nodes/WebGPUNodeUniform.cjs.js +0 -1
- package/renderers/webgpu/nodes/WebGPUNodeUniformsGroup.cjs.js +0 -1
- package/renderers/webgpu/nodes/WebGPUNodes.cjs.js +0 -1
- package/shaders/ACESFilmicToneMappingShader.cjs.js +0 -1
- package/shaders/AfterimageShader.cjs.js +0 -1
- package/shaders/BasicShader.cjs.js +0 -1
- package/shaders/BleachBypassShader.cjs.js +0 -1
- package/shaders/BlendShader.cjs.js +0 -1
- package/shaders/BokehShader.cjs.js +0 -1
- package/shaders/BokehShader2.cjs.js +0 -1
- package/shaders/BrightnessContrastShader.cjs.js +0 -1
- package/shaders/ColorCorrectionShader.cjs.js +0 -1
- package/shaders/ColorifyShader.cjs.js +0 -1
- package/shaders/ConvolutionShader.cjs.js +0 -1
- package/shaders/CopyShader.cjs.js +0 -1
- package/shaders/DOFMipMapShader.cjs.js +0 -1
- package/shaders/DepthLimitedBlurShader.cjs.js +0 -1
- package/shaders/DigitalGlitch.cjs.js +0 -1
- package/shaders/DotScreenShader.cjs.js +0 -1
- package/shaders/FXAAShader.cjs.js +0 -1
- package/shaders/FilmShader.cjs.js +0 -1
- package/shaders/FocusShader.cjs.js +0 -1
- package/shaders/FreiChenShader.cjs.js +0 -1
- package/shaders/FresnelShader.cjs.js +0 -1
- package/shaders/GammaCorrectionShader.cjs.js +0 -1
- package/shaders/GodRaysShader.cjs.js +0 -1
- package/shaders/HalftoneShader.cjs.js +0 -1
- package/shaders/HorizontalBlurShader.cjs.js +0 -1
- package/shaders/HorizontalTiltShiftShader.cjs.js +0 -1
- package/shaders/HueSaturationShader.cjs.js +0 -1
- package/shaders/KaleidoShader.cjs.js +0 -1
- package/shaders/LuminosityHighPassShader.cjs.js +0 -1
- package/shaders/LuminosityShader.cjs.js +0 -1
- package/shaders/MirrorShader.cjs.js +0 -1
- package/shaders/NormalMapShader.cjs.js +0 -1
- package/shaders/ParallaxShader.cjs.js +0 -1
- package/shaders/PixelShader.cjs.js +0 -1
- package/shaders/RGBShiftShader.cjs.js +0 -1
- package/shaders/SAOShader.cjs.js +0 -1
- package/shaders/SMAAShader.cjs.js +0 -1
- package/shaders/SSAOShader.cjs.js +0 -1
- package/shaders/SSRShader.cjs.js +0 -1
- package/shaders/SepiaShader.cjs.js +0 -1
- package/shaders/SobelOperatorShader.cjs.js +0 -1
- package/shaders/SubsurfaceScatteringShader.cjs.js +0 -1
- package/shaders/TechnicolorShader.cjs.js +0 -1
- package/shaders/ToneMapShader.cjs.js +0 -1
- package/shaders/ToonShader.cjs.js +0 -1
- package/shaders/TriangleBlurShader.cjs.js +0 -1
- package/shaders/UnpackDepthRGBAShader.cjs.js +0 -1
- package/shaders/VerticalBlurShader.cjs.js +0 -1
- package/shaders/VerticalTiltShiftShader.cjs.js +0 -1
- package/shaders/VignetteShader.cjs.js +0 -1
- package/shaders/VolumeShader.cjs.js +0 -1
- package/shaders/WaterRefractionShader.cjs.js +0 -1
- package/shaders/index.cjs.js +0 -1
- package/shaders/index.d.ts +0 -54
- package/shaders/index.js +0 -53
- package/shaders/types.cjs.js +0 -1
- package/textures/FlakesTexture.cjs.js +0 -1
- package/types/helpers.cjs.js +0 -1
- package/types/shared.cjs.js +0 -1
- package/types/shared.js +0 -1
- package/types/utils.cjs.js +0 -1
- package/types/utils.js +0 -1
- package/utils/BufferGeometryUtils.cjs.js +0 -1
- package/utils/GeometryCompressionUtils.cjs.js +0 -1
- package/utils/GeometryUtils.cjs.js +0 -1
- package/utils/LDrawUtils.cjs.js +0 -1
- package/utils/LDrawUtils.d.ts +0 -5
- package/utils/LDrawUtils.js +0 -144
- package/utils/RoughnessMipmapper.cjs.js +0 -1
- package/utils/SceneUtils.cjs.js +0 -1
- package/utils/ShadowMapViewer.cjs.js +0 -1
- package/utils/SkeletonUtils.cjs.js +0 -1
- package/utils/UVsDebug.cjs.js +0 -1
- package/utils/WorkerPool.cjs.js +0 -1
- package/webxr/ARButton.cjs.js +0 -1
- package/webxr/OculusHandModel.cjs.js +0 -1
- package/webxr/OculusHandPointerModel.cjs.js +0 -1
- package/webxr/Text2D.cjs.js +0 -1
- package/webxr/VRButton.cjs.js +0 -1
- package/webxr/XRControllerModelFactory.cjs.js +0 -1
- package/webxr/XREstimatedLight.cjs.js +0 -1
- package/webxr/XRHandMeshModel.cjs.js +0 -1
- package/webxr/XRHandModelFactory.cjs.js +0 -1
- package/webxr/XRHandPrimitiveModel.cjs.js +0 -1
|
@@ -1,166 +1,56 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
// Unlike TrackballControls, it maintains the "up" direction object.up (+Y by default).
|
|
5
|
-
//
|
|
6
|
-
// Orbit - left mouse / touch: one-finger move
|
|
7
|
-
// Zoom - middle mouse, or mousewheel / touch: two-finger spread or squish
|
|
8
|
-
// Pan - right mouse, or left mouse + ctrl/meta/shiftKey, or arrow keys / touch: two-finger move
|
|
9
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
+
const THREE = require("three");
|
|
10
4
|
const moduloWrapAround = (offset, capacity) => (offset % capacity + capacity) % capacity;
|
|
11
|
-
|
|
12
|
-
class OrbitControls extends EventDispatcher {
|
|
13
|
-
// Set to false to disable this control
|
|
14
|
-
// "target" sets the location of focus, where the object orbits around
|
|
15
|
-
// How far you can dolly in and out ( PerspectiveCamera only )
|
|
16
|
-
// How far you can zoom in and out ( OrthographicCamera only )
|
|
17
|
-
// How far you can orbit vertically, upper and lower limits.
|
|
18
|
-
// Range is 0 to Math.PI radians.
|
|
19
|
-
// radians
|
|
20
|
-
// radians
|
|
21
|
-
// How far you can orbit horizontally, upper and lower limits.
|
|
22
|
-
// If set, the interval [ min, max ] must be a sub-interval of [ - 2 PI, 2 PI ], with ( max - min < 2 PI )
|
|
23
|
-
// radians
|
|
24
|
-
// radians
|
|
25
|
-
// Set to true to enable damping (inertia)
|
|
26
|
-
// If damping is enabled, you must call controls.update() in your animation loop
|
|
27
|
-
// This option actually enables dollying in and out; left as "zoom" for backwards compatibility.
|
|
28
|
-
// Set to false to disable zooming
|
|
29
|
-
// Set to false to disable rotating
|
|
30
|
-
// Set to false to disable panning
|
|
31
|
-
// if false, pan orthogonal to world-space direction camera.up
|
|
32
|
-
// pixels moved per arrow key push
|
|
33
|
-
// Set to true to automatically rotate around the target
|
|
34
|
-
// If auto-rotate is enabled, you must call controls.update() in your animation loop
|
|
35
|
-
// 30 seconds per orbit when fps is 60
|
|
36
|
-
// true if you want to reverse the orbit to mouse drag from left to right = orbits left
|
|
37
|
-
// The four arrow keys
|
|
38
|
-
// Mouse buttons
|
|
39
|
-
// Touch fingers
|
|
40
|
-
// the target DOM element for key events
|
|
5
|
+
class OrbitControls extends THREE.EventDispatcher {
|
|
41
6
|
constructor(object, domElement) {
|
|
42
7
|
super();
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
_defineProperty(this, "zoomSpeed", 1.0);
|
|
75
|
-
|
|
76
|
-
_defineProperty(this, "enableRotate", true);
|
|
77
|
-
|
|
78
|
-
_defineProperty(this, "rotateSpeed", 1.0);
|
|
79
|
-
|
|
80
|
-
_defineProperty(this, "enablePan", true);
|
|
81
|
-
|
|
82
|
-
_defineProperty(this, "panSpeed", 1.0);
|
|
83
|
-
|
|
84
|
-
_defineProperty(this, "screenSpacePanning", true);
|
|
85
|
-
|
|
86
|
-
_defineProperty(this, "keyPanSpeed", 7.0);
|
|
87
|
-
|
|
88
|
-
_defineProperty(this, "autoRotate", false);
|
|
89
|
-
|
|
90
|
-
_defineProperty(this, "autoRotateSpeed", 2.0);
|
|
91
|
-
|
|
92
|
-
_defineProperty(this, "reverseOrbit", false);
|
|
93
|
-
|
|
94
|
-
_defineProperty(this, "keys", {
|
|
95
|
-
LEFT: 'ArrowLeft',
|
|
96
|
-
UP: 'ArrowUp',
|
|
97
|
-
RIGHT: 'ArrowRight',
|
|
98
|
-
BOTTOM: 'ArrowDown'
|
|
99
|
-
});
|
|
100
|
-
|
|
101
|
-
_defineProperty(this, "mouseButtons", {
|
|
102
|
-
LEFT: MOUSE.ROTATE,
|
|
103
|
-
MIDDLE: MOUSE.DOLLY,
|
|
104
|
-
RIGHT: MOUSE.PAN
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
_defineProperty(this, "touches", {
|
|
108
|
-
ONE: TOUCH.ROTATE,
|
|
109
|
-
TWO: TOUCH.DOLLY_PAN
|
|
110
|
-
});
|
|
111
|
-
|
|
112
|
-
_defineProperty(this, "target0", void 0);
|
|
113
|
-
|
|
114
|
-
_defineProperty(this, "position0", void 0);
|
|
115
|
-
|
|
116
|
-
_defineProperty(this, "zoom0", void 0);
|
|
117
|
-
|
|
118
|
-
_defineProperty(this, "_domElementKeyEvents", null);
|
|
119
|
-
|
|
120
|
-
_defineProperty(this, "getPolarAngle", void 0);
|
|
121
|
-
|
|
122
|
-
_defineProperty(this, "getAzimuthalAngle", void 0);
|
|
123
|
-
|
|
124
|
-
_defineProperty(this, "setPolarAngle", void 0);
|
|
125
|
-
|
|
126
|
-
_defineProperty(this, "setAzimuthalAngle", void 0);
|
|
127
|
-
|
|
128
|
-
_defineProperty(this, "getDistance", void 0);
|
|
129
|
-
|
|
130
|
-
_defineProperty(this, "listenToKeyEvents", void 0);
|
|
131
|
-
|
|
132
|
-
_defineProperty(this, "saveState", void 0);
|
|
133
|
-
|
|
134
|
-
_defineProperty(this, "reset", void 0);
|
|
135
|
-
|
|
136
|
-
_defineProperty(this, "update", void 0);
|
|
137
|
-
|
|
138
|
-
_defineProperty(this, "connect", void 0);
|
|
139
|
-
|
|
140
|
-
_defineProperty(this, "dispose", void 0);
|
|
141
|
-
|
|
8
|
+
this.enabled = true;
|
|
9
|
+
this.target = new THREE.Vector3();
|
|
10
|
+
this.minDistance = 0;
|
|
11
|
+
this.maxDistance = Infinity;
|
|
12
|
+
this.minZoom = 0;
|
|
13
|
+
this.maxZoom = Infinity;
|
|
14
|
+
this.minPolarAngle = 0;
|
|
15
|
+
this.maxPolarAngle = Math.PI;
|
|
16
|
+
this.minAzimuthAngle = -Infinity;
|
|
17
|
+
this.maxAzimuthAngle = Infinity;
|
|
18
|
+
this.enableDamping = false;
|
|
19
|
+
this.dampingFactor = 0.05;
|
|
20
|
+
this.enableZoom = true;
|
|
21
|
+
this.zoomSpeed = 1;
|
|
22
|
+
this.enableRotate = true;
|
|
23
|
+
this.rotateSpeed = 1;
|
|
24
|
+
this.enablePan = true;
|
|
25
|
+
this.panSpeed = 1;
|
|
26
|
+
this.screenSpacePanning = true;
|
|
27
|
+
this.keyPanSpeed = 7;
|
|
28
|
+
this.autoRotate = false;
|
|
29
|
+
this.autoRotateSpeed = 2;
|
|
30
|
+
this.reverseOrbit = false;
|
|
31
|
+
this.keys = { LEFT: "ArrowLeft", UP: "ArrowUp", RIGHT: "ArrowRight", BOTTOM: "ArrowDown" };
|
|
32
|
+
this.mouseButtons = {
|
|
33
|
+
LEFT: THREE.MOUSE.ROTATE,
|
|
34
|
+
MIDDLE: THREE.MOUSE.DOLLY,
|
|
35
|
+
RIGHT: THREE.MOUSE.PAN
|
|
36
|
+
};
|
|
37
|
+
this.touches = { ONE: THREE.TOUCH.ROTATE, TWO: THREE.TOUCH.DOLLY_PAN };
|
|
38
|
+
this._domElementKeyEvents = null;
|
|
142
39
|
this.object = object;
|
|
143
|
-
this.domElement = domElement;
|
|
144
|
-
|
|
40
|
+
this.domElement = domElement;
|
|
145
41
|
this.target0 = this.target.clone();
|
|
146
42
|
this.position0 = this.object.position.clone();
|
|
147
|
-
this.zoom0 = this.object instanceof PerspectiveCamera ? this.object.zoom : 1;
|
|
148
|
-
// public methods
|
|
149
|
-
//
|
|
150
|
-
|
|
43
|
+
this.zoom0 = this.object instanceof THREE.PerspectiveCamera ? this.object.zoom : 1;
|
|
151
44
|
this.getPolarAngle = () => spherical.phi;
|
|
152
|
-
|
|
153
45
|
this.getAzimuthalAngle = () => spherical.theta;
|
|
154
|
-
|
|
155
|
-
this.setPolarAngle = value => {
|
|
156
|
-
// use modulo wrapping to safeguard value
|
|
46
|
+
this.setPolarAngle = (value) => {
|
|
157
47
|
let phi = moduloWrapAround(value, 2 * Math.PI);
|
|
158
|
-
let currentPhi = spherical.phi;
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
if (phi < 0)
|
|
48
|
+
let currentPhi = spherical.phi;
|
|
49
|
+
if (currentPhi < 0)
|
|
50
|
+
currentPhi += 2 * Math.PI;
|
|
51
|
+
if (phi < 0)
|
|
52
|
+
phi += 2 * Math.PI;
|
|
162
53
|
let phiDist = Math.abs(phi - currentPhi);
|
|
163
|
-
|
|
164
54
|
if (2 * Math.PI - phiDist < phiDist) {
|
|
165
55
|
if (phi < currentPhi) {
|
|
166
56
|
phi += 2 * Math.PI;
|
|
@@ -168,20 +58,17 @@ class OrbitControls extends EventDispatcher {
|
|
|
168
58
|
currentPhi += 2 * Math.PI;
|
|
169
59
|
}
|
|
170
60
|
}
|
|
171
|
-
|
|
172
61
|
sphericalDelta.phi = phi - currentPhi;
|
|
173
62
|
scope.update();
|
|
174
63
|
};
|
|
175
|
-
|
|
176
|
-
this.setAzimuthalAngle = value => {
|
|
177
|
-
// use modulo wrapping to safeguard value
|
|
64
|
+
this.setAzimuthalAngle = (value) => {
|
|
178
65
|
let theta = moduloWrapAround(value, 2 * Math.PI);
|
|
179
|
-
let currentTheta = spherical.theta;
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
if (theta < 0)
|
|
66
|
+
let currentTheta = spherical.theta;
|
|
67
|
+
if (currentTheta < 0)
|
|
68
|
+
currentTheta += 2 * Math.PI;
|
|
69
|
+
if (theta < 0)
|
|
70
|
+
theta += 2 * Math.PI;
|
|
183
71
|
let thetaDist = Math.abs(theta - currentTheta);
|
|
184
|
-
|
|
185
72
|
if (2 * Math.PI - thetaDist < thetaDist) {
|
|
186
73
|
if (theta < currentTheta) {
|
|
187
74
|
theta += 2 * Math.PI;
|
|
@@ -189,101 +76,82 @@ class OrbitControls extends EventDispatcher {
|
|
|
189
76
|
currentTheta += 2 * Math.PI;
|
|
190
77
|
}
|
|
191
78
|
}
|
|
192
|
-
|
|
193
79
|
sphericalDelta.theta = theta - currentTheta;
|
|
194
80
|
scope.update();
|
|
195
81
|
};
|
|
196
|
-
|
|
197
82
|
this.getDistance = () => scope.object.position.distanceTo(scope.target);
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
this._domElementKeyEvents = domElement;
|
|
83
|
+
this.listenToKeyEvents = (domElement2) => {
|
|
84
|
+
domElement2.addEventListener("keydown", onKeyDown);
|
|
85
|
+
this._domElementKeyEvents = domElement2;
|
|
202
86
|
};
|
|
203
|
-
|
|
204
87
|
this.saveState = () => {
|
|
205
88
|
scope.target0.copy(scope.target);
|
|
206
89
|
scope.position0.copy(scope.object.position);
|
|
207
|
-
scope.zoom0 = scope.object instanceof PerspectiveCamera ? scope.object.zoom : 1;
|
|
90
|
+
scope.zoom0 = scope.object instanceof THREE.PerspectiveCamera ? scope.object.zoom : 1;
|
|
208
91
|
};
|
|
209
|
-
|
|
210
92
|
this.reset = () => {
|
|
211
93
|
scope.target.copy(scope.target0);
|
|
212
94
|
scope.object.position.copy(scope.position0);
|
|
213
|
-
|
|
214
|
-
if (scope.object instanceof PerspectiveCamera) {
|
|
95
|
+
if (scope.object instanceof THREE.PerspectiveCamera) {
|
|
215
96
|
scope.object.zoom = scope.zoom0;
|
|
216
97
|
scope.object.updateProjectionMatrix();
|
|
217
98
|
}
|
|
218
|
-
|
|
219
99
|
scope.dispatchEvent(changeEvent);
|
|
220
100
|
scope.update();
|
|
221
101
|
state = STATE.NONE;
|
|
222
|
-
};
|
|
223
|
-
|
|
224
|
-
|
|
102
|
+
};
|
|
225
103
|
this.update = (() => {
|
|
226
|
-
const offset = new Vector3();
|
|
227
|
-
|
|
228
|
-
const quat = new Quaternion().setFromUnitVectors(object.up, new Vector3(0, 1, 0));
|
|
104
|
+
const offset = new THREE.Vector3();
|
|
105
|
+
const quat = new THREE.Quaternion().setFromUnitVectors(object.up, new THREE.Vector3(0, 1, 0));
|
|
229
106
|
const quatInverse = quat.clone().invert();
|
|
230
|
-
const lastPosition = new Vector3();
|
|
231
|
-
const lastQuaternion = new Quaternion();
|
|
107
|
+
const lastPosition = new THREE.Vector3();
|
|
108
|
+
const lastQuaternion = new THREE.Quaternion();
|
|
232
109
|
const twoPI = 2 * Math.PI;
|
|
233
110
|
return function update() {
|
|
234
111
|
const position = scope.object.position;
|
|
235
|
-
offset.copy(position).sub(scope.target);
|
|
236
|
-
|
|
237
|
-
offset.applyQuaternion(quat); // angle from z-axis around y-axis
|
|
238
|
-
|
|
112
|
+
offset.copy(position).sub(scope.target);
|
|
113
|
+
offset.applyQuaternion(quat);
|
|
239
114
|
spherical.setFromVector3(offset);
|
|
240
|
-
|
|
241
115
|
if (scope.autoRotate && state === STATE.NONE) {
|
|
242
116
|
rotateLeft(getAutoRotationAngle());
|
|
243
117
|
}
|
|
244
|
-
|
|
245
118
|
if (scope.enableDamping) {
|
|
246
119
|
spherical.theta += sphericalDelta.theta * scope.dampingFactor;
|
|
247
120
|
spherical.phi += sphericalDelta.phi * scope.dampingFactor;
|
|
248
121
|
} else {
|
|
249
122
|
spherical.theta += sphericalDelta.theta;
|
|
250
123
|
spherical.phi += sphericalDelta.phi;
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
|
|
124
|
+
}
|
|
254
125
|
let min = scope.minAzimuthAngle;
|
|
255
126
|
let max = scope.maxAzimuthAngle;
|
|
256
|
-
|
|
257
127
|
if (isFinite(min) && isFinite(max)) {
|
|
258
|
-
if (min < -Math.PI)
|
|
259
|
-
|
|
260
|
-
|
|
128
|
+
if (min < -Math.PI)
|
|
129
|
+
min += twoPI;
|
|
130
|
+
else if (min > Math.PI)
|
|
131
|
+
min -= twoPI;
|
|
132
|
+
if (max < -Math.PI)
|
|
133
|
+
max += twoPI;
|
|
134
|
+
else if (max > Math.PI)
|
|
135
|
+
max -= twoPI;
|
|
261
136
|
if (min <= max) {
|
|
262
137
|
spherical.theta = Math.max(min, Math.min(max, spherical.theta));
|
|
263
138
|
} else {
|
|
264
139
|
spherical.theta = spherical.theta > (min + max) / 2 ? Math.max(min, spherical.theta) : Math.min(max, spherical.theta);
|
|
265
140
|
}
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
|
|
141
|
+
}
|
|
269
142
|
spherical.phi = Math.max(scope.minPolarAngle, Math.min(scope.maxPolarAngle, spherical.phi));
|
|
270
143
|
spherical.makeSafe();
|
|
271
|
-
spherical.radius *= scale;
|
|
272
|
-
|
|
273
|
-
spherical.radius = Math.max(scope.minDistance, Math.min(scope.maxDistance, spherical.radius)); // move target to panned location
|
|
274
|
-
|
|
144
|
+
spherical.radius *= scale;
|
|
145
|
+
spherical.radius = Math.max(scope.minDistance, Math.min(scope.maxDistance, spherical.radius));
|
|
275
146
|
if (scope.enableDamping === true) {
|
|
276
147
|
scope.target.addScaledVector(panOffset, scope.dampingFactor);
|
|
277
148
|
} else {
|
|
278
149
|
scope.target.add(panOffset);
|
|
279
150
|
}
|
|
280
|
-
|
|
281
|
-
offset.setFromSpherical(spherical); // rotate offset back to "camera-up-vector-is-up" space
|
|
282
|
-
|
|
151
|
+
offset.setFromSpherical(spherical);
|
|
283
152
|
offset.applyQuaternion(quatInverse);
|
|
284
153
|
position.copy(scope.target).add(offset);
|
|
285
154
|
scope.object.lookAt(scope.target);
|
|
286
|
-
|
|
287
155
|
if (scope.enableDamping === true) {
|
|
288
156
|
sphericalDelta.theta *= 1 - scope.dampingFactor;
|
|
289
157
|
sphericalDelta.phi *= 1 - scope.dampingFactor;
|
|
@@ -292,11 +160,7 @@ class OrbitControls extends EventDispatcher {
|
|
|
292
160
|
sphericalDelta.set(0, 0, 0);
|
|
293
161
|
panOffset.set(0, 0, 0);
|
|
294
162
|
}
|
|
295
|
-
|
|
296
|
-
scale = 1; // update condition is:
|
|
297
|
-
// min(camera displacement, camera rotation in radians)^2 > EPS
|
|
298
|
-
// using small-angle approximation cos(x/2) = 1 - x^2 / 8
|
|
299
|
-
|
|
163
|
+
scale = 1;
|
|
300
164
|
if (zoomChanged || lastPosition.distanceToSquared(scope.object.position) > EPS || 8 * (1 - lastQuaternion.dot(scope.object.quaternion)) > EPS) {
|
|
301
165
|
scope.dispatchEvent(changeEvent);
|
|
302
166
|
lastPosition.copy(scope.object.position);
|
|
@@ -304,57 +168,38 @@ class OrbitControls extends EventDispatcher {
|
|
|
304
168
|
zoomChanged = false;
|
|
305
169
|
return true;
|
|
306
170
|
}
|
|
307
|
-
|
|
308
171
|
return false;
|
|
309
172
|
};
|
|
310
|
-
})();
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
}
|
|
317
|
-
|
|
318
|
-
scope.domElement =
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
scope.domElement.
|
|
323
|
-
scope.domElement.addEventListener('contextmenu', onContextMenu);
|
|
324
|
-
scope.domElement.addEventListener('pointerdown', onPointerDown);
|
|
325
|
-
scope.domElement.addEventListener('pointercancel', onPointerCancel);
|
|
326
|
-
scope.domElement.addEventListener('wheel', onMouseWheel);
|
|
173
|
+
})();
|
|
174
|
+
this.connect = (domElement2) => {
|
|
175
|
+
if (domElement2 === document) {
|
|
176
|
+
console.error(
|
|
177
|
+
'THREE.OrbitControls: "document" should not be used as the target "domElement". Please use "renderer.domElement" instead.'
|
|
178
|
+
);
|
|
179
|
+
}
|
|
180
|
+
scope.domElement = domElement2;
|
|
181
|
+
scope.domElement.style.touchAction = "none";
|
|
182
|
+
scope.domElement.addEventListener("contextmenu", onContextMenu);
|
|
183
|
+
scope.domElement.addEventListener("pointerdown", onPointerDown);
|
|
184
|
+
scope.domElement.addEventListener("pointercancel", onPointerCancel);
|
|
185
|
+
scope.domElement.addEventListener("wheel", onMouseWheel);
|
|
327
186
|
};
|
|
328
|
-
|
|
329
187
|
this.dispose = () => {
|
|
330
|
-
var
|
|
331
|
-
|
|
332
|
-
(
|
|
333
|
-
(
|
|
334
|
-
(
|
|
335
|
-
(
|
|
336
|
-
(
|
|
337
|
-
(_scope$domElement6 = scope.domElement) === null || _scope$domElement6 === void 0 ? void 0 : _scope$domElement6.ownerDocument.removeEventListener('pointerup', onPointerUp);
|
|
338
|
-
|
|
188
|
+
var _a, _b, _c, _d, _e, _f;
|
|
189
|
+
(_a = scope.domElement) == null ? void 0 : _a.removeEventListener("contextmenu", onContextMenu);
|
|
190
|
+
(_b = scope.domElement) == null ? void 0 : _b.removeEventListener("pointerdown", onPointerDown);
|
|
191
|
+
(_c = scope.domElement) == null ? void 0 : _c.removeEventListener("pointercancel", onPointerCancel);
|
|
192
|
+
(_d = scope.domElement) == null ? void 0 : _d.removeEventListener("wheel", onMouseWheel);
|
|
193
|
+
(_e = scope.domElement) == null ? void 0 : _e.ownerDocument.removeEventListener("pointermove", onPointerMove);
|
|
194
|
+
(_f = scope.domElement) == null ? void 0 : _f.ownerDocument.removeEventListener("pointerup", onPointerUp);
|
|
339
195
|
if (scope._domElementKeyEvents !== null) {
|
|
340
|
-
scope._domElementKeyEvents.removeEventListener(
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
}; //
|
|
344
|
-
// internals
|
|
345
|
-
//
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
const scope = this;
|
|
349
|
-
const changeEvent = {
|
|
350
|
-
type: 'change'
|
|
351
|
-
};
|
|
352
|
-
const startEvent = {
|
|
353
|
-
type: 'start'
|
|
354
|
-
};
|
|
355
|
-
const endEvent = {
|
|
356
|
-
type: 'end'
|
|
196
|
+
scope._domElementKeyEvents.removeEventListener("keydown", onKeyDown);
|
|
197
|
+
}
|
|
357
198
|
};
|
|
199
|
+
const scope = this;
|
|
200
|
+
const changeEvent = { type: "change" };
|
|
201
|
+
const startEvent = { type: "start" };
|
|
202
|
+
const endEvent = { type: "end" };
|
|
358
203
|
const STATE = {
|
|
359
204
|
NONE: -1,
|
|
360
205
|
ROTATE: 0,
|
|
@@ -366,33 +211,29 @@ class OrbitControls extends EventDispatcher {
|
|
|
366
211
|
TOUCH_DOLLY_ROTATE: 6
|
|
367
212
|
};
|
|
368
213
|
let state = STATE.NONE;
|
|
369
|
-
const EPS =
|
|
370
|
-
|
|
371
|
-
const
|
|
372
|
-
const sphericalDelta = new Spherical();
|
|
214
|
+
const EPS = 1e-6;
|
|
215
|
+
const spherical = new THREE.Spherical();
|
|
216
|
+
const sphericalDelta = new THREE.Spherical();
|
|
373
217
|
let scale = 1;
|
|
374
|
-
const panOffset = new Vector3();
|
|
218
|
+
const panOffset = new THREE.Vector3();
|
|
375
219
|
let zoomChanged = false;
|
|
376
|
-
const rotateStart = new Vector2();
|
|
377
|
-
const rotateEnd = new Vector2();
|
|
378
|
-
const rotateDelta = new Vector2();
|
|
379
|
-
const panStart = new Vector2();
|
|
380
|
-
const panEnd = new Vector2();
|
|
381
|
-
const panDelta = new Vector2();
|
|
382
|
-
const dollyStart = new Vector2();
|
|
383
|
-
const dollyEnd = new Vector2();
|
|
384
|
-
const dollyDelta = new Vector2();
|
|
220
|
+
const rotateStart = new THREE.Vector2();
|
|
221
|
+
const rotateEnd = new THREE.Vector2();
|
|
222
|
+
const rotateDelta = new THREE.Vector2();
|
|
223
|
+
const panStart = new THREE.Vector2();
|
|
224
|
+
const panEnd = new THREE.Vector2();
|
|
225
|
+
const panDelta = new THREE.Vector2();
|
|
226
|
+
const dollyStart = new THREE.Vector2();
|
|
227
|
+
const dollyEnd = new THREE.Vector2();
|
|
228
|
+
const dollyDelta = new THREE.Vector2();
|
|
385
229
|
const pointers = [];
|
|
386
230
|
const pointerPositions = {};
|
|
387
|
-
|
|
388
231
|
function getAutoRotationAngle() {
|
|
389
232
|
return 2 * Math.PI / 60 / 60 * scope.autoRotateSpeed;
|
|
390
233
|
}
|
|
391
|
-
|
|
392
234
|
function getZoomScale() {
|
|
393
235
|
return Math.pow(0.95, scope.zoomSpeed);
|
|
394
236
|
}
|
|
395
|
-
|
|
396
237
|
function rotateLeft(angle) {
|
|
397
238
|
if (scope.reverseOrbit) {
|
|
398
239
|
sphericalDelta.theta += angle;
|
|
@@ -400,7 +241,6 @@ class OrbitControls extends EventDispatcher {
|
|
|
400
241
|
sphericalDelta.theta -= angle;
|
|
401
242
|
}
|
|
402
243
|
}
|
|
403
|
-
|
|
404
244
|
function rotateUp(angle) {
|
|
405
245
|
if (scope.reverseOrbit) {
|
|
406
246
|
sphericalDelta.phi += angle;
|
|
@@ -408,130 +248,108 @@ class OrbitControls extends EventDispatcher {
|
|
|
408
248
|
sphericalDelta.phi -= angle;
|
|
409
249
|
}
|
|
410
250
|
}
|
|
411
|
-
|
|
412
251
|
const panLeft = (() => {
|
|
413
|
-
const v = new Vector3();
|
|
414
|
-
return function
|
|
415
|
-
v.setFromMatrixColumn(objectMatrix, 0);
|
|
416
|
-
|
|
252
|
+
const v = new THREE.Vector3();
|
|
253
|
+
return function panLeft2(distance, objectMatrix) {
|
|
254
|
+
v.setFromMatrixColumn(objectMatrix, 0);
|
|
417
255
|
v.multiplyScalar(-distance);
|
|
418
256
|
panOffset.add(v);
|
|
419
257
|
};
|
|
420
258
|
})();
|
|
421
|
-
|
|
422
259
|
const panUp = (() => {
|
|
423
|
-
const v = new Vector3();
|
|
424
|
-
return function
|
|
260
|
+
const v = new THREE.Vector3();
|
|
261
|
+
return function panUp2(distance, objectMatrix) {
|
|
425
262
|
if (scope.screenSpacePanning === true) {
|
|
426
263
|
v.setFromMatrixColumn(objectMatrix, 1);
|
|
427
264
|
} else {
|
|
428
265
|
v.setFromMatrixColumn(objectMatrix, 0);
|
|
429
266
|
v.crossVectors(scope.object.up, v);
|
|
430
267
|
}
|
|
431
|
-
|
|
432
268
|
v.multiplyScalar(distance);
|
|
433
269
|
panOffset.add(v);
|
|
434
270
|
};
|
|
435
|
-
})();
|
|
436
|
-
|
|
437
|
-
|
|
271
|
+
})();
|
|
438
272
|
const pan = (() => {
|
|
439
|
-
const offset = new Vector3();
|
|
440
|
-
return function
|
|
273
|
+
const offset = new THREE.Vector3();
|
|
274
|
+
return function pan2(deltaX, deltaY) {
|
|
441
275
|
const element = scope.domElement;
|
|
442
|
-
|
|
443
|
-
if (element && scope.object instanceof PerspectiveCamera && scope.object.isPerspectiveCamera) {
|
|
444
|
-
// perspective
|
|
276
|
+
if (element && scope.object instanceof THREE.PerspectiveCamera && scope.object.isPerspectiveCamera) {
|
|
445
277
|
const position = scope.object.position;
|
|
446
278
|
offset.copy(position).sub(scope.target);
|
|
447
|
-
let targetDistance = offset.length();
|
|
448
|
-
|
|
449
|
-
targetDistance *= Math.tan(scope.object.fov / 2 * Math.PI / 180.0); // we use only clientHeight here so aspect ratio does not distort speed
|
|
450
|
-
|
|
279
|
+
let targetDistance = offset.length();
|
|
280
|
+
targetDistance *= Math.tan(scope.object.fov / 2 * Math.PI / 180);
|
|
451
281
|
panLeft(2 * deltaX * targetDistance / element.clientHeight, scope.object.matrix);
|
|
452
282
|
panUp(2 * deltaY * targetDistance / element.clientHeight, scope.object.matrix);
|
|
453
|
-
} else if (element && scope.object instanceof OrthographicCamera && scope.object.isOrthographicCamera) {
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
283
|
+
} else if (element && scope.object instanceof THREE.OrthographicCamera && scope.object.isOrthographicCamera) {
|
|
284
|
+
panLeft(
|
|
285
|
+
deltaX * (scope.object.right - scope.object.left) / scope.object.zoom / element.clientWidth,
|
|
286
|
+
scope.object.matrix
|
|
287
|
+
);
|
|
288
|
+
panUp(
|
|
289
|
+
deltaY * (scope.object.top - scope.object.bottom) / scope.object.zoom / element.clientHeight,
|
|
290
|
+
scope.object.matrix
|
|
291
|
+
);
|
|
457
292
|
} else {
|
|
458
|
-
|
|
459
|
-
console.warn('WARNING: OrbitControls.js encountered an unknown camera type - pan disabled.');
|
|
293
|
+
console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled.");
|
|
460
294
|
scope.enablePan = false;
|
|
461
295
|
}
|
|
462
296
|
};
|
|
463
297
|
})();
|
|
464
|
-
|
|
465
298
|
function dollyOut(dollyScale) {
|
|
466
|
-
if (scope.object instanceof PerspectiveCamera && scope.object.isPerspectiveCamera) {
|
|
299
|
+
if (scope.object instanceof THREE.PerspectiveCamera && scope.object.isPerspectiveCamera) {
|
|
467
300
|
scale /= dollyScale;
|
|
468
|
-
} else if (scope.object instanceof OrthographicCamera && scope.object.isOrthographicCamera) {
|
|
301
|
+
} else if (scope.object instanceof THREE.OrthographicCamera && scope.object.isOrthographicCamera) {
|
|
469
302
|
scope.object.zoom = Math.max(scope.minZoom, Math.min(scope.maxZoom, scope.object.zoom * dollyScale));
|
|
470
303
|
scope.object.updateProjectionMatrix();
|
|
471
304
|
zoomChanged = true;
|
|
472
305
|
} else {
|
|
473
|
-
console.warn(
|
|
306
|
+
console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.");
|
|
474
307
|
scope.enableZoom = false;
|
|
475
308
|
}
|
|
476
309
|
}
|
|
477
|
-
|
|
478
310
|
function dollyIn(dollyScale) {
|
|
479
|
-
if (scope.object instanceof PerspectiveCamera && scope.object.isPerspectiveCamera) {
|
|
311
|
+
if (scope.object instanceof THREE.PerspectiveCamera && scope.object.isPerspectiveCamera) {
|
|
480
312
|
scale *= dollyScale;
|
|
481
|
-
} else if (scope.object instanceof OrthographicCamera && scope.object.isOrthographicCamera) {
|
|
313
|
+
} else if (scope.object instanceof THREE.OrthographicCamera && scope.object.isOrthographicCamera) {
|
|
482
314
|
scope.object.zoom = Math.max(scope.minZoom, Math.min(scope.maxZoom, scope.object.zoom / dollyScale));
|
|
483
315
|
scope.object.updateProjectionMatrix();
|
|
484
316
|
zoomChanged = true;
|
|
485
317
|
} else {
|
|
486
|
-
console.warn(
|
|
318
|
+
console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.");
|
|
487
319
|
scope.enableZoom = false;
|
|
488
320
|
}
|
|
489
|
-
}
|
|
490
|
-
// event callbacks - update the object state
|
|
491
|
-
//
|
|
492
|
-
|
|
493
|
-
|
|
321
|
+
}
|
|
494
322
|
function handleMouseDownRotate(event) {
|
|
495
323
|
rotateStart.set(event.clientX, event.clientY);
|
|
496
324
|
}
|
|
497
|
-
|
|
498
325
|
function handleMouseDownDolly(event) {
|
|
499
326
|
dollyStart.set(event.clientX, event.clientY);
|
|
500
327
|
}
|
|
501
|
-
|
|
502
328
|
function handleMouseDownPan(event) {
|
|
503
329
|
panStart.set(event.clientX, event.clientY);
|
|
504
330
|
}
|
|
505
|
-
|
|
506
331
|
function handleMouseMoveRotate(event) {
|
|
507
332
|
rotateEnd.set(event.clientX, event.clientY);
|
|
508
333
|
rotateDelta.subVectors(rotateEnd, rotateStart).multiplyScalar(scope.rotateSpeed);
|
|
509
334
|
const element = scope.domElement;
|
|
510
|
-
|
|
511
335
|
if (element) {
|
|
512
|
-
rotateLeft(2 * Math.PI * rotateDelta.x / element.clientHeight);
|
|
513
|
-
|
|
336
|
+
rotateLeft(2 * Math.PI * rotateDelta.x / element.clientHeight);
|
|
514
337
|
rotateUp(2 * Math.PI * rotateDelta.y / element.clientHeight);
|
|
515
338
|
}
|
|
516
|
-
|
|
517
339
|
rotateStart.copy(rotateEnd);
|
|
518
340
|
scope.update();
|
|
519
341
|
}
|
|
520
|
-
|
|
521
342
|
function handleMouseMoveDolly(event) {
|
|
522
343
|
dollyEnd.set(event.clientX, event.clientY);
|
|
523
344
|
dollyDelta.subVectors(dollyEnd, dollyStart);
|
|
524
|
-
|
|
525
345
|
if (dollyDelta.y > 0) {
|
|
526
346
|
dollyOut(getZoomScale());
|
|
527
347
|
} else if (dollyDelta.y < 0) {
|
|
528
348
|
dollyIn(getZoomScale());
|
|
529
349
|
}
|
|
530
|
-
|
|
531
350
|
dollyStart.copy(dollyEnd);
|
|
532
351
|
scope.update();
|
|
533
352
|
}
|
|
534
|
-
|
|
535
353
|
function handleMouseMovePan(event) {
|
|
536
354
|
panEnd.set(event.clientX, event.clientY);
|
|
537
355
|
panDelta.subVectors(panEnd, panStart).multiplyScalar(scope.panSpeed);
|
|
@@ -539,49 +357,39 @@ class OrbitControls extends EventDispatcher {
|
|
|
539
357
|
panStart.copy(panEnd);
|
|
540
358
|
scope.update();
|
|
541
359
|
}
|
|
542
|
-
|
|
543
360
|
function handleMouseWheel(event) {
|
|
544
361
|
if (event.deltaY < 0) {
|
|
545
362
|
dollyIn(getZoomScale());
|
|
546
363
|
} else if (event.deltaY > 0) {
|
|
547
364
|
dollyOut(getZoomScale());
|
|
548
365
|
}
|
|
549
|
-
|
|
550
366
|
scope.update();
|
|
551
367
|
}
|
|
552
|
-
|
|
553
368
|
function handleKeyDown(event) {
|
|
554
369
|
let needsUpdate = false;
|
|
555
|
-
|
|
556
370
|
switch (event.code) {
|
|
557
371
|
case scope.keys.UP:
|
|
558
372
|
pan(0, scope.keyPanSpeed);
|
|
559
373
|
needsUpdate = true;
|
|
560
374
|
break;
|
|
561
|
-
|
|
562
375
|
case scope.keys.BOTTOM:
|
|
563
376
|
pan(0, -scope.keyPanSpeed);
|
|
564
377
|
needsUpdate = true;
|
|
565
378
|
break;
|
|
566
|
-
|
|
567
379
|
case scope.keys.LEFT:
|
|
568
380
|
pan(scope.keyPanSpeed, 0);
|
|
569
381
|
needsUpdate = true;
|
|
570
382
|
break;
|
|
571
|
-
|
|
572
383
|
case scope.keys.RIGHT:
|
|
573
384
|
pan(-scope.keyPanSpeed, 0);
|
|
574
385
|
needsUpdate = true;
|
|
575
386
|
break;
|
|
576
387
|
}
|
|
577
|
-
|
|
578
388
|
if (needsUpdate) {
|
|
579
|
-
// prevent the browser from scrolling on cursor keys
|
|
580
389
|
event.preventDefault();
|
|
581
390
|
scope.update();
|
|
582
391
|
}
|
|
583
392
|
}
|
|
584
|
-
|
|
585
393
|
function handleTouchStartRotate() {
|
|
586
394
|
if (pointers.length == 1) {
|
|
587
395
|
rotateStart.set(pointers[0].pageX, pointers[0].pageY);
|
|
@@ -591,7 +399,6 @@ class OrbitControls extends EventDispatcher {
|
|
|
591
399
|
rotateStart.set(x, y);
|
|
592
400
|
}
|
|
593
401
|
}
|
|
594
|
-
|
|
595
402
|
function handleTouchStartPan() {
|
|
596
403
|
if (pointers.length == 1) {
|
|
597
404
|
panStart.set(pointers[0].pageX, pointers[0].pageY);
|
|
@@ -601,24 +408,24 @@ class OrbitControls extends EventDispatcher {
|
|
|
601
408
|
panStart.set(x, y);
|
|
602
409
|
}
|
|
603
410
|
}
|
|
604
|
-
|
|
605
411
|
function handleTouchStartDolly() {
|
|
606
412
|
const dx = pointers[0].pageX - pointers[1].pageX;
|
|
607
413
|
const dy = pointers[0].pageY - pointers[1].pageY;
|
|
608
414
|
const distance = Math.sqrt(dx * dx + dy * dy);
|
|
609
415
|
dollyStart.set(0, distance);
|
|
610
416
|
}
|
|
611
|
-
|
|
612
417
|
function handleTouchStartDollyPan() {
|
|
613
|
-
if (scope.enableZoom)
|
|
614
|
-
|
|
418
|
+
if (scope.enableZoom)
|
|
419
|
+
handleTouchStartDolly();
|
|
420
|
+
if (scope.enablePan)
|
|
421
|
+
handleTouchStartPan();
|
|
615
422
|
}
|
|
616
|
-
|
|
617
423
|
function handleTouchStartDollyRotate() {
|
|
618
|
-
if (scope.enableZoom)
|
|
619
|
-
|
|
424
|
+
if (scope.enableZoom)
|
|
425
|
+
handleTouchStartDolly();
|
|
426
|
+
if (scope.enableRotate)
|
|
427
|
+
handleTouchStartRotate();
|
|
620
428
|
}
|
|
621
|
-
|
|
622
429
|
function handleTouchMoveRotate(event) {
|
|
623
430
|
if (pointers.length == 1) {
|
|
624
431
|
rotateEnd.set(event.pageX, event.pageY);
|
|
@@ -628,19 +435,14 @@ class OrbitControls extends EventDispatcher {
|
|
|
628
435
|
const y = 0.5 * (event.pageY + position.y);
|
|
629
436
|
rotateEnd.set(x, y);
|
|
630
437
|
}
|
|
631
|
-
|
|
632
438
|
rotateDelta.subVectors(rotateEnd, rotateStart).multiplyScalar(scope.rotateSpeed);
|
|
633
439
|
const element = scope.domElement;
|
|
634
|
-
|
|
635
440
|
if (element) {
|
|
636
|
-
rotateLeft(2 * Math.PI * rotateDelta.x / element.clientHeight);
|
|
637
|
-
|
|
441
|
+
rotateLeft(2 * Math.PI * rotateDelta.x / element.clientHeight);
|
|
638
442
|
rotateUp(2 * Math.PI * rotateDelta.y / element.clientHeight);
|
|
639
443
|
}
|
|
640
|
-
|
|
641
444
|
rotateStart.copy(rotateEnd);
|
|
642
445
|
}
|
|
643
|
-
|
|
644
446
|
function handleTouchMovePan(event) {
|
|
645
447
|
if (pointers.length == 1) {
|
|
646
448
|
panEnd.set(event.pageX, event.pageY);
|
|
@@ -650,12 +452,10 @@ class OrbitControls extends EventDispatcher {
|
|
|
650
452
|
const y = 0.5 * (event.pageY + position.y);
|
|
651
453
|
panEnd.set(x, y);
|
|
652
454
|
}
|
|
653
|
-
|
|
654
455
|
panDelta.subVectors(panEnd, panStart).multiplyScalar(scope.panSpeed);
|
|
655
456
|
pan(panDelta.x, panDelta.y);
|
|
656
457
|
panStart.copy(panEnd);
|
|
657
458
|
}
|
|
658
|
-
|
|
659
459
|
function handleTouchMoveDolly(event) {
|
|
660
460
|
const position = getSecondPointerPosition(event);
|
|
661
461
|
const dx = event.pageX - position.x;
|
|
@@ -666,265 +466,233 @@ class OrbitControls extends EventDispatcher {
|
|
|
666
466
|
dollyOut(dollyDelta.y);
|
|
667
467
|
dollyStart.copy(dollyEnd);
|
|
668
468
|
}
|
|
669
|
-
|
|
670
469
|
function handleTouchMoveDollyPan(event) {
|
|
671
|
-
if (scope.enableZoom)
|
|
672
|
-
|
|
470
|
+
if (scope.enableZoom)
|
|
471
|
+
handleTouchMoveDolly(event);
|
|
472
|
+
if (scope.enablePan)
|
|
473
|
+
handleTouchMovePan(event);
|
|
673
474
|
}
|
|
674
|
-
|
|
675
475
|
function handleTouchMoveDollyRotate(event) {
|
|
676
|
-
if (scope.enableZoom)
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
476
|
+
if (scope.enableZoom)
|
|
477
|
+
handleTouchMoveDolly(event);
|
|
478
|
+
if (scope.enableRotate)
|
|
479
|
+
handleTouchMoveRotate(event);
|
|
480
|
+
}
|
|
683
481
|
function onPointerDown(event) {
|
|
684
|
-
|
|
685
|
-
|
|
482
|
+
var _a, _b;
|
|
483
|
+
if (scope.enabled === false)
|
|
484
|
+
return;
|
|
686
485
|
if (pointers.length === 0) {
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
(_scope$domElement7 = scope.domElement) === null || _scope$domElement7 === void 0 ? void 0 : _scope$domElement7.ownerDocument.addEventListener('pointermove', onPointerMove);
|
|
690
|
-
(_scope$domElement8 = scope.domElement) === null || _scope$domElement8 === void 0 ? void 0 : _scope$domElement8.ownerDocument.addEventListener('pointerup', onPointerUp);
|
|
486
|
+
(_a = scope.domElement) == null ? void 0 : _a.ownerDocument.addEventListener("pointermove", onPointerMove);
|
|
487
|
+
(_b = scope.domElement) == null ? void 0 : _b.ownerDocument.addEventListener("pointerup", onPointerUp);
|
|
691
488
|
}
|
|
692
|
-
|
|
693
489
|
addPointer(event);
|
|
694
|
-
|
|
695
|
-
if (event.pointerType === 'touch') {
|
|
490
|
+
if (event.pointerType === "touch") {
|
|
696
491
|
onTouchStart(event);
|
|
697
492
|
} else {
|
|
698
493
|
onMouseDown(event);
|
|
699
494
|
}
|
|
700
495
|
}
|
|
701
|
-
|
|
702
496
|
function onPointerMove(event) {
|
|
703
|
-
if (scope.enabled === false)
|
|
704
|
-
|
|
705
|
-
if (event.pointerType ===
|
|
497
|
+
if (scope.enabled === false)
|
|
498
|
+
return;
|
|
499
|
+
if (event.pointerType === "touch") {
|
|
706
500
|
onTouchMove(event);
|
|
707
501
|
} else {
|
|
708
502
|
onMouseMove(event);
|
|
709
503
|
}
|
|
710
504
|
}
|
|
711
|
-
|
|
712
505
|
function onPointerUp(event) {
|
|
506
|
+
var _a, _b, _c;
|
|
713
507
|
removePointer(event);
|
|
714
|
-
|
|
715
508
|
if (pointers.length === 0) {
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
(
|
|
719
|
-
(_scope$domElement10 = scope.domElement) === null || _scope$domElement10 === void 0 ? void 0 : _scope$domElement10.ownerDocument.removeEventListener('pointermove', onPointerMove);
|
|
720
|
-
(_scope$domElement11 = scope.domElement) === null || _scope$domElement11 === void 0 ? void 0 : _scope$domElement11.ownerDocument.removeEventListener('pointerup', onPointerUp);
|
|
509
|
+
(_a = scope.domElement) == null ? void 0 : _a.releasePointerCapture(event.pointerId);
|
|
510
|
+
(_b = scope.domElement) == null ? void 0 : _b.ownerDocument.removeEventListener("pointermove", onPointerMove);
|
|
511
|
+
(_c = scope.domElement) == null ? void 0 : _c.ownerDocument.removeEventListener("pointerup", onPointerUp);
|
|
721
512
|
}
|
|
722
|
-
|
|
723
513
|
scope.dispatchEvent(endEvent);
|
|
724
514
|
state = STATE.NONE;
|
|
725
515
|
}
|
|
726
|
-
|
|
727
516
|
function onPointerCancel(event) {
|
|
728
517
|
removePointer(event);
|
|
729
518
|
}
|
|
730
|
-
|
|
731
519
|
function onMouseDown(event) {
|
|
732
520
|
let mouseAction;
|
|
733
|
-
|
|
734
521
|
switch (event.button) {
|
|
735
522
|
case 0:
|
|
736
523
|
mouseAction = scope.mouseButtons.LEFT;
|
|
737
524
|
break;
|
|
738
|
-
|
|
739
525
|
case 1:
|
|
740
526
|
mouseAction = scope.mouseButtons.MIDDLE;
|
|
741
527
|
break;
|
|
742
|
-
|
|
743
528
|
case 2:
|
|
744
529
|
mouseAction = scope.mouseButtons.RIGHT;
|
|
745
530
|
break;
|
|
746
|
-
|
|
747
531
|
default:
|
|
748
532
|
mouseAction = -1;
|
|
749
533
|
}
|
|
750
|
-
|
|
751
534
|
switch (mouseAction) {
|
|
752
|
-
case MOUSE.DOLLY:
|
|
753
|
-
if (scope.enableZoom === false)
|
|
535
|
+
case THREE.MOUSE.DOLLY:
|
|
536
|
+
if (scope.enableZoom === false)
|
|
537
|
+
return;
|
|
754
538
|
handleMouseDownDolly(event);
|
|
755
539
|
state = STATE.DOLLY;
|
|
756
540
|
break;
|
|
757
|
-
|
|
758
|
-
case MOUSE.ROTATE:
|
|
541
|
+
case THREE.MOUSE.ROTATE:
|
|
759
542
|
if (event.ctrlKey || event.metaKey || event.shiftKey) {
|
|
760
|
-
if (scope.enablePan === false)
|
|
543
|
+
if (scope.enablePan === false)
|
|
544
|
+
return;
|
|
761
545
|
handleMouseDownPan(event);
|
|
762
546
|
state = STATE.PAN;
|
|
763
547
|
} else {
|
|
764
|
-
if (scope.enableRotate === false)
|
|
548
|
+
if (scope.enableRotate === false)
|
|
549
|
+
return;
|
|
765
550
|
handleMouseDownRotate(event);
|
|
766
551
|
state = STATE.ROTATE;
|
|
767
552
|
}
|
|
768
|
-
|
|
769
553
|
break;
|
|
770
|
-
|
|
771
|
-
case MOUSE.PAN:
|
|
554
|
+
case THREE.MOUSE.PAN:
|
|
772
555
|
if (event.ctrlKey || event.metaKey || event.shiftKey) {
|
|
773
|
-
if (scope.enableRotate === false)
|
|
556
|
+
if (scope.enableRotate === false)
|
|
557
|
+
return;
|
|
774
558
|
handleMouseDownRotate(event);
|
|
775
559
|
state = STATE.ROTATE;
|
|
776
560
|
} else {
|
|
777
|
-
if (scope.enablePan === false)
|
|
561
|
+
if (scope.enablePan === false)
|
|
562
|
+
return;
|
|
778
563
|
handleMouseDownPan(event);
|
|
779
564
|
state = STATE.PAN;
|
|
780
565
|
}
|
|
781
|
-
|
|
782
566
|
break;
|
|
783
|
-
|
|
784
567
|
default:
|
|
785
568
|
state = STATE.NONE;
|
|
786
569
|
}
|
|
787
|
-
|
|
788
570
|
if (state !== STATE.NONE) {
|
|
789
571
|
scope.dispatchEvent(startEvent);
|
|
790
572
|
}
|
|
791
573
|
}
|
|
792
|
-
|
|
793
574
|
function onMouseMove(event) {
|
|
794
|
-
if (scope.enabled === false)
|
|
795
|
-
|
|
575
|
+
if (scope.enabled === false)
|
|
576
|
+
return;
|
|
796
577
|
switch (state) {
|
|
797
578
|
case STATE.ROTATE:
|
|
798
|
-
if (scope.enableRotate === false)
|
|
579
|
+
if (scope.enableRotate === false)
|
|
580
|
+
return;
|
|
799
581
|
handleMouseMoveRotate(event);
|
|
800
582
|
break;
|
|
801
|
-
|
|
802
583
|
case STATE.DOLLY:
|
|
803
|
-
if (scope.enableZoom === false)
|
|
584
|
+
if (scope.enableZoom === false)
|
|
585
|
+
return;
|
|
804
586
|
handleMouseMoveDolly(event);
|
|
805
587
|
break;
|
|
806
|
-
|
|
807
588
|
case STATE.PAN:
|
|
808
|
-
if (scope.enablePan === false)
|
|
589
|
+
if (scope.enablePan === false)
|
|
590
|
+
return;
|
|
809
591
|
handleMouseMovePan(event);
|
|
810
592
|
break;
|
|
811
593
|
}
|
|
812
594
|
}
|
|
813
|
-
|
|
814
595
|
function onMouseWheel(event) {
|
|
815
596
|
if (scope.enabled === false || scope.enableZoom === false || state !== STATE.NONE && state !== STATE.ROTATE) {
|
|
816
597
|
return;
|
|
817
598
|
}
|
|
818
|
-
|
|
819
599
|
event.preventDefault();
|
|
820
600
|
scope.dispatchEvent(startEvent);
|
|
821
601
|
handleMouseWheel(event);
|
|
822
602
|
scope.dispatchEvent(endEvent);
|
|
823
603
|
}
|
|
824
|
-
|
|
825
604
|
function onKeyDown(event) {
|
|
826
|
-
if (scope.enabled === false || scope.enablePan === false)
|
|
605
|
+
if (scope.enabled === false || scope.enablePan === false)
|
|
606
|
+
return;
|
|
827
607
|
handleKeyDown(event);
|
|
828
608
|
}
|
|
829
|
-
|
|
830
609
|
function onTouchStart(event) {
|
|
831
610
|
trackPointer(event);
|
|
832
|
-
|
|
833
611
|
switch (pointers.length) {
|
|
834
612
|
case 1:
|
|
835
613
|
switch (scope.touches.ONE) {
|
|
836
|
-
case TOUCH.ROTATE:
|
|
837
|
-
if (scope.enableRotate === false)
|
|
614
|
+
case THREE.TOUCH.ROTATE:
|
|
615
|
+
if (scope.enableRotate === false)
|
|
616
|
+
return;
|
|
838
617
|
handleTouchStartRotate();
|
|
839
618
|
state = STATE.TOUCH_ROTATE;
|
|
840
619
|
break;
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
620
|
+
case THREE.TOUCH.PAN:
|
|
621
|
+
if (scope.enablePan === false)
|
|
622
|
+
return;
|
|
844
623
|
handleTouchStartPan();
|
|
845
624
|
state = STATE.TOUCH_PAN;
|
|
846
625
|
break;
|
|
847
|
-
|
|
848
626
|
default:
|
|
849
627
|
state = STATE.NONE;
|
|
850
628
|
}
|
|
851
|
-
|
|
852
629
|
break;
|
|
853
|
-
|
|
854
630
|
case 2:
|
|
855
631
|
switch (scope.touches.TWO) {
|
|
856
|
-
case TOUCH.DOLLY_PAN:
|
|
857
|
-
if (scope.enableZoom === false && scope.enablePan === false)
|
|
632
|
+
case THREE.TOUCH.DOLLY_PAN:
|
|
633
|
+
if (scope.enableZoom === false && scope.enablePan === false)
|
|
634
|
+
return;
|
|
858
635
|
handleTouchStartDollyPan();
|
|
859
636
|
state = STATE.TOUCH_DOLLY_PAN;
|
|
860
637
|
break;
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
638
|
+
case THREE.TOUCH.DOLLY_ROTATE:
|
|
639
|
+
if (scope.enableZoom === false && scope.enableRotate === false)
|
|
640
|
+
return;
|
|
864
641
|
handleTouchStartDollyRotate();
|
|
865
642
|
state = STATE.TOUCH_DOLLY_ROTATE;
|
|
866
643
|
break;
|
|
867
|
-
|
|
868
644
|
default:
|
|
869
645
|
state = STATE.NONE;
|
|
870
646
|
}
|
|
871
|
-
|
|
872
647
|
break;
|
|
873
|
-
|
|
874
648
|
default:
|
|
875
649
|
state = STATE.NONE;
|
|
876
650
|
}
|
|
877
|
-
|
|
878
651
|
if (state !== STATE.NONE) {
|
|
879
652
|
scope.dispatchEvent(startEvent);
|
|
880
653
|
}
|
|
881
654
|
}
|
|
882
|
-
|
|
883
655
|
function onTouchMove(event) {
|
|
884
656
|
trackPointer(event);
|
|
885
|
-
|
|
886
657
|
switch (state) {
|
|
887
658
|
case STATE.TOUCH_ROTATE:
|
|
888
|
-
if (scope.enableRotate === false)
|
|
659
|
+
if (scope.enableRotate === false)
|
|
660
|
+
return;
|
|
889
661
|
handleTouchMoveRotate(event);
|
|
890
662
|
scope.update();
|
|
891
663
|
break;
|
|
892
|
-
|
|
893
664
|
case STATE.TOUCH_PAN:
|
|
894
|
-
if (scope.enablePan === false)
|
|
665
|
+
if (scope.enablePan === false)
|
|
666
|
+
return;
|
|
895
667
|
handleTouchMovePan(event);
|
|
896
668
|
scope.update();
|
|
897
669
|
break;
|
|
898
|
-
|
|
899
670
|
case STATE.TOUCH_DOLLY_PAN:
|
|
900
|
-
if (scope.enableZoom === false && scope.enablePan === false)
|
|
671
|
+
if (scope.enableZoom === false && scope.enablePan === false)
|
|
672
|
+
return;
|
|
901
673
|
handleTouchMoveDollyPan(event);
|
|
902
674
|
scope.update();
|
|
903
675
|
break;
|
|
904
|
-
|
|
905
676
|
case STATE.TOUCH_DOLLY_ROTATE:
|
|
906
|
-
if (scope.enableZoom === false && scope.enableRotate === false)
|
|
677
|
+
if (scope.enableZoom === false && scope.enableRotate === false)
|
|
678
|
+
return;
|
|
907
679
|
handleTouchMoveDollyRotate(event);
|
|
908
680
|
scope.update();
|
|
909
681
|
break;
|
|
910
|
-
|
|
911
682
|
default:
|
|
912
683
|
state = STATE.NONE;
|
|
913
684
|
}
|
|
914
685
|
}
|
|
915
|
-
|
|
916
686
|
function onContextMenu(event) {
|
|
917
|
-
if (scope.enabled === false)
|
|
687
|
+
if (scope.enabled === false)
|
|
688
|
+
return;
|
|
918
689
|
event.preventDefault();
|
|
919
690
|
}
|
|
920
|
-
|
|
921
691
|
function addPointer(event) {
|
|
922
692
|
pointers.push(event);
|
|
923
693
|
}
|
|
924
|
-
|
|
925
694
|
function removePointer(event) {
|
|
926
695
|
delete pointerPositions[event.pointerId];
|
|
927
|
-
|
|
928
696
|
for (let i = 0; i < pointers.length; i++) {
|
|
929
697
|
if (pointers[i].pointerId == event.pointerId) {
|
|
930
698
|
pointers.splice(i, 1);
|
|
@@ -932,49 +700,32 @@ class OrbitControls extends EventDispatcher {
|
|
|
932
700
|
}
|
|
933
701
|
}
|
|
934
702
|
}
|
|
935
|
-
|
|
936
703
|
function trackPointer(event) {
|
|
937
704
|
let position = pointerPositions[event.pointerId];
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
position = new Vector2();
|
|
705
|
+
if (position === void 0) {
|
|
706
|
+
position = new THREE.Vector2();
|
|
941
707
|
pointerPositions[event.pointerId] = position;
|
|
942
708
|
}
|
|
943
|
-
|
|
944
709
|
position.set(event.pageX, event.pageY);
|
|
945
710
|
}
|
|
946
|
-
|
|
947
711
|
function getSecondPointerPosition(event) {
|
|
948
712
|
const pointer = event.pointerId === pointers[0].pointerId ? pointers[1] : pointers[0];
|
|
949
713
|
return pointerPositions[pointer.pointerId];
|
|
950
|
-
}
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
if (domElement !== undefined) this.connect(domElement); // force an update at start
|
|
954
|
-
|
|
714
|
+
}
|
|
715
|
+
if (domElement !== void 0)
|
|
716
|
+
this.connect(domElement);
|
|
955
717
|
this.update();
|
|
956
718
|
}
|
|
957
|
-
|
|
958
|
-
} // This set of controls performs orbiting, dollying (zooming), and panning.
|
|
959
|
-
// Unlike TrackballControls, it maintains the "up" direction object.up (+Y by default).
|
|
960
|
-
// This is very similar to OrbitControls, another set of touch behavior
|
|
961
|
-
//
|
|
962
|
-
// Orbit - right mouse, or left mouse + ctrl/meta/shiftKey / touch: two-finger rotate
|
|
963
|
-
// Zoom - middle mouse, or mousewheel / touch: two-finger spread or squish
|
|
964
|
-
// Pan - left mouse, or arrow keys / touch: one-finger move
|
|
965
|
-
|
|
966
|
-
|
|
719
|
+
}
|
|
967
720
|
class MapControls extends OrbitControls {
|
|
968
721
|
constructor(object, domElement) {
|
|
969
722
|
super(object, domElement);
|
|
970
|
-
this.screenSpacePanning = false;
|
|
971
|
-
|
|
972
|
-
this.mouseButtons.
|
|
973
|
-
this.
|
|
974
|
-
this.touches.
|
|
975
|
-
this.touches.TWO = TOUCH.DOLLY_ROTATE;
|
|
723
|
+
this.screenSpacePanning = false;
|
|
724
|
+
this.mouseButtons.LEFT = THREE.MOUSE.PAN;
|
|
725
|
+
this.mouseButtons.RIGHT = THREE.MOUSE.ROTATE;
|
|
726
|
+
this.touches.ONE = THREE.TOUCH.PAN;
|
|
727
|
+
this.touches.TWO = THREE.TOUCH.DOLLY_ROTATE;
|
|
976
728
|
}
|
|
977
|
-
|
|
978
729
|
}
|
|
979
|
-
|
|
980
|
-
|
|
730
|
+
exports.MapControls = MapControls;
|
|
731
|
+
exports.OrbitControls = OrbitControls;
|