three-stdlib 2.22.10 → 2.23.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_polyfill/CompressedArrayTexture.cjs +12 -0
- package/dist/_polyfill/CompressedArrayTexture.js +6 -6
- package/dist/_polyfill/Data3DTexture.cjs +17 -0
- package/dist/_polyfill/Data3DTexture.js +8 -8
- package/dist/animation/{AnimationClipCreator.mjs → AnimationClipCreator.cjs} +18 -18
- package/dist/animation/AnimationClipCreator.js +18 -18
- package/dist/animation/{CCDIKSolver.mjs → CCDIKSolver.cjs} +32 -32
- package/dist/animation/CCDIKSolver.js +32 -32
- package/dist/animation/{MMDAnimationHelper.mjs → MMDAnimationHelper.cjs} +17 -17
- package/dist/animation/MMDAnimationHelper.js +17 -17
- package/dist/animation/{MMDPhysics.mjs → MMDPhysics.cjs} +25 -25
- package/dist/animation/MMDPhysics.js +25 -25
- package/dist/cameras/{CinematicCamera.mjs → CinematicCamera.cjs} +17 -17
- package/dist/cameras/CinematicCamera.js +17 -17
- package/dist/controls/{ArcballControls.mjs → ArcballControls.cjs} +102 -102
- package/dist/controls/ArcballControls.js +102 -102
- package/dist/controls/{DeviceOrientationControls.mjs → DeviceOrientationControls.cjs} +14 -14
- package/dist/controls/DeviceOrientationControls.js +14 -14
- package/dist/controls/{DragControls.mjs → DragControls.cjs} +12 -12
- package/dist/controls/DragControls.js +12 -12
- package/dist/controls/{FirstPersonControls.mjs → FirstPersonControls.cjs} +16 -16
- package/dist/controls/FirstPersonControls.js +16 -16
- package/dist/controls/{FlyControls.mjs → FlyControls.cjs} +10 -10
- package/dist/controls/FlyControls.js +10 -10
- package/dist/controls/{OrbitControls.mjs → OrbitControls.cjs} +52 -54
- package/dist/controls/OrbitControls.d.ts +4 -4
- package/dist/controls/OrbitControls.js +52 -54
- package/dist/controls/{PointerLockControls.mjs → PointerLockControls.cjs} +8 -8
- package/dist/controls/PointerLockControls.js +8 -8
- package/dist/controls/{TrackballControls.mjs → TrackballControls.cjs} +32 -32
- package/dist/controls/TrackballControls.d.ts +2 -2
- package/dist/controls/TrackballControls.js +32 -32
- package/dist/controls/{TransformControls.mjs → TransformControls.cjs} +169 -169
- package/dist/controls/TransformControls.js +169 -169
- package/dist/controls/experimental/{CameraControls.mjs → CameraControls.cjs} +59 -59
- package/dist/controls/experimental/CameraControls.js +59 -59
- package/dist/csm/{CSM.mjs → CSM.cjs} +17 -17
- package/dist/csm/CSM.js +17 -17
- package/dist/csm/{CSMFrustum.mjs → CSMFrustum.cjs} +7 -7
- package/dist/csm/CSMFrustum.js +7 -7
- package/dist/csm/{CSMHelper.mjs → CSMHelper.cjs} +14 -14
- package/dist/csm/CSMHelper.js +14 -14
- package/dist/csm/{CSMShader.mjs → CSMShader.cjs} +5 -5
- package/dist/csm/CSMShader.js +5 -5
- package/dist/curves/{CurveExtras.mjs → CurveExtras.cjs} +45 -45
- package/dist/curves/CurveExtras.js +45 -45
- package/dist/curves/{NURBSCurve.mjs → NURBSCurve.cjs} +11 -11
- package/dist/curves/NURBSCurve.js +11 -11
- package/dist/curves/{NURBSSurface.mjs → NURBSSurface.cjs} +7 -7
- package/dist/curves/NURBSSurface.js +7 -7
- package/dist/curves/{NURBSUtils.mjs → NURBSUtils.cjs} +17 -17
- package/dist/curves/NURBSUtils.js +17 -17
- package/dist/deprecated/{Geometry.mjs → Geometry.cjs} +51 -51
- package/dist/deprecated/Geometry.js +51 -51
- package/dist/effects/{AnaglyphEffect.mjs → AnaglyphEffect.cjs} +14 -14
- package/dist/effects/AnaglyphEffect.js +14 -14
- package/dist/effects/{AsciiEffect.mjs → AsciiEffect.cjs} +3 -3
- package/dist/effects/AsciiEffect.js +3 -3
- package/dist/effects/{OutlineEffect.mjs → OutlineEffect.cjs} +8 -8
- package/dist/effects/OutlineEffect.js +8 -8
- package/dist/effects/{ParallaxBarrierEffect.mjs → ParallaxBarrierEffect.cjs} +12 -12
- package/dist/effects/ParallaxBarrierEffect.js +12 -12
- package/dist/effects/{PeppersGhostEffect.mjs → PeppersGhostEffect.cjs} +11 -11
- package/dist/effects/PeppersGhostEffect.js +11 -11
- package/dist/effects/{StereoEffect.mjs → StereoEffect.cjs} +6 -6
- package/dist/effects/StereoEffect.js +6 -6
- package/dist/environments/RoomEnvironment.cjs +95 -0
- package/dist/environments/RoomEnvironment.js +23 -40
- package/dist/exporters/{ColladaExporter.mjs → ColladaExporter.cjs} +16 -16
- package/dist/exporters/ColladaExporter.js +16 -16
- package/dist/exporters/{DRACOExporter.mjs → DRACOExporter.cjs} +8 -8
- package/dist/exporters/DRACOExporter.js +8 -8
- package/dist/exporters/{GLTFExporter.mjs → GLTFExporter.cjs} +52 -49
- package/dist/exporters/GLTFExporter.js +52 -49
- package/dist/exporters/{MMDExporter.mjs → MMDExporter.cjs} +10 -10
- package/dist/exporters/MMDExporter.js +10 -10
- package/dist/exporters/{OBJExporter.mjs → OBJExporter.cjs} +13 -13
- package/dist/exporters/OBJExporter.js +13 -13
- package/dist/exporters/{PLYExporter.mjs → PLYExporter.cjs} +8 -8
- package/dist/exporters/PLYExporter.js +8 -8
- package/dist/exporters/{STLExporter.mjs → STLExporter.cjs} +12 -12
- package/dist/exporters/STLExporter.js +12 -12
- package/dist/exporters/{USDZExporter.mjs → USDZExporter.cjs} +10 -10
- package/dist/exporters/USDZExporter.js +10 -10
- package/dist/geometries/{BoxLineGeometry.mjs → BoxLineGeometry.cjs} +6 -6
- package/dist/geometries/BoxLineGeometry.js +6 -6
- package/dist/geometries/ConvexGeometry.cjs +26 -0
- package/dist/geometries/ConvexGeometry.js +9 -9
- package/dist/geometries/{DecalGeometry.mjs → DecalGeometry.cjs} +16 -16
- package/dist/geometries/DecalGeometry.js +16 -16
- package/dist/geometries/{LightningStrike.mjs → LightningStrike.cjs} +45 -45
- package/dist/geometries/LightningStrike.js +45 -45
- package/dist/geometries/{ParametricGeometries.mjs → ParametricGeometries.cjs} +11 -11
- package/dist/geometries/ParametricGeometries.js +11 -11
- package/dist/geometries/{ParametricGeometry.mjs → ParametricGeometry.cjs} +11 -11
- package/dist/geometries/ParametricGeometry.js +11 -11
- package/dist/geometries/{RoundedBoxGeometry.mjs → RoundedBoxGeometry.cjs} +10 -10
- package/dist/geometries/RoundedBoxGeometry.js +10 -10
- package/dist/geometries/{TeapotGeometry.mjs → TeapotGeometry.cjs} +21 -21
- package/dist/geometries/TeapotGeometry.js +21 -21
- package/dist/geometries/{TextGeometry.mjs → TextGeometry.cjs} +6 -6
- package/dist/geometries/TextGeometry.js +6 -6
- package/dist/helpers/{LightProbeHelper.mjs → LightProbeHelper.cjs} +7 -7
- package/dist/helpers/LightProbeHelper.js +7 -7
- package/dist/helpers/{PositionalAudioHelper.mjs → PositionalAudioHelper.cjs} +11 -11
- package/dist/helpers/PositionalAudioHelper.js +11 -11
- package/dist/helpers/{RectAreaLightHelper.mjs → RectAreaLightHelper.cjs} +11 -11
- package/dist/helpers/RectAreaLightHelper.js +11 -11
- package/dist/helpers/{VertexNormalsHelper.mjs → VertexNormalsHelper.cjs} +11 -11
- package/dist/helpers/VertexNormalsHelper.js +11 -11
- package/dist/helpers/{VertexTangentsHelper.mjs → VertexTangentsHelper.cjs} +10 -10
- package/dist/helpers/VertexTangentsHelper.js +10 -10
- package/dist/index.cjs +613 -0
- package/dist/index.js +613 -613
- package/dist/interactive/{HTMLMesh.mjs → HTMLMesh.cjs} +11 -11
- package/dist/interactive/HTMLMesh.js +11 -11
- package/dist/interactive/{InteractiveGroup.mjs → InteractiveGroup.cjs} +8 -8
- package/dist/interactive/InteractiveGroup.js +8 -8
- package/dist/interactive/{SelectionBox.mjs → SelectionBox.cjs} +21 -21
- package/dist/interactive/SelectionBox.js +21 -21
- package/dist/interactive/{SelectionHelper.mjs → SelectionHelper.cjs} +7 -7
- package/dist/interactive/SelectionHelper.js +7 -7
- package/dist/libs/{MeshoptDecoder.mjs → MeshoptDecoder.cjs} +3 -3
- package/dist/libs/MeshoptDecoder.js +3 -3
- package/dist/libs/{MotionControllers.mjs → MotionControllers.cjs} +6 -6
- package/dist/libs/MotionControllers.js +6 -6
- package/dist/lights/{LightProbeGenerator.mjs → LightProbeGenerator.cjs} +16 -16
- package/dist/lights/LightProbeGenerator.js +16 -16
- package/dist/lights/{RectAreaLightUniformsLib.mjs → RectAreaLightUniformsLib.cjs} +42 -42
- package/dist/lights/RectAreaLightUniformsLib.js +42 -42
- package/dist/lines/Line2.cjs +13 -0
- package/dist/lines/Line2.js +8 -8
- package/dist/lines/{LineGeometry.mjs → LineGeometry.cjs} +5 -5
- package/dist/lines/LineGeometry.js +5 -5
- package/dist/lines/{LineMaterial.mjs → LineMaterial.cjs} +10 -10
- package/dist/lines/LineMaterial.js +10 -10
- package/dist/lines/{LineSegments2.mjs → LineSegments2.cjs} +28 -28
- package/dist/lines/LineSegments2.js +28 -28
- package/dist/lines/{LineSegmentsGeometry.mjs → LineSegmentsGeometry.cjs} +18 -18
- package/dist/lines/LineSegmentsGeometry.js +18 -18
- package/dist/lines/Wireframe.cjs +32 -0
- package/dist/lines/Wireframe.js +13 -13
- package/dist/lines/WireframeGeometry2.cjs +13 -0
- package/dist/lines/WireframeGeometry2.js +7 -7
- package/dist/loaders/{3DMLoader.mjs → 3DMLoader.cjs} +37 -37
- package/dist/loaders/3DMLoader.js +37 -37
- package/dist/loaders/{3MFLoader.mjs → 3MFLoader.cjs} +53 -53
- package/dist/loaders/3MFLoader.js +53 -53
- package/dist/loaders/{AMFLoader.mjs → AMFLoader.cjs} +19 -19
- package/dist/loaders/AMFLoader.js +19 -19
- package/dist/loaders/{AssimpLoader.mjs → AssimpLoader.cjs} +41 -41
- package/dist/loaders/AssimpLoader.js +41 -41
- package/dist/loaders/{BVHLoader.mjs → BVHLoader.cjs} +18 -18
- package/dist/loaders/BVHLoader.js +18 -18
- package/dist/loaders/{BasisTextureLoader.mjs → BasisTextureLoader.cjs} +22 -22
- package/dist/loaders/BasisTextureLoader.js +22 -22
- package/dist/loaders/{ColladaLoader.mjs → ColladaLoader.cjs} +76 -76
- package/dist/loaders/ColladaLoader.js +76 -76
- package/dist/loaders/{DDSLoader.mjs → DDSLoader.cjs} +10 -10
- package/dist/loaders/DDSLoader.js +10 -10
- package/dist/loaders/{DRACOLoader.mjs → DRACOLoader.cjs} +12 -12
- package/dist/loaders/DRACOLoader.js +12 -12
- package/dist/loaders/{EXRLoader.mjs → EXRLoader.cjs} +23 -23
- package/dist/loaders/EXRLoader.js +23 -23
- package/dist/loaders/{FBXLoader.mjs → FBXLoader.cjs} +116 -116
- package/dist/loaders/FBXLoader.js +116 -116
- package/dist/loaders/{FontLoader.mjs → FontLoader.cjs} +9 -9
- package/dist/loaders/FontLoader.js +9 -9
- package/dist/loaders/{GCodeLoader.mjs → GCodeLoader.cjs} +13 -13
- package/dist/loaders/GCodeLoader.js +13 -13
- package/dist/loaders/{GLTFLoader.mjs → GLTFLoader.cjs} +112 -112
- package/dist/loaders/GLTFLoader.js +112 -112
- package/dist/loaders/{HDRCubeTextureLoader.mjs → HDRCubeTextureLoader.cjs} +15 -15
- package/dist/loaders/HDRCubeTextureLoader.js +15 -15
- package/dist/loaders/{KMZLoader.mjs → KMZLoader.cjs} +13 -13
- package/dist/loaders/KMZLoader.js +13 -13
- package/dist/loaders/{KTX2Loader.mjs → KTX2Loader.cjs} +65 -65
- package/dist/loaders/KTX2Loader.js +65 -65
- package/dist/loaders/{KTXLoader.mjs → KTXLoader.cjs} +5 -5
- package/dist/loaders/KTXLoader.js +5 -5
- package/dist/loaders/{LDrawLoader.mjs → LDrawLoader.cjs} +39 -39
- package/dist/loaders/LDrawLoader.js +39 -39
- package/dist/loaders/{LUT3dlLoader.mjs → LUT3dlLoader.cjs} +22 -22
- package/dist/loaders/LUT3dlLoader.js +22 -22
- package/dist/loaders/{LUTCubeLoader.mjs → LUTCubeLoader.cjs} +22 -22
- package/dist/loaders/LUTCubeLoader.js +22 -22
- package/dist/loaders/{LWOLoader.mjs → LWOLoader.cjs} +42 -42
- package/dist/loaders/LWOLoader.js +42 -42
- package/dist/loaders/{LottieLoader.mjs → LottieLoader.cjs} +8 -8
- package/dist/loaders/LottieLoader.js +8 -8
- package/dist/loaders/{MD2Loader.mjs → MD2Loader.cjs} +15 -15
- package/dist/loaders/MD2Loader.js +15 -15
- package/dist/loaders/{MDDLoader.mjs → MDDLoader.cjs} +9 -9
- package/dist/loaders/MDDLoader.js +9 -9
- package/dist/loaders/{MMDLoader.mjs → MMDLoader.cjs} +59 -59
- package/dist/loaders/MMDLoader.js +59 -59
- package/dist/loaders/{MTLLoader.mjs → MTLLoader.cjs} +17 -17
- package/dist/loaders/MTLLoader.js +17 -17
- package/dist/loaders/{NRRDLoader.mjs → NRRDLoader.cjs} +17 -17
- package/dist/loaders/NRRDLoader.js +17 -17
- package/dist/loaders/{OBJLoader.mjs → OBJLoader.cjs} +37 -37
- package/dist/loaders/OBJLoader.js +37 -37
- package/dist/loaders/{PCDLoader.mjs → PCDLoader.cjs} +13 -13
- package/dist/loaders/PCDLoader.js +13 -13
- package/dist/loaders/{PDBLoader.mjs → PDBLoader.cjs} +11 -11
- package/dist/loaders/PDBLoader.js +11 -11
- package/dist/loaders/{PLYLoader.mjs → PLYLoader.cjs} +13 -13
- package/dist/loaders/PLYLoader.js +13 -13
- package/dist/loaders/{PRWMLoader.mjs → PRWMLoader.cjs} +9 -9
- package/dist/loaders/PRWMLoader.js +9 -9
- package/dist/loaders/{PVRLoader.mjs → PVRLoader.cjs} +11 -11
- package/dist/loaders/PVRLoader.js +11 -11
- package/dist/loaders/{RGBELoader.mjs → RGBELoader.cjs} +18 -18
- package/dist/loaders/RGBELoader.js +18 -18
- package/dist/loaders/{RGBMLoader.mjs → RGBMLoader.cjs} +16 -16
- package/dist/loaders/RGBMLoader.js +16 -16
- package/dist/loaders/{STLLoader.mjs → STLLoader.cjs} +15 -15
- package/dist/loaders/STLLoader.js +15 -15
- package/dist/loaders/{SVGLoader.mjs → SVGLoader.cjs} +55 -55
- package/dist/loaders/SVGLoader.js +55 -55
- package/dist/loaders/{TDSLoader.mjs → TDSLoader.cjs} +20 -20
- package/dist/loaders/TDSLoader.js +20 -20
- package/dist/loaders/{TGALoader.mjs → TGALoader.cjs} +6 -6
- package/dist/loaders/TGALoader.js +6 -6
- package/dist/loaders/{TTFLoader.mjs → TTFLoader.cjs} +9 -9
- package/dist/loaders/TTFLoader.js +9 -9
- package/dist/loaders/{TiltLoader.mjs → TiltLoader.cjs} +26 -26
- package/dist/loaders/TiltLoader.js +26 -26
- package/dist/loaders/{VOXLoader.mjs → VOXLoader.cjs} +18 -18
- package/dist/loaders/VOXLoader.js +18 -18
- package/dist/loaders/{VRMLLoader.mjs → VRMLLoader.cjs} +125 -125
- package/dist/loaders/VRMLLoader.js +125 -125
- package/dist/loaders/{VRMLoader.mjs → VRMLoader.cjs} +7 -7
- package/dist/loaders/VRMLoader.js +7 -7
- package/dist/loaders/{VTKLoader.mjs → VTKLoader.cjs} +24 -24
- package/dist/loaders/VTKLoader.js +24 -24
- package/dist/loaders/{XLoader.mjs → XLoader.cjs} +42 -42
- package/dist/loaders/XLoader.js +42 -42
- package/dist/loaders/{XYZLoader.mjs → XYZLoader.cjs} +9 -9
- package/dist/loaders/XYZLoader.js +9 -9
- package/dist/loaders/lwo/{IFFParser.mjs → IFFParser.cjs} +7 -7
- package/dist/loaders/lwo/IFFParser.js +7 -7
- package/dist/loaders/lwo/{LWO2Parser.mjs → LWO2Parser.cjs} +3 -3
- package/dist/loaders/lwo/LWO2Parser.js +3 -3
- package/dist/loaders/lwo/{LWO3Parser.mjs → LWO3Parser.cjs} +3 -3
- package/dist/loaders/lwo/LWO3Parser.js +3 -3
- package/dist/math/{Capsule.mjs → Capsule.cjs} +8 -8
- package/dist/math/Capsule.js +8 -8
- package/dist/math/{ColorConverter.mjs → ColorConverter.cjs} +7 -7
- package/dist/math/ColorConverter.js +7 -7
- package/dist/math/{ConvexHull.mjs → ConvexHull.cjs} +18 -18
- package/dist/math/ConvexHull.js +18 -18
- package/dist/math/{ImprovedNoise.mjs → ImprovedNoise.cjs} +3 -3
- package/dist/math/ImprovedNoise.js +3 -3
- package/dist/math/{Lut.mjs → Lut.cjs} +14 -14
- package/dist/math/Lut.js +14 -14
- package/dist/math/{MeshSurfaceSampler.mjs → MeshSurfaceSampler.cjs} +6 -6
- package/dist/math/MeshSurfaceSampler.js +6 -6
- package/dist/math/{OBB.mjs → OBB.cjs} +21 -21
- package/dist/math/OBB.js +21 -21
- package/dist/math/{Octree.mjs → Octree.cjs} +19 -19
- package/dist/math/Octree.js +19 -19
- package/dist/math/{SimplexNoise.mjs → SimplexNoise.cjs} +3 -3
- package/dist/math/SimplexNoise.js +3 -3
- package/dist/misc/{ConvexObjectBreaker.mjs → ConvexObjectBreaker.cjs} +25 -25
- package/dist/misc/ConvexObjectBreaker.js +25 -25
- package/dist/misc/{GPUComputationRenderer.mjs → GPUComputationRenderer.cjs} +19 -19
- package/dist/misc/GPUComputationRenderer.js +19 -19
- package/dist/misc/{Gyroscope.mjs → Gyroscope.cjs} +11 -11
- package/dist/misc/Gyroscope.js +11 -11
- package/dist/misc/{MD2Character.mjs → MD2Character.cjs} +14 -14
- package/dist/misc/MD2Character.js +14 -14
- package/dist/misc/{MD2CharacterComplex.mjs → MD2CharacterComplex.cjs} +20 -20
- package/dist/misc/MD2CharacterComplex.js +20 -20
- package/dist/misc/{MorphAnimMesh.mjs → MorphAnimMesh.cjs} +8 -8
- package/dist/misc/MorphAnimMesh.js +8 -8
- package/dist/misc/{MorphBlendMesh.mjs → MorphBlendMesh.cjs} +6 -6
- package/dist/misc/MorphBlendMesh.js +6 -6
- package/dist/misc/{ProgressiveLightmap.mjs → ProgressiveLightmap.cjs} +17 -17
- package/dist/misc/ProgressiveLightmap.js +17 -17
- package/dist/misc/{RollerCoaster.mjs → RollerCoaster.cjs} +77 -77
- package/dist/misc/RollerCoaster.js +77 -77
- package/dist/misc/{Timer.mjs → Timer.cjs} +3 -3
- package/dist/misc/Timer.js +3 -3
- package/dist/misc/{TubePainter.mjs → TubePainter.cjs} +24 -24
- package/dist/misc/TubePainter.js +24 -24
- package/dist/misc/{Volume.mjs → Volume.cjs} +18 -18
- package/dist/misc/Volume.js +18 -18
- package/dist/misc/{VolumeSlice.mjs → VolumeSlice.cjs} +10 -10
- package/dist/misc/VolumeSlice.js +10 -10
- package/dist/misc/{WebGL.mjs → WebGL.cjs} +7 -7
- package/dist/misc/WebGL.js +7 -7
- package/dist/modifiers/{CurveModifier.mjs → CurveModifier.cjs} +17 -17
- package/dist/modifiers/CurveModifier.js +17 -17
- package/dist/modifiers/{EdgeSplitModifier.mjs → EdgeSplitModifier.cjs} +12 -13
- package/dist/modifiers/EdgeSplitModifier.js +13 -12
- package/dist/modifiers/{SimplifyModifier.mjs → SimplifyModifier.cjs} +12 -12
- package/dist/modifiers/SimplifyModifier.js +12 -12
- package/dist/modifiers/{TessellateModifier.mjs → TessellateModifier.cjs} +30 -30
- package/dist/modifiers/TessellateModifier.js +30 -30
- package/dist/objects/{GroundProjectedEnv.mjs → GroundProjectedEnv.cjs} +8 -8
- package/dist/objects/GroundProjectedEnv.js +8 -8
- package/dist/objects/{Lensflare.mjs → Lensflare.cjs} +37 -37
- package/dist/objects/Lensflare.js +37 -37
- package/dist/objects/{LightningStorm.mjs → LightningStorm.cjs} +17 -17
- package/dist/objects/LightningStorm.js +17 -17
- package/dist/objects/{MarchingCubes.mjs → MarchingCubes.cjs} +21 -21
- package/dist/objects/MarchingCubes.js +21 -21
- package/dist/objects/{Reflector.mjs → Reflector.cjs} +23 -23
- package/dist/objects/Reflector.js +23 -23
- package/dist/objects/{ReflectorForSSRPass.mjs → ReflectorForSSRPass.cjs} +33 -33
- package/dist/objects/ReflectorForSSRPass.js +33 -33
- package/dist/objects/ReflectorRTT.cjs +10 -0
- package/dist/objects/ReflectorRTT.js +5 -5
- package/dist/objects/{Refractor.mjs → Refractor.cjs} +26 -26
- package/dist/objects/Refractor.js +26 -26
- package/dist/objects/{ShadowMesh.mjs → ShadowMesh.cjs} +9 -9
- package/dist/objects/ShadowMesh.js +9 -9
- package/dist/objects/{Sky.mjs → Sky.cjs} +11 -11
- package/dist/objects/Sky.js +11 -11
- package/dist/objects/{Water.mjs → Water.cjs} +33 -33
- package/dist/objects/Water.js +33 -33
- package/dist/objects/{Water2.mjs → Water2.cjs} +20 -20
- package/dist/objects/Water2.js +20 -20
- package/dist/physics/{AmmoPhysics.mjs → AmmoPhysics.cjs} +3 -3
- package/dist/physics/AmmoPhysics.js +3 -3
- package/dist/postprocessing/{AdaptiveToneMappingPass.mjs → AdaptiveToneMappingPass.cjs} +32 -32
- package/dist/postprocessing/AdaptiveToneMappingPass.js +32 -32
- package/dist/postprocessing/{AfterimagePass.mjs → AfterimagePass.cjs} +21 -21
- package/dist/postprocessing/AfterimagePass.js +21 -21
- package/dist/postprocessing/{BloomPass.mjs → BloomPass.cjs} +20 -20
- package/dist/postprocessing/BloomPass.js +20 -20
- package/dist/postprocessing/{BokehPass.mjs → BokehPass.cjs} +19 -19
- package/dist/postprocessing/BokehPass.js +19 -19
- package/dist/postprocessing/{ClearPass.mjs → ClearPass.cjs} +7 -7
- package/dist/postprocessing/ClearPass.js +7 -7
- package/dist/postprocessing/{CubeTexturePass.mjs → CubeTexturePass.cjs} +14 -14
- package/dist/postprocessing/CubeTexturePass.js +14 -14
- package/dist/postprocessing/{DotScreenPass.mjs → DotScreenPass.cjs} +12 -12
- package/dist/postprocessing/DotScreenPass.js +12 -12
- package/dist/postprocessing/{EffectComposer.mjs → EffectComposer.cjs} +20 -20
- package/dist/postprocessing/EffectComposer.js +20 -20
- package/dist/postprocessing/{FilmPass.mjs → FilmPass.cjs} +12 -12
- package/dist/postprocessing/FilmPass.js +12 -12
- package/dist/postprocessing/{GlitchPass.mjs → GlitchPass.cjs} +26 -26
- package/dist/postprocessing/GlitchPass.js +26 -26
- package/dist/postprocessing/{HalftonePass.mjs → HalftonePass.cjs} +13 -13
- package/dist/postprocessing/HalftonePass.js +13 -13
- package/dist/postprocessing/{LUTPass.mjs → LUTPass.cjs} +5 -5
- package/dist/postprocessing/LUTPass.js +5 -5
- package/dist/postprocessing/{MaskPass.mjs → MaskPass.cjs} +7 -7
- package/dist/postprocessing/MaskPass.js +7 -7
- package/dist/postprocessing/{OutlinePass.mjs → OutlinePass.cjs} +45 -45
- package/dist/postprocessing/OutlinePass.js +45 -45
- package/dist/postprocessing/{Pass.mjs → Pass.cjs} +8 -8
- package/dist/postprocessing/Pass.js +8 -8
- package/dist/postprocessing/{RenderPass.mjs → RenderPass.cjs} +7 -7
- package/dist/postprocessing/RenderPass.js +7 -7
- package/dist/postprocessing/{RenderPixelatedPass.mjs → RenderPixelatedPass.cjs} +18 -18
- package/dist/postprocessing/RenderPixelatedPass.js +18 -18
- package/dist/postprocessing/{SAOPass.mjs → SAOPass.cjs} +69 -69
- package/dist/postprocessing/SAOPass.js +69 -69
- package/dist/postprocessing/{SMAAPass.mjs → SMAAPass.cjs} +30 -30
- package/dist/postprocessing/SMAAPass.js +30 -30
- package/dist/postprocessing/{SSAARenderPass.mjs → SSAARenderPass.cjs} +19 -19
- package/dist/postprocessing/SSAARenderPass.js +19 -19
- package/dist/postprocessing/{SSAOPass.mjs → SSAOPass.cjs} +63 -63
- package/dist/postprocessing/SSAOPass.js +63 -63
- package/dist/postprocessing/{SSRPass.mjs → SSRPass.cjs} +86 -86
- package/dist/postprocessing/SSRPass.js +86 -86
- package/dist/postprocessing/{SavePass.mjs → SavePass.cjs} +13 -13
- package/dist/postprocessing/SavePass.js +13 -13
- package/dist/postprocessing/{ShaderPass.mjs → ShaderPass.cjs} +10 -10
- package/dist/postprocessing/ShaderPass.js +10 -10
- package/dist/postprocessing/{TAARenderPass.mjs → TAARenderPass.cjs} +8 -8
- package/dist/postprocessing/TAARenderPass.js +8 -8
- package/dist/postprocessing/{TexturePass.mjs → TexturePass.cjs} +11 -11
- package/dist/postprocessing/TexturePass.js +11 -11
- package/dist/postprocessing/{UnrealBloomPass.mjs → UnrealBloomPass.cjs} +36 -36
- package/dist/postprocessing/UnrealBloomPass.js +36 -36
- package/dist/postprocessing/{WaterPass.mjs → WaterPass.cjs} +10 -10
- package/dist/postprocessing/WaterPass.js +10 -10
- package/dist/renderers/{CSS2DRenderer.mjs → CSS2DRenderer.cjs} +12 -12
- package/dist/renderers/CSS2DRenderer.js +12 -12
- package/dist/renderers/{CSS3DRenderer.mjs → CSS3DRenderer.cjs} +12 -12
- package/dist/renderers/CSS3DRenderer.js +12 -12
- package/dist/renderers/{Projector.mjs → Projector.cjs} +21 -21
- package/dist/renderers/Projector.js +21 -21
- package/dist/renderers/{SVGRenderer.mjs → SVGRenderer.cjs} +12 -12
- package/dist/renderers/SVGRenderer.js +12 -12
- package/dist/shaders/{ACESFilmicToneMappingShader.mjs → ACESFilmicToneMappingShader.cjs} +3 -3
- package/dist/shaders/ACESFilmicToneMappingShader.js +3 -3
- package/dist/shaders/{AfterimageShader.mjs → AfterimageShader.cjs} +3 -3
- package/dist/shaders/AfterimageShader.js +3 -3
- package/dist/shaders/{BasicShader.mjs → BasicShader.cjs} +3 -3
- package/dist/shaders/BasicShader.js +3 -3
- package/dist/shaders/{BleachBypassShader.mjs → BleachBypassShader.cjs} +3 -3
- package/dist/shaders/BleachBypassShader.js +3 -3
- package/dist/shaders/{BlendShader.mjs → BlendShader.cjs} +3 -3
- package/dist/shaders/BlendShader.js +3 -3
- package/dist/shaders/{BokehShader.mjs → BokehShader.cjs} +3 -3
- package/dist/shaders/BokehShader.js +3 -3
- package/dist/shaders/{BokehShader2.mjs → BokehShader2.cjs} +6 -6
- package/dist/shaders/BokehShader2.js +6 -6
- package/dist/shaders/{BrightnessContrastShader.mjs → BrightnessContrastShader.cjs} +3 -3
- package/dist/shaders/BrightnessContrastShader.js +3 -3
- package/dist/shaders/{ColorCorrectionShader.mjs → ColorCorrectionShader.cjs} +7 -7
- package/dist/shaders/ColorCorrectionShader.js +7 -7
- package/dist/shaders/{ColorifyShader.mjs → ColorifyShader.cjs} +5 -5
- package/dist/shaders/ColorifyShader.js +5 -5
- package/dist/shaders/{ConvolutionShader.mjs → ConvolutionShader.cjs} +5 -5
- package/dist/shaders/ConvolutionShader.js +5 -5
- package/dist/shaders/{CopyShader.mjs → CopyShader.cjs} +3 -3
- package/dist/shaders/CopyShader.js +3 -3
- package/dist/shaders/{DOFMipMapShader.mjs → DOFMipMapShader.cjs} +3 -3
- package/dist/shaders/DOFMipMapShader.js +3 -3
- package/dist/shaders/{DepthLimitedBlurShader.mjs → DepthLimitedBlurShader.cjs} +7 -7
- package/dist/shaders/DepthLimitedBlurShader.js +7 -7
- package/dist/shaders/{DigitalGlitch.mjs → DigitalGlitch.cjs} +3 -3
- package/dist/shaders/DigitalGlitch.js +3 -3
- package/dist/shaders/{DotScreenShader.mjs → DotScreenShader.cjs} +6 -6
- package/dist/shaders/DotScreenShader.js +6 -6
- package/dist/shaders/{FXAAShader.mjs → FXAAShader.cjs} +5 -5
- package/dist/shaders/FXAAShader.js +5 -5
- package/dist/shaders/{FilmShader.mjs → FilmShader.cjs} +3 -3
- package/dist/shaders/FilmShader.js +3 -3
- package/dist/shaders/{FocusShader.mjs → FocusShader.cjs} +3 -3
- package/dist/shaders/FocusShader.js +3 -3
- package/dist/shaders/{FreiChenShader.mjs → FreiChenShader.cjs} +5 -5
- package/dist/shaders/FreiChenShader.js +5 -5
- package/dist/shaders/{FresnelShader.mjs → FresnelShader.cjs} +3 -3
- package/dist/shaders/FresnelShader.js +3 -3
- package/dist/shaders/{GammaCorrectionShader.mjs → GammaCorrectionShader.cjs} +3 -3
- package/dist/shaders/GammaCorrectionShader.js +3 -3
- package/dist/shaders/{GodRaysShader.mjs → GodRaysShader.cjs} +11 -11
- package/dist/shaders/GodRaysShader.js +11 -11
- package/dist/shaders/{HalftoneShader.mjs → HalftoneShader.cjs} +3 -3
- package/dist/shaders/HalftoneShader.js +3 -3
- package/dist/shaders/{HorizontalBlurShader.mjs → HorizontalBlurShader.cjs} +3 -3
- package/dist/shaders/HorizontalBlurShader.js +3 -3
- package/dist/shaders/{HorizontalTiltShiftShader.mjs → HorizontalTiltShiftShader.cjs} +3 -3
- package/dist/shaders/HorizontalTiltShiftShader.js +3 -3
- package/dist/shaders/{HueSaturationShader.mjs → HueSaturationShader.cjs} +3 -3
- package/dist/shaders/HueSaturationShader.js +3 -3
- package/dist/shaders/{KaleidoShader.mjs → KaleidoShader.cjs} +3 -3
- package/dist/shaders/KaleidoShader.js +3 -3
- package/dist/shaders/{LuminosityHighPassShader.mjs → LuminosityHighPassShader.cjs} +5 -5
- package/dist/shaders/LuminosityHighPassShader.js +5 -5
- package/dist/shaders/{LuminosityShader.mjs → LuminosityShader.cjs} +3 -3
- package/dist/shaders/LuminosityShader.js +3 -3
- package/dist/shaders/{MirrorShader.mjs → MirrorShader.cjs} +3 -3
- package/dist/shaders/MirrorShader.js +3 -3
- package/dist/shaders/{NormalMapShader.mjs → NormalMapShader.cjs} +6 -6
- package/dist/shaders/NormalMapShader.js +6 -6
- package/dist/shaders/{ParallaxShader.mjs → ParallaxShader.cjs} +3 -3
- package/dist/shaders/ParallaxShader.js +3 -3
- package/dist/shaders/{PixelShader.mjs → PixelShader.cjs} +3 -3
- package/dist/shaders/PixelShader.js +3 -3
- package/dist/shaders/{RGBShiftShader.mjs → RGBShiftShader.cjs} +3 -3
- package/dist/shaders/RGBShiftShader.js +3 -3
- package/dist/shaders/{SAOShader.mjs → SAOShader.cjs} +7 -7
- package/dist/shaders/SAOShader.js +7 -7
- package/dist/shaders/{SMAAShader.mjs → SMAAShader.cjs} +9 -9
- package/dist/shaders/SMAAShader.js +9 -9
- package/dist/shaders/{SSAOShader.mjs → SSAOShader.cjs} +10 -10
- package/dist/shaders/SSAOShader.js +10 -10
- package/dist/shaders/{SSRShader.mjs → SSRShader.cjs} +10 -10
- package/dist/shaders/SSRShader.js +10 -10
- package/dist/shaders/{SepiaShader.mjs → SepiaShader.cjs} +3 -3
- package/dist/shaders/SepiaShader.js +3 -3
- package/dist/shaders/{SobelOperatorShader.mjs → SobelOperatorShader.cjs} +5 -5
- package/dist/shaders/SobelOperatorShader.js +5 -5
- package/dist/shaders/{SubsurfaceScatteringShader.mjs → SubsurfaceScatteringShader.cjs} +13 -13
- package/dist/shaders/SubsurfaceScatteringShader.js +13 -13
- package/dist/shaders/{TechnicolorShader.mjs → TechnicolorShader.cjs} +3 -3
- package/dist/shaders/TechnicolorShader.js +3 -3
- package/dist/shaders/{ToneMapShader.mjs → ToneMapShader.cjs} +3 -3
- package/dist/shaders/ToneMapShader.js +3 -3
- package/dist/shaders/{ToonShader.mjs → ToonShader.cjs} +32 -32
- package/dist/shaders/ToonShader.js +32 -32
- package/dist/shaders/{TriangleBlurShader.mjs → TriangleBlurShader.cjs} +5 -5
- package/dist/shaders/TriangleBlurShader.js +5 -5
- package/dist/shaders/{UnpackDepthRGBAShader.mjs → UnpackDepthRGBAShader.cjs} +3 -3
- package/dist/shaders/UnpackDepthRGBAShader.js +3 -3
- package/dist/shaders/{VerticalBlurShader.mjs → VerticalBlurShader.cjs} +3 -3
- package/dist/shaders/VerticalBlurShader.js +3 -3
- package/dist/shaders/{VerticalTiltShiftShader.mjs → VerticalTiltShiftShader.cjs} +3 -3
- package/dist/shaders/VerticalTiltShiftShader.js +3 -3
- package/dist/shaders/{VignetteShader.mjs → VignetteShader.cjs} +3 -3
- package/dist/shaders/VignetteShader.js +3 -3
- package/dist/shaders/{VolumeShader.mjs → VolumeShader.cjs} +6 -6
- package/dist/shaders/VolumeShader.js +6 -6
- package/dist/shaders/{WaterRefractionShader.mjs → WaterRefractionShader.cjs} +3 -3
- package/dist/shaders/WaterRefractionShader.js +3 -3
- package/dist/shaders/types.cjs +1 -0
- package/dist/shaders/types.js +1 -1
- package/dist/textures/{FlakesTexture.mjs → FlakesTexture.cjs} +3 -3
- package/dist/textures/FlakesTexture.js +3 -3
- package/dist/types/Loader.cjs +26 -0
- package/dist/types/Loader.js +5 -22
- package/dist/types/helpers.cjs +4 -0
- package/dist/types/helpers.js +3 -3
- package/dist/utils/{BufferGeometryUtils.mjs → BufferGeometryUtils.cjs} +41 -41
- package/dist/utils/BufferGeometryUtils.js +41 -41
- package/dist/utils/{GeometryCompressionUtils.mjs → GeometryCompressionUtils.cjs} +94 -94
- package/dist/utils/GeometryCompressionUtils.js +94 -94
- package/dist/utils/{GeometryUtils.mjs → GeometryUtils.cjs} +18 -18
- package/dist/utils/GeometryUtils.js +18 -18
- package/dist/utils/{RoughnessMipmapper.mjs → RoughnessMipmapper.cjs} +13 -13
- package/dist/utils/RoughnessMipmapper.js +13 -13
- package/dist/utils/{SceneUtils.mjs → SceneUtils.cjs} +8 -8
- package/dist/utils/SceneUtils.js +8 -8
- package/dist/utils/{ShadowMapViewer.mjs → ShadowMapViewer.cjs} +18 -18
- package/dist/utils/ShadowMapViewer.js +18 -18
- package/dist/utils/{SkeletonUtils.mjs → SkeletonUtils.cjs} +10 -10
- package/dist/utils/SkeletonUtils.js +10 -10
- package/dist/utils/{UVsDebug.mjs → UVsDebug.cjs} +7 -7
- package/dist/utils/UVsDebug.js +7 -7
- package/dist/utils/{WorkerPool.mjs → WorkerPool.cjs} +3 -3
- package/dist/utils/WorkerPool.js +3 -3
- package/dist/webxr/{ARButton.mjs → ARButton.cjs} +3 -3
- package/dist/webxr/ARButton.js +3 -3
- package/dist/webxr/{OculusHandModel.mjs → OculusHandModel.cjs} +9 -9
- package/dist/webxr/OculusHandModel.js +9 -9
- package/dist/webxr/{OculusHandPointerModel.mjs → OculusHandPointerModel.cjs} +41 -24
- package/dist/webxr/OculusHandPointerModel.js +24 -41
- package/dist/webxr/Text2D.cjs +48 -0
- package/dist/webxr/Text2D.js +9 -26
- package/dist/webxr/{VRButton.mjs → VRButton.cjs} +3 -3
- package/dist/webxr/VRButton.js +3 -3
- package/dist/webxr/{XRControllerModelFactory.mjs → XRControllerModelFactory.cjs} +18 -18
- package/dist/webxr/XRControllerModelFactory.js +18 -18
- package/dist/webxr/{XREstimatedLight.mjs → XREstimatedLight.cjs} +8 -8
- package/dist/webxr/XREstimatedLight.js +8 -8
- package/dist/webxr/{XRHandMeshModel.mjs → XRHandMeshModel.cjs} +5 -5
- package/dist/webxr/XRHandMeshModel.js +5 -5
- package/dist/webxr/{XRHandModelFactory.mjs → XRHandModelFactory.cjs} +10 -10
- package/dist/webxr/XRHandModelFactory.js +10 -10
- package/dist/webxr/{XRHandPrimitiveModel.mjs → XRHandPrimitiveModel.cjs} +11 -11
- package/dist/webxr/XRHandPrimitiveModel.js +11 -11
- package/package.json +3 -3
- package/dist/_polyfill/CompressedArrayTexture.mjs +0 -12
- package/dist/_polyfill/Data3DTexture.mjs +0 -17
- package/dist/environments/RoomEnvironment.mjs +0 -78
- package/dist/geometries/ConvexGeometry.mjs +0 -26
- package/dist/index.mjs +0 -613
- package/dist/lines/Line2.mjs +0 -13
- package/dist/lines/Wireframe.mjs +0 -32
- package/dist/lines/WireframeGeometry2.mjs +0 -13
- package/dist/objects/ReflectorRTT.mjs +0 -10
- package/dist/shaders/types.mjs +0 -1
- package/dist/types/Loader.mjs +0 -9
- package/dist/types/helpers.mjs +0 -4
- package/dist/webxr/Text2D.mjs +0 -31
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const BufferGeometryUtils = require("../utils/BufferGeometryUtils.js");
|
|
5
|
-
class GLTFLoader extends THREE.Loader {
|
|
1
|
+
import { Loader, LoaderUtils, FileLoader, Color, SpotLight, PointLight, DirectionalLight, MeshBasicMaterial, MeshPhysicalMaterial, Vector2, Matrix4, Vector3, Quaternion, InstancedMesh, Object3D, Interpolant, NearestFilter, LinearFilter, NearestMipmapNearestFilter, LinearMipmapNearestFilter, NearestMipmapLinearFilter, LinearMipmapLinearFilter, ClampToEdgeWrapping, MirroredRepeatWrapping, RepeatWrapping, REVISION, InterpolateLinear, InterpolateDiscrete, MeshStandardMaterial, FrontSide, TextureLoader, ImageBitmapLoader, BufferAttribute, InterleavedBuffer, InterleavedBufferAttribute, Texture, PointsMaterial, Material, LineBasicMaterial, DoubleSide, PropertyBinding, BufferGeometry, SkinnedMesh, Mesh, TriangleStripDrawMode, TriangleFanDrawMode, LineSegments, Line, LineLoop, Points, Group, PerspectiveCamera, MathUtils, OrthographicCamera, Skeleton, VectorKeyframeTrack, QuaternionKeyframeTrack, NumberKeyframeTrack, AnimationClip, Bone, Box3, Sphere } from "three";
|
|
2
|
+
import { toTrianglesDrawMode } from "../utils/BufferGeometryUtils.js";
|
|
3
|
+
class GLTFLoader extends Loader {
|
|
6
4
|
constructor(manager) {
|
|
7
5
|
super(manager);
|
|
8
6
|
this.dracoLoader = null;
|
|
@@ -60,7 +58,7 @@ class GLTFLoader extends THREE.Loader {
|
|
|
60
58
|
} else if (this.path !== "") {
|
|
61
59
|
resourcePath = this.path;
|
|
62
60
|
} else {
|
|
63
|
-
resourcePath =
|
|
61
|
+
resourcePath = LoaderUtils.extractUrlBase(url);
|
|
64
62
|
}
|
|
65
63
|
this.manager.itemStart(url);
|
|
66
64
|
const _onError = function(e) {
|
|
@@ -72,7 +70,7 @@ class GLTFLoader extends THREE.Loader {
|
|
|
72
70
|
scope.manager.itemError(url);
|
|
73
71
|
scope.manager.itemEnd(url);
|
|
74
72
|
};
|
|
75
|
-
const loader = new
|
|
73
|
+
const loader = new FileLoader(this.manager);
|
|
76
74
|
loader.setPath(this.path);
|
|
77
75
|
loader.setResponseType("arraybuffer");
|
|
78
76
|
loader.setRequestHeader(this.requestHeader);
|
|
@@ -132,7 +130,7 @@ class GLTFLoader extends THREE.Loader {
|
|
|
132
130
|
if (typeof data === "string") {
|
|
133
131
|
json = JSON.parse(data);
|
|
134
132
|
} else if (data instanceof ArrayBuffer) {
|
|
135
|
-
const magic =
|
|
133
|
+
const magic = LoaderUtils.decodeText(new Uint8Array(data.slice(0, 4)));
|
|
136
134
|
if (magic === BINARY_EXTENSION_HEADER_MAGIC) {
|
|
137
135
|
try {
|
|
138
136
|
extensions[EXTENSIONS.KHR_BINARY_GLTF] = new GLTFBinaryExtension(data);
|
|
@@ -143,7 +141,7 @@ class GLTFLoader extends THREE.Loader {
|
|
|
143
141
|
}
|
|
144
142
|
json = JSON.parse(extensions[EXTENSIONS.KHR_BINARY_GLTF].content);
|
|
145
143
|
} else {
|
|
146
|
-
json = JSON.parse(
|
|
144
|
+
json = JSON.parse(LoaderUtils.decodeText(new Uint8Array(data)));
|
|
147
145
|
}
|
|
148
146
|
} else {
|
|
149
147
|
json = data;
|
|
@@ -267,22 +265,22 @@ class GLTFLightsExtension {
|
|
|
267
265
|
const lightDefs = extensions.lights || [];
|
|
268
266
|
const lightDef = lightDefs[lightIndex];
|
|
269
267
|
let lightNode;
|
|
270
|
-
const color = new
|
|
268
|
+
const color = new Color(16777215);
|
|
271
269
|
if (lightDef.color !== void 0)
|
|
272
270
|
color.fromArray(lightDef.color);
|
|
273
271
|
const range = lightDef.range !== void 0 ? lightDef.range : 0;
|
|
274
272
|
switch (lightDef.type) {
|
|
275
273
|
case "directional":
|
|
276
|
-
lightNode = new
|
|
274
|
+
lightNode = new DirectionalLight(color);
|
|
277
275
|
lightNode.target.position.set(0, 0, -1);
|
|
278
276
|
lightNode.add(lightNode.target);
|
|
279
277
|
break;
|
|
280
278
|
case "point":
|
|
281
|
-
lightNode = new
|
|
279
|
+
lightNode = new PointLight(color);
|
|
282
280
|
lightNode.distance = range;
|
|
283
281
|
break;
|
|
284
282
|
case "spot":
|
|
285
|
-
lightNode = new
|
|
283
|
+
lightNode = new SpotLight(color);
|
|
286
284
|
lightNode.distance = range;
|
|
287
285
|
lightDef.spot = lightDef.spot || {};
|
|
288
286
|
lightDef.spot.innerConeAngle = lightDef.spot.innerConeAngle !== void 0 ? lightDef.spot.innerConeAngle : 0;
|
|
@@ -329,11 +327,11 @@ class GLTFMaterialsUnlitExtension {
|
|
|
329
327
|
this.name = EXTENSIONS.KHR_MATERIALS_UNLIT;
|
|
330
328
|
}
|
|
331
329
|
getMaterialType() {
|
|
332
|
-
return
|
|
330
|
+
return MeshBasicMaterial;
|
|
333
331
|
}
|
|
334
332
|
extendParams(materialParams, materialDef, parser) {
|
|
335
333
|
const pending = [];
|
|
336
|
-
materialParams.color = new
|
|
334
|
+
materialParams.color = new Color(1, 1, 1);
|
|
337
335
|
materialParams.opacity = 1;
|
|
338
336
|
const metallicRoughness = materialDef.pbrMetallicRoughness;
|
|
339
337
|
if (metallicRoughness) {
|
|
@@ -377,7 +375,7 @@ class GLTFMaterialsClearcoatExtension {
|
|
|
377
375
|
const materialDef = parser.json.materials[materialIndex];
|
|
378
376
|
if (!materialDef.extensions || !materialDef.extensions[this.name])
|
|
379
377
|
return null;
|
|
380
|
-
return
|
|
378
|
+
return MeshPhysicalMaterial;
|
|
381
379
|
}
|
|
382
380
|
extendMaterialParams(materialIndex, materialParams) {
|
|
383
381
|
const parser = this.parser;
|
|
@@ -403,7 +401,7 @@ class GLTFMaterialsClearcoatExtension {
|
|
|
403
401
|
pending.push(parser.assignTexture(materialParams, "clearcoatNormalMap", extension.clearcoatNormalTexture));
|
|
404
402
|
if (extension.clearcoatNormalTexture.scale !== void 0) {
|
|
405
403
|
const scale = extension.clearcoatNormalTexture.scale;
|
|
406
|
-
materialParams.clearcoatNormalScale = new
|
|
404
|
+
materialParams.clearcoatNormalScale = new Vector2(scale, scale);
|
|
407
405
|
}
|
|
408
406
|
}
|
|
409
407
|
return Promise.all(pending);
|
|
@@ -419,7 +417,7 @@ class GLTFMaterialsIridescenceExtension {
|
|
|
419
417
|
const materialDef = parser.json.materials[materialIndex];
|
|
420
418
|
if (!materialDef.extensions || !materialDef.extensions[this.name])
|
|
421
419
|
return null;
|
|
422
|
-
return
|
|
420
|
+
return MeshPhysicalMaterial;
|
|
423
421
|
}
|
|
424
422
|
extendMaterialParams(materialIndex, materialParams) {
|
|
425
423
|
const parser = this.parser;
|
|
@@ -465,7 +463,7 @@ class GLTFMaterialsSheenExtension {
|
|
|
465
463
|
const materialDef = parser.json.materials[materialIndex];
|
|
466
464
|
if (!materialDef.extensions || !materialDef.extensions[this.name])
|
|
467
465
|
return null;
|
|
468
|
-
return
|
|
466
|
+
return MeshPhysicalMaterial;
|
|
469
467
|
}
|
|
470
468
|
extendMaterialParams(materialIndex, materialParams) {
|
|
471
469
|
const parser = this.parser;
|
|
@@ -474,7 +472,7 @@ class GLTFMaterialsSheenExtension {
|
|
|
474
472
|
return Promise.resolve();
|
|
475
473
|
}
|
|
476
474
|
const pending = [];
|
|
477
|
-
materialParams.sheenColor = new
|
|
475
|
+
materialParams.sheenColor = new Color(0, 0, 0);
|
|
478
476
|
materialParams.sheenRoughness = 0;
|
|
479
477
|
materialParams.sheen = 1;
|
|
480
478
|
const extension = materialDef.extensions[this.name];
|
|
@@ -503,7 +501,7 @@ class GLTFMaterialsTransmissionExtension {
|
|
|
503
501
|
const materialDef = parser.json.materials[materialIndex];
|
|
504
502
|
if (!materialDef.extensions || !materialDef.extensions[this.name])
|
|
505
503
|
return null;
|
|
506
|
-
return
|
|
504
|
+
return MeshPhysicalMaterial;
|
|
507
505
|
}
|
|
508
506
|
extendMaterialParams(materialIndex, materialParams) {
|
|
509
507
|
const parser = this.parser;
|
|
@@ -532,7 +530,7 @@ class GLTFMaterialsVolumeExtension {
|
|
|
532
530
|
const materialDef = parser.json.materials[materialIndex];
|
|
533
531
|
if (!materialDef.extensions || !materialDef.extensions[this.name])
|
|
534
532
|
return null;
|
|
535
|
-
return
|
|
533
|
+
return MeshPhysicalMaterial;
|
|
536
534
|
}
|
|
537
535
|
extendMaterialParams(materialIndex, materialParams) {
|
|
538
536
|
const parser = this.parser;
|
|
@@ -548,7 +546,7 @@ class GLTFMaterialsVolumeExtension {
|
|
|
548
546
|
}
|
|
549
547
|
materialParams.attenuationDistance = extension.attenuationDistance || Infinity;
|
|
550
548
|
const colorArray = extension.attenuationColor || [1, 1, 1];
|
|
551
|
-
materialParams.attenuationColor = new
|
|
549
|
+
materialParams.attenuationColor = new Color(colorArray[0], colorArray[1], colorArray[2]);
|
|
552
550
|
return Promise.all(pending);
|
|
553
551
|
}
|
|
554
552
|
}
|
|
@@ -562,7 +560,7 @@ class GLTFMaterialsIorExtension {
|
|
|
562
560
|
const materialDef = parser.json.materials[materialIndex];
|
|
563
561
|
if (!materialDef.extensions || !materialDef.extensions[this.name])
|
|
564
562
|
return null;
|
|
565
|
-
return
|
|
563
|
+
return MeshPhysicalMaterial;
|
|
566
564
|
}
|
|
567
565
|
extendMaterialParams(materialIndex, materialParams) {
|
|
568
566
|
const parser = this.parser;
|
|
@@ -585,7 +583,7 @@ class GLTFMaterialsSpecularExtension {
|
|
|
585
583
|
const materialDef = parser.json.materials[materialIndex];
|
|
586
584
|
if (!materialDef.extensions || !materialDef.extensions[this.name])
|
|
587
585
|
return null;
|
|
588
|
-
return
|
|
586
|
+
return MeshPhysicalMaterial;
|
|
589
587
|
}
|
|
590
588
|
extendMaterialParams(materialIndex, materialParams) {
|
|
591
589
|
const parser = this.parser;
|
|
@@ -600,7 +598,7 @@ class GLTFMaterialsSpecularExtension {
|
|
|
600
598
|
pending.push(parser.assignTexture(materialParams, "specularIntensityMap", extension.specularTexture));
|
|
601
599
|
}
|
|
602
600
|
const colorArray = extension.specularColorFactor || [1, 1, 1];
|
|
603
|
-
materialParams.specularColor = new
|
|
601
|
+
materialParams.specularColor = new Color(colorArray[0], colorArray[1], colorArray[2]);
|
|
604
602
|
if (extension.specularColorTexture !== void 0) {
|
|
605
603
|
pending.push(
|
|
606
604
|
parser.assignTexture(materialParams, "specularColorMap", extension.specularColorTexture, 3001)
|
|
@@ -810,11 +808,11 @@ class GLTFMeshGpuInstancing {
|
|
|
810
808
|
const count = results[0].count;
|
|
811
809
|
const instancedMeshes = [];
|
|
812
810
|
for (const mesh of meshes) {
|
|
813
|
-
const m = new
|
|
814
|
-
const p = new
|
|
815
|
-
const q = new
|
|
816
|
-
const s = new
|
|
817
|
-
const instancedMesh = new
|
|
811
|
+
const m = new Matrix4();
|
|
812
|
+
const p = new Vector3();
|
|
813
|
+
const q = new Quaternion();
|
|
814
|
+
const s = new Vector3(1, 1, 1);
|
|
815
|
+
const instancedMesh = new InstancedMesh(mesh.geometry, mesh.material, count);
|
|
818
816
|
for (let i = 0; i < count; i++) {
|
|
819
817
|
if (attributes.TRANSLATION) {
|
|
820
818
|
p.fromBufferAttribute(attributes.TRANSLATION, i);
|
|
@@ -832,7 +830,7 @@ class GLTFMeshGpuInstancing {
|
|
|
832
830
|
mesh.geometry.setAttribute(attributeName, attributes[attributeName]);
|
|
833
831
|
}
|
|
834
832
|
}
|
|
835
|
-
|
|
833
|
+
Object3D.prototype.copy.call(instancedMesh, mesh);
|
|
836
834
|
this.parser.assignFinalMaterial(instancedMesh);
|
|
837
835
|
instancedMeshes.push(instancedMesh);
|
|
838
836
|
}
|
|
@@ -855,7 +853,7 @@ class GLTFBinaryExtension {
|
|
|
855
853
|
this.body = null;
|
|
856
854
|
const headerView = new DataView(data, 0, BINARY_EXTENSION_HEADER_LENGTH);
|
|
857
855
|
this.header = {
|
|
858
|
-
magic:
|
|
856
|
+
magic: LoaderUtils.decodeText(new Uint8Array(data.slice(0, 4))),
|
|
859
857
|
version: headerView.getUint32(4, true),
|
|
860
858
|
length: headerView.getUint32(8, true)
|
|
861
859
|
};
|
|
@@ -874,7 +872,7 @@ class GLTFBinaryExtension {
|
|
|
874
872
|
chunkIndex += 4;
|
|
875
873
|
if (chunkType === BINARY_EXTENSION_CHUNK_TYPES.JSON) {
|
|
876
874
|
const contentArray = new Uint8Array(data, BINARY_EXTENSION_HEADER_LENGTH + chunkIndex, chunkLength);
|
|
877
|
-
this.content =
|
|
875
|
+
this.content = LoaderUtils.decodeText(contentArray);
|
|
878
876
|
} else if (chunkType === BINARY_EXTENSION_CHUNK_TYPES.BIN) {
|
|
879
877
|
const byteOffset = BINARY_EXTENSION_HEADER_LENGTH + chunkIndex;
|
|
880
878
|
this.body = data.slice(byteOffset, byteOffset + chunkLength);
|
|
@@ -967,7 +965,7 @@ class GLTFMeshQuantizationExtension {
|
|
|
967
965
|
this.name = EXTENSIONS.KHR_MESH_QUANTIZATION;
|
|
968
966
|
}
|
|
969
967
|
}
|
|
970
|
-
class GLTFCubicSplineInterpolant extends
|
|
968
|
+
class GLTFCubicSplineInterpolant extends Interpolant {
|
|
971
969
|
constructor(parameterPositions, sampleValues, sampleSize, resultBuffer) {
|
|
972
970
|
super(parameterPositions, sampleValues, sampleSize, resultBuffer);
|
|
973
971
|
}
|
|
@@ -1004,7 +1002,7 @@ class GLTFCubicSplineInterpolant extends THREE.Interpolant {
|
|
|
1004
1002
|
return result;
|
|
1005
1003
|
}
|
|
1006
1004
|
}
|
|
1007
|
-
const _q = /* @__PURE__ */ new
|
|
1005
|
+
const _q = /* @__PURE__ */ new Quaternion();
|
|
1008
1006
|
class GLTFCubicSplineQuaternionInterpolant extends GLTFCubicSplineInterpolant {
|
|
1009
1007
|
interpolate_(i1, t0, t, t1) {
|
|
1010
1008
|
const result = super.interpolate_(i1, t0, t, t1);
|
|
@@ -1042,17 +1040,17 @@ const WEBGL_COMPONENT_TYPES = {
|
|
|
1042
1040
|
5126: Float32Array
|
|
1043
1041
|
};
|
|
1044
1042
|
const WEBGL_FILTERS = {
|
|
1045
|
-
9728:
|
|
1046
|
-
9729:
|
|
1047
|
-
9984:
|
|
1048
|
-
9985:
|
|
1049
|
-
9986:
|
|
1050
|
-
9987:
|
|
1043
|
+
9728: NearestFilter,
|
|
1044
|
+
9729: LinearFilter,
|
|
1045
|
+
9984: NearestMipmapNearestFilter,
|
|
1046
|
+
9985: LinearMipmapNearestFilter,
|
|
1047
|
+
9986: NearestMipmapLinearFilter,
|
|
1048
|
+
9987: LinearMipmapLinearFilter
|
|
1051
1049
|
};
|
|
1052
1050
|
const WEBGL_WRAPPINGS = {
|
|
1053
|
-
33071:
|
|
1054
|
-
33648:
|
|
1055
|
-
10497:
|
|
1051
|
+
33071: ClampToEdgeWrapping,
|
|
1052
|
+
33648: MirroredRepeatWrapping,
|
|
1053
|
+
10497: RepeatWrapping
|
|
1056
1054
|
};
|
|
1057
1055
|
const WEBGL_TYPE_SIZES = {
|
|
1058
1056
|
SCALAR: 1,
|
|
@@ -1070,7 +1068,7 @@ const ATTRIBUTES = {
|
|
|
1070
1068
|
// uv => uv1, 4 uv channels
|
|
1071
1069
|
// https://github.com/mrdoob/three.js/pull/25943
|
|
1072
1070
|
// https://github.com/mrdoob/three.js/pull/25788
|
|
1073
|
-
...
|
|
1071
|
+
...REVISION.replace(/\D+/g, "") >= 152 ? {
|
|
1074
1072
|
TEXCOORD_0: "uv",
|
|
1075
1073
|
TEXCOORD_1: "uv1",
|
|
1076
1074
|
TEXCOORD_2: "uv2",
|
|
@@ -1093,8 +1091,8 @@ const INTERPOLATION = {
|
|
|
1093
1091
|
CUBICSPLINE: void 0,
|
|
1094
1092
|
// We use a custom interpolant (GLTFCubicSplineInterpolation) for CUBICSPLINE tracks. Each
|
|
1095
1093
|
// keyframe track will be initialized with a default interpolation type, then modified.
|
|
1096
|
-
LINEAR:
|
|
1097
|
-
STEP:
|
|
1094
|
+
LINEAR: InterpolateLinear,
|
|
1095
|
+
STEP: InterpolateDiscrete
|
|
1098
1096
|
};
|
|
1099
1097
|
const ALPHA_MODES = {
|
|
1100
1098
|
OPAQUE: "OPAQUE",
|
|
@@ -1103,14 +1101,14 @@ const ALPHA_MODES = {
|
|
|
1103
1101
|
};
|
|
1104
1102
|
function createDefaultMaterial(cache) {
|
|
1105
1103
|
if (cache["DefaultMaterial"] === void 0) {
|
|
1106
|
-
cache["DefaultMaterial"] = new
|
|
1104
|
+
cache["DefaultMaterial"] = new MeshStandardMaterial({
|
|
1107
1105
|
color: 16777215,
|
|
1108
1106
|
emissive: 0,
|
|
1109
1107
|
metalness: 1,
|
|
1110
1108
|
roughness: 1,
|
|
1111
1109
|
transparent: false,
|
|
1112
1110
|
depthTest: true,
|
|
1113
|
-
side:
|
|
1111
|
+
side: FrontSide
|
|
1114
1112
|
});
|
|
1115
1113
|
}
|
|
1116
1114
|
return cache["DefaultMaterial"];
|
|
@@ -1243,7 +1241,7 @@ function getImageURIMimeType(uri) {
|
|
|
1243
1241
|
return "image/webp";
|
|
1244
1242
|
return "image/png";
|
|
1245
1243
|
}
|
|
1246
|
-
const _identityMatrix = /* @__PURE__ */ new
|
|
1244
|
+
const _identityMatrix = /* @__PURE__ */ new Matrix4();
|
|
1247
1245
|
class GLTFParser {
|
|
1248
1246
|
constructor(json = {}, options = {}) {
|
|
1249
1247
|
this.json = json;
|
|
@@ -1269,13 +1267,13 @@ class GLTFParser {
|
|
|
1269
1267
|
firefoxVersion = isFirefox ? navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1] : -1;
|
|
1270
1268
|
}
|
|
1271
1269
|
if (typeof createImageBitmap === "undefined" || isSafari || isFirefox && firefoxVersion < 98) {
|
|
1272
|
-
this.textureLoader = new
|
|
1270
|
+
this.textureLoader = new TextureLoader(this.options.manager);
|
|
1273
1271
|
} else {
|
|
1274
|
-
this.textureLoader = new
|
|
1272
|
+
this.textureLoader = new ImageBitmapLoader(this.options.manager);
|
|
1275
1273
|
}
|
|
1276
1274
|
this.textureLoader.setCrossOrigin(this.options.crossOrigin);
|
|
1277
1275
|
this.textureLoader.setRequestHeader(this.options.requestHeader);
|
|
1278
|
-
this.fileLoader = new
|
|
1276
|
+
this.fileLoader = new FileLoader(this.options.manager);
|
|
1279
1277
|
this.fileLoader.setResponseType("arraybuffer");
|
|
1280
1278
|
if (this.options.crossOrigin === "use-credentials") {
|
|
1281
1279
|
this.fileLoader.setWithCredentials(true);
|
|
@@ -1513,7 +1511,7 @@ class GLTFParser {
|
|
|
1513
1511
|
}
|
|
1514
1512
|
const options = this.options;
|
|
1515
1513
|
return new Promise(function(resolve, reject) {
|
|
1516
|
-
loader.load(
|
|
1514
|
+
loader.load(LoaderUtils.resolveURL(bufferDef.uri, options.path), resolve, void 0, function() {
|
|
1517
1515
|
reject(new Error('THREE.GLTFLoader: Failed to load buffer "' + bufferDef.uri + '".'));
|
|
1518
1516
|
});
|
|
1519
1517
|
});
|
|
@@ -1545,7 +1543,7 @@ class GLTFParser {
|
|
|
1545
1543
|
const TypedArray = WEBGL_COMPONENT_TYPES[accessorDef.componentType];
|
|
1546
1544
|
const normalized = accessorDef.normalized === true;
|
|
1547
1545
|
const array = new TypedArray(accessorDef.count * itemSize);
|
|
1548
|
-
return Promise.resolve(new
|
|
1546
|
+
return Promise.resolve(new BufferAttribute(array, itemSize, normalized));
|
|
1549
1547
|
}
|
|
1550
1548
|
const pendingBufferViews = [];
|
|
1551
1549
|
if (accessorDef.bufferView !== void 0) {
|
|
@@ -1573,10 +1571,10 @@ class GLTFParser {
|
|
|
1573
1571
|
let ib = parser.cache.get(ibCacheKey);
|
|
1574
1572
|
if (!ib) {
|
|
1575
1573
|
array = new TypedArray(bufferView, ibSlice * byteStride, accessorDef.count * byteStride / elementBytes);
|
|
1576
|
-
ib = new
|
|
1574
|
+
ib = new InterleavedBuffer(array, byteStride / elementBytes);
|
|
1577
1575
|
parser.cache.add(ibCacheKey, ib);
|
|
1578
1576
|
}
|
|
1579
|
-
bufferAttribute = new
|
|
1577
|
+
bufferAttribute = new InterleavedBufferAttribute(
|
|
1580
1578
|
ib,
|
|
1581
1579
|
itemSize,
|
|
1582
1580
|
byteOffset % byteStride / elementBytes,
|
|
@@ -1588,7 +1586,7 @@ class GLTFParser {
|
|
|
1588
1586
|
} else {
|
|
1589
1587
|
array = new TypedArray(bufferView, byteOffset, accessorDef.count * itemSize);
|
|
1590
1588
|
}
|
|
1591
|
-
bufferAttribute = new
|
|
1589
|
+
bufferAttribute = new BufferAttribute(array, itemSize, normalized);
|
|
1592
1590
|
}
|
|
1593
1591
|
if (accessorDef.sparse !== void 0) {
|
|
1594
1592
|
const itemSizeIndices = WEBGL_TYPE_SIZES.SCALAR;
|
|
@@ -1602,7 +1600,7 @@ class GLTFParser {
|
|
|
1602
1600
|
);
|
|
1603
1601
|
const sparseValues = new TypedArray(bufferViews[2], byteOffsetValues, accessorDef.sparse.count * itemSize);
|
|
1604
1602
|
if (bufferView !== null) {
|
|
1605
|
-
bufferAttribute = new
|
|
1603
|
+
bufferAttribute = new BufferAttribute(
|
|
1606
1604
|
bufferAttribute.array.slice(),
|
|
1607
1605
|
bufferAttribute.itemSize,
|
|
1608
1606
|
bufferAttribute.normalized
|
|
@@ -1660,10 +1658,10 @@ class GLTFParser {
|
|
|
1660
1658
|
}
|
|
1661
1659
|
const samplers = json.samplers || {};
|
|
1662
1660
|
const sampler = samplers[textureDef.sampler] || {};
|
|
1663
|
-
texture.magFilter = WEBGL_FILTERS[sampler.magFilter] ||
|
|
1664
|
-
texture.minFilter = WEBGL_FILTERS[sampler.minFilter] ||
|
|
1665
|
-
texture.wrapS = WEBGL_WRAPPINGS[sampler.wrapS] ||
|
|
1666
|
-
texture.wrapT = WEBGL_WRAPPINGS[sampler.wrapT] ||
|
|
1661
|
+
texture.magFilter = WEBGL_FILTERS[sampler.magFilter] || LinearFilter;
|
|
1662
|
+
texture.minFilter = WEBGL_FILTERS[sampler.minFilter] || LinearMipmapLinearFilter;
|
|
1663
|
+
texture.wrapS = WEBGL_WRAPPINGS[sampler.wrapS] || RepeatWrapping;
|
|
1664
|
+
texture.wrapT = WEBGL_WRAPPINGS[sampler.wrapT] || RepeatWrapping;
|
|
1667
1665
|
parser.associations.set(texture, { textures: textureIndex });
|
|
1668
1666
|
return texture;
|
|
1669
1667
|
}).catch(function() {
|
|
@@ -1698,12 +1696,12 @@ class GLTFParser {
|
|
|
1698
1696
|
let onLoad = resolve;
|
|
1699
1697
|
if (loader.isImageBitmapLoader === true) {
|
|
1700
1698
|
onLoad = function(imageBitmap) {
|
|
1701
|
-
const texture = new
|
|
1699
|
+
const texture = new Texture(imageBitmap);
|
|
1702
1700
|
texture.needsUpdate = true;
|
|
1703
1701
|
resolve(texture);
|
|
1704
1702
|
};
|
|
1705
1703
|
}
|
|
1706
|
-
loader.load(
|
|
1704
|
+
loader.load(LoaderUtils.resolveURL(sourceURI2, options.path), onLoad, void 0, reject);
|
|
1707
1705
|
});
|
|
1708
1706
|
}).then(function(texture) {
|
|
1709
1707
|
if (isObjectURL === true) {
|
|
@@ -1770,8 +1768,8 @@ class GLTFParser {
|
|
|
1770
1768
|
const cacheKey = "PointsMaterial:" + material.uuid;
|
|
1771
1769
|
let pointsMaterial = this.cache.get(cacheKey);
|
|
1772
1770
|
if (!pointsMaterial) {
|
|
1773
|
-
pointsMaterial = new
|
|
1774
|
-
|
|
1771
|
+
pointsMaterial = new PointsMaterial();
|
|
1772
|
+
Material.prototype.copy.call(pointsMaterial, material);
|
|
1775
1773
|
pointsMaterial.color.copy(material.color);
|
|
1776
1774
|
pointsMaterial.map = material.map;
|
|
1777
1775
|
pointsMaterial.sizeAttenuation = false;
|
|
@@ -1782,8 +1780,8 @@ class GLTFParser {
|
|
|
1782
1780
|
const cacheKey = "LineBasicMaterial:" + material.uuid;
|
|
1783
1781
|
let lineMaterial = this.cache.get(cacheKey);
|
|
1784
1782
|
if (!lineMaterial) {
|
|
1785
|
-
lineMaterial = new
|
|
1786
|
-
|
|
1783
|
+
lineMaterial = new LineBasicMaterial();
|
|
1784
|
+
Material.prototype.copy.call(lineMaterial, material);
|
|
1787
1785
|
lineMaterial.color.copy(material.color);
|
|
1788
1786
|
lineMaterial.map = material.map;
|
|
1789
1787
|
this.cache.add(cacheKey, lineMaterial);
|
|
@@ -1819,7 +1817,7 @@ class GLTFParser {
|
|
|
1819
1817
|
mesh.material = material;
|
|
1820
1818
|
}
|
|
1821
1819
|
getMaterialType() {
|
|
1822
|
-
return
|
|
1820
|
+
return MeshStandardMaterial;
|
|
1823
1821
|
}
|
|
1824
1822
|
/**
|
|
1825
1823
|
* Specification: https://github.com/KhronosGroup/glTF/blob/master/specification/2.0/README.md#materials
|
|
@@ -1841,7 +1839,7 @@ class GLTFParser {
|
|
|
1841
1839
|
pending.push(kmuExtension.extendParams(materialParams, materialDef, parser));
|
|
1842
1840
|
} else {
|
|
1843
1841
|
const metallicRoughness = materialDef.pbrMetallicRoughness || {};
|
|
1844
|
-
materialParams.color = new
|
|
1842
|
+
materialParams.color = new Color(1, 1, 1);
|
|
1845
1843
|
materialParams.opacity = 1;
|
|
1846
1844
|
if (Array.isArray(metallicRoughness.baseColorFactor)) {
|
|
1847
1845
|
const array = metallicRoughness.baseColorFactor;
|
|
@@ -1869,7 +1867,7 @@ class GLTFParser {
|
|
|
1869
1867
|
);
|
|
1870
1868
|
}
|
|
1871
1869
|
if (materialDef.doubleSided === true) {
|
|
1872
|
-
materialParams.side =
|
|
1870
|
+
materialParams.side = DoubleSide;
|
|
1873
1871
|
}
|
|
1874
1872
|
const alphaMode = materialDef.alphaMode || ALPHA_MODES.OPAQUE;
|
|
1875
1873
|
if (alphaMode === ALPHA_MODES.BLEND) {
|
|
@@ -1881,24 +1879,24 @@ class GLTFParser {
|
|
|
1881
1879
|
materialParams.alphaTest = materialDef.alphaCutoff !== void 0 ? materialDef.alphaCutoff : 0.5;
|
|
1882
1880
|
}
|
|
1883
1881
|
}
|
|
1884
|
-
if (materialDef.normalTexture !== void 0 && materialType !==
|
|
1882
|
+
if (materialDef.normalTexture !== void 0 && materialType !== MeshBasicMaterial) {
|
|
1885
1883
|
pending.push(parser.assignTexture(materialParams, "normalMap", materialDef.normalTexture));
|
|
1886
|
-
materialParams.normalScale = new
|
|
1884
|
+
materialParams.normalScale = new Vector2(1, 1);
|
|
1887
1885
|
if (materialDef.normalTexture.scale !== void 0) {
|
|
1888
1886
|
const scale = materialDef.normalTexture.scale;
|
|
1889
1887
|
materialParams.normalScale.set(scale, scale);
|
|
1890
1888
|
}
|
|
1891
1889
|
}
|
|
1892
|
-
if (materialDef.occlusionTexture !== void 0 && materialType !==
|
|
1890
|
+
if (materialDef.occlusionTexture !== void 0 && materialType !== MeshBasicMaterial) {
|
|
1893
1891
|
pending.push(parser.assignTexture(materialParams, "aoMap", materialDef.occlusionTexture));
|
|
1894
1892
|
if (materialDef.occlusionTexture.strength !== void 0) {
|
|
1895
1893
|
materialParams.aoMapIntensity = materialDef.occlusionTexture.strength;
|
|
1896
1894
|
}
|
|
1897
1895
|
}
|
|
1898
|
-
if (materialDef.emissiveFactor !== void 0 && materialType !==
|
|
1899
|
-
materialParams.emissive = new
|
|
1896
|
+
if (materialDef.emissiveFactor !== void 0 && materialType !== MeshBasicMaterial) {
|
|
1897
|
+
materialParams.emissive = new Color().fromArray(materialDef.emissiveFactor);
|
|
1900
1898
|
}
|
|
1901
|
-
if (materialDef.emissiveTexture !== void 0 && materialType !==
|
|
1899
|
+
if (materialDef.emissiveTexture !== void 0 && materialType !== MeshBasicMaterial) {
|
|
1902
1900
|
pending.push(parser.assignTexture(materialParams, "emissiveMap", materialDef.emissiveTexture, 3001));
|
|
1903
1901
|
}
|
|
1904
1902
|
return Promise.all(pending).then(function() {
|
|
@@ -1914,7 +1912,7 @@ class GLTFParser {
|
|
|
1914
1912
|
}
|
|
1915
1913
|
/** When Object3D instances are targeted by animation, they need unique names. */
|
|
1916
1914
|
createUniqueName(originalName) {
|
|
1917
|
-
const sanitizedName =
|
|
1915
|
+
const sanitizedName = PropertyBinding.sanitizeNodeName(originalName || "");
|
|
1918
1916
|
let name = sanitizedName;
|
|
1919
1917
|
for (let i = 1; this.nodeNamesUsed[name]; ++i) {
|
|
1920
1918
|
name = sanitizedName + "_" + i;
|
|
@@ -1951,7 +1949,7 @@ class GLTFParser {
|
|
|
1951
1949
|
if (primitive.extensions && primitive.extensions[EXTENSIONS.KHR_DRACO_MESH_COMPRESSION]) {
|
|
1952
1950
|
geometryPromise = createDracoPrimitive(primitive);
|
|
1953
1951
|
} else {
|
|
1954
|
-
geometryPromise = addPrimitiveAttributes(new
|
|
1952
|
+
geometryPromise = addPrimitiveAttributes(new BufferGeometry(), primitive, parser);
|
|
1955
1953
|
}
|
|
1956
1954
|
cache[cacheKey] = { primitive, promise: geometryPromise };
|
|
1957
1955
|
pending.push(geometryPromise);
|
|
@@ -1986,23 +1984,23 @@ class GLTFParser {
|
|
|
1986
1984
|
let mesh;
|
|
1987
1985
|
const material = materials[i];
|
|
1988
1986
|
if (primitive.mode === WEBGL_CONSTANTS.TRIANGLES || primitive.mode === WEBGL_CONSTANTS.TRIANGLE_STRIP || primitive.mode === WEBGL_CONSTANTS.TRIANGLE_FAN || primitive.mode === void 0) {
|
|
1989
|
-
mesh = meshDef.isSkinnedMesh === true ? new
|
|
1987
|
+
mesh = meshDef.isSkinnedMesh === true ? new SkinnedMesh(geometry, material) : new Mesh(geometry, material);
|
|
1990
1988
|
if (mesh.isSkinnedMesh === true) {
|
|
1991
1989
|
mesh.normalizeSkinWeights();
|
|
1992
1990
|
}
|
|
1993
1991
|
if (primitive.mode === WEBGL_CONSTANTS.TRIANGLE_STRIP) {
|
|
1994
|
-
mesh.geometry =
|
|
1992
|
+
mesh.geometry = toTrianglesDrawMode(mesh.geometry, TriangleStripDrawMode);
|
|
1995
1993
|
} else if (primitive.mode === WEBGL_CONSTANTS.TRIANGLE_FAN) {
|
|
1996
|
-
mesh.geometry =
|
|
1994
|
+
mesh.geometry = toTrianglesDrawMode(mesh.geometry, TriangleFanDrawMode);
|
|
1997
1995
|
}
|
|
1998
1996
|
} else if (primitive.mode === WEBGL_CONSTANTS.LINES) {
|
|
1999
|
-
mesh = new
|
|
1997
|
+
mesh = new LineSegments(geometry, material);
|
|
2000
1998
|
} else if (primitive.mode === WEBGL_CONSTANTS.LINE_STRIP) {
|
|
2001
|
-
mesh = new
|
|
1999
|
+
mesh = new Line(geometry, material);
|
|
2002
2000
|
} else if (primitive.mode === WEBGL_CONSTANTS.LINE_LOOP) {
|
|
2003
|
-
mesh = new
|
|
2001
|
+
mesh = new LineLoop(geometry, material);
|
|
2004
2002
|
} else if (primitive.mode === WEBGL_CONSTANTS.POINTS) {
|
|
2005
|
-
mesh = new
|
|
2003
|
+
mesh = new Points(geometry, material);
|
|
2006
2004
|
} else {
|
|
2007
2005
|
throw new Error("THREE.GLTFLoader: Primitive mode unsupported: " + primitive.mode);
|
|
2008
2006
|
}
|
|
@@ -2025,7 +2023,7 @@ class GLTFParser {
|
|
|
2025
2023
|
if (meshes.length === 1) {
|
|
2026
2024
|
return meshes[0];
|
|
2027
2025
|
}
|
|
2028
|
-
const group = new
|
|
2026
|
+
const group = new Group();
|
|
2029
2027
|
parser.associations.set(group, { meshes: meshIndex });
|
|
2030
2028
|
for (let i = 0, il = meshes.length; i < il; i++) {
|
|
2031
2029
|
group.add(meshes[i]);
|
|
@@ -2047,14 +2045,14 @@ class GLTFParser {
|
|
|
2047
2045
|
return;
|
|
2048
2046
|
}
|
|
2049
2047
|
if (cameraDef.type === "perspective") {
|
|
2050
|
-
camera = new
|
|
2051
|
-
|
|
2048
|
+
camera = new PerspectiveCamera(
|
|
2049
|
+
MathUtils.radToDeg(params.yfov),
|
|
2052
2050
|
params.aspectRatio || 1,
|
|
2053
2051
|
params.znear || 1,
|
|
2054
2052
|
params.zfar || 2e6
|
|
2055
2053
|
);
|
|
2056
2054
|
} else if (cameraDef.type === "orthographic") {
|
|
2057
|
-
camera = new
|
|
2055
|
+
camera = new OrthographicCamera(-params.xmag, params.xmag, params.ymag, -params.ymag, params.znear, params.zfar);
|
|
2058
2056
|
}
|
|
2059
2057
|
if (cameraDef.name)
|
|
2060
2058
|
camera.name = this.createUniqueName(cameraDef.name);
|
|
@@ -2086,7 +2084,7 @@ class GLTFParser {
|
|
|
2086
2084
|
const jointNode = jointNodes[i];
|
|
2087
2085
|
if (jointNode) {
|
|
2088
2086
|
bones.push(jointNode);
|
|
2089
|
-
const mat = new
|
|
2087
|
+
const mat = new Matrix4();
|
|
2090
2088
|
if (inverseBindMatrices !== null) {
|
|
2091
2089
|
mat.fromArray(inverseBindMatrices.array, i * 16);
|
|
2092
2090
|
}
|
|
@@ -2095,7 +2093,7 @@ class GLTFParser {
|
|
|
2095
2093
|
console.warn('THREE.GLTFLoader: Joint "%s" could not be found.', skinDef.joints[i]);
|
|
2096
2094
|
}
|
|
2097
2095
|
}
|
|
2098
|
-
return new
|
|
2096
|
+
return new Skeleton(bones, boneInverses);
|
|
2099
2097
|
});
|
|
2100
2098
|
}
|
|
2101
2099
|
/**
|
|
@@ -2152,19 +2150,19 @@ class GLTFParser {
|
|
|
2152
2150
|
let TypedKeyframeTrack;
|
|
2153
2151
|
switch (PATH_PROPERTIES[target.path]) {
|
|
2154
2152
|
case PATH_PROPERTIES.weights:
|
|
2155
|
-
TypedKeyframeTrack =
|
|
2153
|
+
TypedKeyframeTrack = NumberKeyframeTrack;
|
|
2156
2154
|
break;
|
|
2157
2155
|
case PATH_PROPERTIES.rotation:
|
|
2158
|
-
TypedKeyframeTrack =
|
|
2156
|
+
TypedKeyframeTrack = QuaternionKeyframeTrack;
|
|
2159
2157
|
break;
|
|
2160
2158
|
case PATH_PROPERTIES.position:
|
|
2161
2159
|
case PATH_PROPERTIES.scale:
|
|
2162
2160
|
default:
|
|
2163
|
-
TypedKeyframeTrack =
|
|
2161
|
+
TypedKeyframeTrack = VectorKeyframeTrack;
|
|
2164
2162
|
break;
|
|
2165
2163
|
}
|
|
2166
2164
|
const targetName = node.name ? node.name : node.uuid;
|
|
2167
|
-
const interpolation = sampler.interpolation !== void 0 ? INTERPOLATION[sampler.interpolation] :
|
|
2165
|
+
const interpolation = sampler.interpolation !== void 0 ? INTERPOLATION[sampler.interpolation] : InterpolateLinear;
|
|
2168
2166
|
const targetNames = [];
|
|
2169
2167
|
if (PATH_PROPERTIES[target.path] === PATH_PROPERTIES.weights) {
|
|
2170
2168
|
node.traverse(function(object) {
|
|
@@ -2193,7 +2191,7 @@ class GLTFParser {
|
|
|
2193
2191
|
);
|
|
2194
2192
|
if (sampler.interpolation === "CUBICSPLINE") {
|
|
2195
2193
|
track.createInterpolant = function InterpolantFactoryMethodGLTFCubicSpline(result) {
|
|
2196
|
-
const interpolantType = this instanceof
|
|
2194
|
+
const interpolantType = this instanceof QuaternionKeyframeTrack ? GLTFCubicSplineQuaternionInterpolant : GLTFCubicSplineInterpolant;
|
|
2197
2195
|
return new interpolantType(this.times, this.values, this.getValueSize() / 3, result);
|
|
2198
2196
|
};
|
|
2199
2197
|
track.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline = true;
|
|
@@ -2201,7 +2199,7 @@ class GLTFParser {
|
|
|
2201
2199
|
tracks.push(track);
|
|
2202
2200
|
}
|
|
2203
2201
|
}
|
|
2204
|
-
return new
|
|
2202
|
+
return new AnimationClip(animationName, void 0, tracks);
|
|
2205
2203
|
});
|
|
2206
2204
|
}
|
|
2207
2205
|
createNodeMesh(nodeIndex) {
|
|
@@ -2290,13 +2288,13 @@ class GLTFParser {
|
|
|
2290
2288
|
this.nodeCache[nodeIndex] = Promise.all(pending).then(function(objects) {
|
|
2291
2289
|
let node;
|
|
2292
2290
|
if (nodeDef.isBone === true) {
|
|
2293
|
-
node = new
|
|
2291
|
+
node = new Bone();
|
|
2294
2292
|
} else if (objects.length > 1) {
|
|
2295
|
-
node = new
|
|
2293
|
+
node = new Group();
|
|
2296
2294
|
} else if (objects.length === 1) {
|
|
2297
2295
|
node = objects[0];
|
|
2298
2296
|
} else {
|
|
2299
|
-
node = new
|
|
2297
|
+
node = new Object3D();
|
|
2300
2298
|
}
|
|
2301
2299
|
if (node !== objects[0]) {
|
|
2302
2300
|
for (let i = 0, il = objects.length; i < il; i++) {
|
|
@@ -2311,7 +2309,7 @@ class GLTFParser {
|
|
|
2311
2309
|
if (nodeDef.extensions)
|
|
2312
2310
|
addUnknownExtensionsToUserData(extensions, node, nodeDef);
|
|
2313
2311
|
if (nodeDef.matrix !== void 0) {
|
|
2314
|
-
const matrix = new
|
|
2312
|
+
const matrix = new Matrix4();
|
|
2315
2313
|
matrix.fromArray(nodeDef.matrix);
|
|
2316
2314
|
node.applyMatrix4(matrix);
|
|
2317
2315
|
} else {
|
|
@@ -2342,7 +2340,7 @@ class GLTFParser {
|
|
|
2342
2340
|
const extensions = this.extensions;
|
|
2343
2341
|
const sceneDef = this.json.scenes[sceneIndex];
|
|
2344
2342
|
const parser = this;
|
|
2345
|
-
const scene = new
|
|
2343
|
+
const scene = new Group();
|
|
2346
2344
|
if (sceneDef.name)
|
|
2347
2345
|
scene.name = parser.createUniqueName(sceneDef.name);
|
|
2348
2346
|
assignExtrasToUserData(scene, sceneDef);
|
|
@@ -2360,7 +2358,7 @@ class GLTFParser {
|
|
|
2360
2358
|
const reduceAssociations = (node) => {
|
|
2361
2359
|
const reducedAssociations = /* @__PURE__ */ new Map();
|
|
2362
2360
|
for (const [key, value] of parser.associations) {
|
|
2363
|
-
if (key instanceof
|
|
2361
|
+
if (key instanceof Material || key instanceof Texture) {
|
|
2364
2362
|
reducedAssociations.set(key, value);
|
|
2365
2363
|
}
|
|
2366
2364
|
}
|
|
@@ -2379,13 +2377,13 @@ class GLTFParser {
|
|
|
2379
2377
|
}
|
|
2380
2378
|
function computeBounds(geometry, primitiveDef, parser) {
|
|
2381
2379
|
const attributes = primitiveDef.attributes;
|
|
2382
|
-
const box = new
|
|
2380
|
+
const box = new Box3();
|
|
2383
2381
|
if (attributes.POSITION !== void 0) {
|
|
2384
2382
|
const accessor = parser.json.accessors[attributes.POSITION];
|
|
2385
2383
|
const min = accessor.min;
|
|
2386
2384
|
const max = accessor.max;
|
|
2387
2385
|
if (min !== void 0 && max !== void 0) {
|
|
2388
|
-
box.set(new
|
|
2386
|
+
box.set(new Vector3(min[0], min[1], min[2]), new Vector3(max[0], max[1], max[2]));
|
|
2389
2387
|
if (accessor.normalized) {
|
|
2390
2388
|
const boxScale = getNormalizedComponentScale(WEBGL_COMPONENT_TYPES[accessor.componentType]);
|
|
2391
2389
|
box.min.multiplyScalar(boxScale);
|
|
@@ -2400,8 +2398,8 @@ function computeBounds(geometry, primitiveDef, parser) {
|
|
|
2400
2398
|
}
|
|
2401
2399
|
const targets = primitiveDef.targets;
|
|
2402
2400
|
if (targets !== void 0) {
|
|
2403
|
-
const maxDisplacement = new
|
|
2404
|
-
const vector = new
|
|
2401
|
+
const maxDisplacement = new Vector3();
|
|
2402
|
+
const vector = new Vector3();
|
|
2405
2403
|
for (let i = 0, il = targets.length; i < il; i++) {
|
|
2406
2404
|
const target = targets[i];
|
|
2407
2405
|
if (target.POSITION !== void 0) {
|
|
@@ -2425,7 +2423,7 @@ function computeBounds(geometry, primitiveDef, parser) {
|
|
|
2425
2423
|
box.expandByVector(maxDisplacement);
|
|
2426
2424
|
}
|
|
2427
2425
|
geometry.boundingBox = box;
|
|
2428
|
-
const sphere = new
|
|
2426
|
+
const sphere = new Sphere();
|
|
2429
2427
|
box.getCenter(sphere.center);
|
|
2430
2428
|
sphere.radius = box.min.distanceTo(box.max) / 2;
|
|
2431
2429
|
geometry.boundingSphere = sphere;
|
|
@@ -2456,4 +2454,6 @@ function addPrimitiveAttributes(geometry, primitiveDef, parser) {
|
|
|
2456
2454
|
return primitiveDef.targets !== void 0 ? addMorphTargets(geometry, primitiveDef.targets, parser) : geometry;
|
|
2457
2455
|
});
|
|
2458
2456
|
}
|
|
2459
|
-
|
|
2457
|
+
export {
|
|
2458
|
+
GLTFLoader
|
|
2459
|
+
};
|