three-stdlib 2.25.0 → 2.25.1
Sign up to get free protection for your applications and to get access to all the features.
- package/index.cjs +116401 -611
- package/index.js +116037 -263
- package/package.json +17 -4
- package/_polyfill/CapsuleGeometry.cjs +0 -22
- package/_polyfill/CapsuleGeometry.js +0 -22
- package/_polyfill/CompressedArrayTexture.cjs +0 -12
- package/_polyfill/CompressedArrayTexture.js +0 -12
- package/_polyfill/Data3DTexture.cjs +0 -17
- package/_polyfill/Data3DTexture.js +0 -17
- package/animation/AnimationClipCreator.cjs +0 -56
- package/animation/AnimationClipCreator.js +0 -56
- package/animation/CCDIKSolver.cjs +0 -269
- package/animation/CCDIKSolver.js +0 -269
- package/animation/MMDAnimationHelper.cjs +0 -688
- package/animation/MMDAnimationHelper.js +0 -688
- package/animation/MMDPhysics.cjs +0 -830
- package/animation/MMDPhysics.js +0 -830
- package/cameras/CinematicCamera.cjs +0 -131
- package/cameras/CinematicCamera.js +0 -131
- package/controls/ArcballControls.cjs +0 -2033
- package/controls/ArcballControls.js +0 -2033
- package/controls/DeviceOrientationControls.cjs +0 -85
- package/controls/DeviceOrientationControls.js +0 -85
- package/controls/DragControls.cjs +0 -182
- package/controls/DragControls.js +0 -182
- package/controls/FirstPersonControls.cjs +0 -229
- package/controls/FirstPersonControls.js +0 -229
- package/controls/FlyControls.cjs +0 -248
- package/controls/FlyControls.js +0 -248
- package/controls/OrbitControls.cjs +0 -791
- package/controls/OrbitControls.js +0 -791
- package/controls/PointerLockControls.cjs +0 -103
- package/controls/PointerLockControls.js +0 -103
- package/controls/TrackballControls.cjs +0 -502
- package/controls/TrackballControls.js +0 -502
- package/controls/TransformControls.cjs +0 -1089
- package/controls/TransformControls.js +0 -1089
- package/controls/experimental/CameraControls.cjs +0 -736
- package/controls/experimental/CameraControls.js +0 -736
- package/csm/CSM.cjs +0 -244
- package/csm/CSM.js +0 -244
- package/csm/CSMFrustum.cjs +0 -75
- package/csm/CSMFrustum.js +0 -75
- package/csm/CSMHelper.cjs +0 -114
- package/csm/CSMHelper.js +0 -114
- package/csm/CSMShader.cjs +0 -261
- package/csm/CSMShader.js +0 -261
- package/curves/CurveExtras.cjs +0 -214
- package/curves/CurveExtras.js +0 -214
- package/curves/NURBSCurve.cjs +0 -35
- package/curves/NURBSCurve.js +0 -35
- package/curves/NURBSSurface.cjs +0 -28
- package/curves/NURBSSurface.js +0 -28
- package/curves/NURBSUtils.cjs +0 -226
- package/curves/NURBSUtils.js +0 -226
- package/deprecated/Geometry.cjs +0 -971
- package/deprecated/Geometry.js +0 -971
- package/effects/AnaglyphEffect.cjs +0 -102
- package/effects/AnaglyphEffect.js +0 -102
- package/effects/AsciiEffect.cjs +0 -155
- package/effects/AsciiEffect.js +0 -155
- package/effects/OutlineEffect.cjs +0 -275
- package/effects/OutlineEffect.js +0 -275
- package/effects/ParallaxBarrierEffect.cjs +0 -65
- package/effects/ParallaxBarrierEffect.js +0 -65
- package/effects/PeppersGhostEffect.cjs +0 -88
- package/effects/PeppersGhostEffect.js +0 -88
- package/effects/StereoEffect.cjs +0 -35
- package/effects/StereoEffect.js +0 -35
- package/environments/RoomEnvironment.cjs +0 -95
- package/environments/RoomEnvironment.js +0 -78
- package/exporters/ColladaExporter.cjs +0 -331
- package/exporters/ColladaExporter.js +0 -331
- package/exporters/DRACOExporter.cjs +0 -141
- package/exporters/DRACOExporter.js +0 -141
- package/exporters/GLTFExporter.cjs +0 -1909
- package/exporters/GLTFExporter.js +0 -1909
- package/exporters/MMDExporter.cjs +0 -131
- package/exporters/MMDExporter.js +0 -131
- package/exporters/OBJExporter.cjs +0 -181
- package/exporters/OBJExporter.js +0 -181
- package/exporters/PLYExporter.cjs +0 -280
- package/exporters/PLYExporter.js +0 -280
- package/exporters/STLExporter.cjs +0 -146
- package/exporters/STLExporter.js +0 -146
- package/exporters/USDZExporter.cjs +0 -340
- package/exporters/USDZExporter.js +0 -340
- package/geometries/BoxLineGeometry.cjs +0 -45
- package/geometries/BoxLineGeometry.js +0 -45
- package/geometries/ConvexGeometry.cjs +0 -26
- package/geometries/ConvexGeometry.js +0 -26
- package/geometries/DecalGeometry.cjs +0 -184
- package/geometries/DecalGeometry.js +0 -184
- package/geometries/LightningStrike.cjs +0 -553
- package/geometries/LightningStrike.js +0 -553
- package/geometries/ParametricGeometries.cjs +0 -130
- package/geometries/ParametricGeometries.js +0 -130
- package/geometries/ParametricGeometry.cjs +0 -63
- package/geometries/ParametricGeometry.js +0 -63
- package/geometries/RoundedBoxGeometry.cjs +0 -91
- package/geometries/RoundedBoxGeometry.js +0 -91
- package/geometries/TeapotGeometry.cjs +0 -1563
- package/geometries/TeapotGeometry.js +0 -1563
- package/geometries/TextGeometry.cjs +0 -27
- package/geometries/TextGeometry.js +0 -27
- package/helpers/LightProbeHelper.cjs +0 -73
- package/helpers/LightProbeHelper.js +0 -73
- package/helpers/PositionalAudioHelper.cjs +0 -68
- package/helpers/PositionalAudioHelper.js +0 -68
- package/helpers/RectAreaLightHelper.cjs +0 -44
- package/helpers/RectAreaLightHelper.js +0 -44
- package/helpers/VertexNormalsHelper.cjs +0 -47
- package/helpers/VertexNormalsHelper.js +0 -47
- package/helpers/VertexTangentsHelper.cjs +0 -43
- package/helpers/VertexTangentsHelper.js +0 -43
- package/interactive/HTMLMesh.cjs +0 -325
- package/interactive/HTMLMesh.js +0 -325
- package/interactive/InteractiveGroup.cjs +0 -68
- package/interactive/InteractiveGroup.js +0 -68
- package/interactive/SelectionBox.cjs +0 -134
- package/interactive/SelectionBox.js +0 -134
- package/interactive/SelectionHelper.cjs +0 -51
- package/interactive/SelectionHelper.js +0 -51
- package/libs/MeshoptDecoder.cjs +0 -221
- package/libs/MeshoptDecoder.js +0 -221
- package/libs/MotionControllers.cjs +0 -325
- package/libs/MotionControllers.js +0 -325
- package/lights/LightProbeGenerator.cjs +0 -145
- package/lights/LightProbeGenerator.js +0 -145
- package/lights/RectAreaLightUniformsLib.cjs +0 -32846
- package/lights/RectAreaLightUniformsLib.js +0 -32846
- package/lines/Line2.cjs +0 -13
- package/lines/Line2.js +0 -13
- package/lines/LineGeometry.cjs +0 -44
- package/lines/LineGeometry.js +0 -44
- package/lines/LineMaterial.cjs +0 -547
- package/lines/LineMaterial.js +0 -547
- package/lines/LineSegments2.cjs +0 -203
- package/lines/LineSegments2.js +0 -203
- package/lines/LineSegmentsGeometry.cjs +0 -124
- package/lines/LineSegmentsGeometry.js +0 -124
- package/lines/Wireframe.cjs +0 -32
- package/lines/Wireframe.js +0 -32
- package/lines/WireframeGeometry2.cjs +0 -13
- package/lines/WireframeGeometry2.js +0 -13
- package/loaders/3DMLoader.cjs +0 -803
- package/loaders/3DMLoader.js +0 -803
- package/loaders/3MFLoader.cjs +0 -854
- package/loaders/3MFLoader.js +0 -854
- package/loaders/AMFLoader.cjs +0 -284
- package/loaders/AMFLoader.js +0 -284
- package/loaders/AssimpLoader.cjs +0 -1434
- package/loaders/AssimpLoader.js +0 -1434
- package/loaders/BVHLoader.cjs +0 -207
- package/loaders/BVHLoader.js +0 -207
- package/loaders/BasisTextureLoader.cjs +0 -489
- package/loaders/BasisTextureLoader.js +0 -489
- package/loaders/ColladaLoader.cjs +0 -2405
- package/loaders/ColladaLoader.js +0 -2405
- package/loaders/DDSLoader.cjs +0 -148
- package/loaders/DDSLoader.js +0 -148
- package/loaders/DRACOLoader.cjs +0 -341
- package/loaders/DRACOLoader.js +0 -341
- package/loaders/EXRLoader.cjs +0 -1356
- package/loaders/EXRLoader.js +0 -1356
- package/loaders/FBXLoader.cjs +0 -2457
- package/loaders/FBXLoader.js +0 -2457
- package/loaders/FontLoader.cjs +0 -123
- package/loaders/FontLoader.js +0 -123
- package/loaders/GCodeLoader.cjs +0 -141
- package/loaders/GCodeLoader.js +0 -141
- package/loaders/GLTFLoader.cjs +0 -2504
- package/loaders/GLTFLoader.js +0 -2504
- package/loaders/HDRCubeTextureLoader.cjs +0 -75
- package/loaders/HDRCubeTextureLoader.js +0 -75
- package/loaders/KMZLoader.cjs +0 -75
- package/loaders/KMZLoader.js +0 -75
- package/loaders/KTX2Loader.cjs +0 -480
- package/loaders/KTX2Loader.js +0 -480
- package/loaders/KTXLoader.cjs +0 -93
- package/loaders/KTXLoader.js +0 -93
- package/loaders/LDrawLoader.cjs +0 -1424
- package/loaders/LDrawLoader.js +0 -1424
- package/loaders/LUT3dlLoader.cjs +0 -103
- package/loaders/LUT3dlLoader.js +0 -103
- package/loaders/LUTCubeLoader.cjs +0 -107
- package/loaders/LUTCubeLoader.js +0 -107
- package/loaders/LWOLoader.cjs +0 -645
- package/loaders/LWOLoader.js +0 -645
- package/loaders/LottieLoader.cjs +0 -47
- package/loaders/LottieLoader.js +0 -47
- package/loaders/MD2Loader.cjs +0 -359
- package/loaders/MD2Loader.js +0 -359
- package/loaders/MDDLoader.cjs +0 -58
- package/loaders/MDDLoader.js +0 -58
- package/loaders/MMDLoader.cjs +0 -1121
- package/loaders/MMDLoader.js +0 -1121
- package/loaders/MTLLoader.cjs +0 -304
- package/loaders/MTLLoader.js +0 -304
- package/loaders/NRRDLoader.cjs +0 -401
- package/loaders/NRRDLoader.js +0 -401
- package/loaders/OBJLoader.cjs +0 -487
- package/loaders/OBJLoader.js +0 -487
- package/loaders/PCDLoader.cjs +0 -248
- package/loaders/PCDLoader.js +0 -248
- package/loaders/PDBLoader.cjs +0 -247
- package/loaders/PDBLoader.js +0 -247
- package/loaders/PLYLoader.cjs +0 -317
- package/loaders/PLYLoader.js +0 -317
- package/loaders/PRWMLoader.cjs +0 -160
- package/loaders/PRWMLoader.js +0 -160
- package/loaders/PVRLoader.cjs +0 -131
- package/loaders/PVRLoader.js +0 -131
- package/loaders/RGBELoader.cjs +0 -252
- package/loaders/RGBELoader.js +0 -252
- package/loaders/RGBMLoader.cjs +0 -1004
- package/loaders/RGBMLoader.js +0 -1004
- package/loaders/STLLoader.cjs +0 -190
- package/loaders/STLLoader.js +0 -190
- package/loaders/SVGLoader.cjs +0 -1712
- package/loaders/SVGLoader.js +0 -1712
- package/loaders/TDSLoader.cjs +0 -650
- package/loaders/TDSLoader.js +0 -650
- package/loaders/TGALoader.cjs +0 -285
- package/loaders/TGALoader.js +0 -285
- package/loaders/TTFLoader.cjs +0 -131
- package/loaders/TTFLoader.js +0 -131
- package/loaders/TiltLoader.cjs +0 -375
- package/loaders/TiltLoader.js +0 -375
- package/loaders/VOXLoader.cjs +0 -432
- package/loaders/VOXLoader.js +0 -432
- package/loaders/VRMLLoader.cjs +0 -2105
- package/loaders/VRMLLoader.js +0 -2105
- package/loaders/VRMLoader.cjs +0 -38
- package/loaders/VRMLoader.js +0 -38
- package/loaders/VTKLoader.cjs +0 -648
- package/loaders/VTKLoader.js +0 -648
- package/loaders/XLoader.cjs +0 -1258
- package/loaders/XLoader.js +0 -1258
- package/loaders/XYZLoader.cjs +0 -60
- package/loaders/XYZLoader.js +0 -60
- package/loaders/lwo/IFFParser.cjs +0 -743
- package/loaders/lwo/IFFParser.js +0 -743
- package/loaders/lwo/LWO2Parser.cjs +0 -312
- package/loaders/lwo/LWO2Parser.js +0 -312
- package/loaders/lwo/LWO3Parser.cjs +0 -282
- package/loaders/lwo/LWO3Parser.js +0 -282
- package/math/Capsule.cjs +0 -98
- package/math/Capsule.js +0 -98
- package/math/ColorConverter.cjs +0 -42
- package/math/ColorConverter.js +0 -42
- package/math/ConvexHull.cjs +0 -596
- package/math/ConvexHull.js +0 -596
- package/math/ImprovedNoise.cjs +0 -304
- package/math/ImprovedNoise.js +0 -304
- package/math/Lut.cjs +0 -137
- package/math/Lut.js +0 -137
- package/math/MeshSurfaceSampler.cjs +0 -103
- package/math/MeshSurfaceSampler.js +0 -103
- package/math/OBB.cjs +0 -242
- package/math/OBB.js +0 -242
- package/math/Octree.cjs +0 -273
- package/math/Octree.js +0 -273
- package/math/SimplexNoise.cjs +0 -440
- package/math/SimplexNoise.js +0 -440
- package/misc/ConvexObjectBreaker.cjs +0 -292
- package/misc/ConvexObjectBreaker.js +0 -292
- package/misc/GPUComputationRenderer.cjs +0 -205
- package/misc/GPUComputationRenderer.js +0 -205
- package/misc/Gyroscope.cjs +0 -33
- package/misc/Gyroscope.js +0 -33
- package/misc/MD2Character.cjs +0 -167
- package/misc/MD2Character.js +0 -167
- package/misc/MD2CharacterComplex.cjs +0 -332
- package/misc/MD2CharacterComplex.js +0 -332
- package/misc/MorphAnimMesh.cjs +0 -40
- package/misc/MorphAnimMesh.js +0 -40
- package/misc/MorphBlendMesh.cjs +0 -179
- package/misc/MorphBlendMesh.js +0 -179
- package/misc/ProgressiveLightmap.cjs +0 -186
- package/misc/ProgressiveLightmap.js +0 -186
- package/misc/RollerCoaster.cjs +0 -353
- package/misc/RollerCoaster.js +0 -353
- package/misc/Timer.cjs +0 -101
- package/misc/Timer.js +0 -101
- package/misc/TubePainter.cjs +0 -123
- package/misc/TubePainter.js +0 -123
- package/misc/Volume.cjs +0 -305
- package/misc/Volume.js +0 -305
- package/misc/VolumeSlice.cjs +0 -114
- package/misc/VolumeSlice.js +0 -114
- package/misc/WebGL.cjs +0 -74
- package/misc/WebGL.js +0 -74
- package/modifiers/CurveModifier.cjs +0 -232
- package/modifiers/CurveModifier.js +0 -232
- package/modifiers/EdgeSplitModifier.cjs +0 -167
- package/modifiers/EdgeSplitModifier.js +0 -168
- package/modifiers/SimplifyModifier.cjs +0 -301
- package/modifiers/SimplifyModifier.js +0 -301
- package/modifiers/TessellateModifier.cjs +0 -214
- package/modifiers/TessellateModifier.js +0 -214
- package/objects/GroundProjectedEnv.cjs +0 -134
- package/objects/GroundProjectedEnv.js +0 -134
- package/objects/Lensflare.cjs +0 -291
- package/objects/Lensflare.js +0 -291
- package/objects/LightningStorm.cjs +0 -110
- package/objects/LightningStorm.js +0 -110
- package/objects/MarchingCubes.cjs +0 -4809
- package/objects/MarchingCubes.js +0 -4809
- package/objects/Reflector.cjs +0 -202
- package/objects/Reflector.js +0 -202
- package/objects/ReflectorForSSRPass.cjs +0 -260
- package/objects/ReflectorForSSRPass.js +0 -260
- package/objects/ReflectorRTT.cjs +0 -10
- package/objects/ReflectorRTT.js +0 -10
- package/objects/Refractor.cjs +0 -215
- package/objects/Refractor.js +0 -215
- package/objects/ShadowMesh.cjs +0 -45
- package/objects/ShadowMesh.js +0 -45
- package/objects/Sky.cjs +0 -200
- package/objects/Sky.js +0 -200
- package/objects/Water.cjs +0 -242
- package/objects/Water.js +0 -242
- package/objects/Water2.cjs +0 -256
- package/objects/Water2.js +0 -256
- package/physics/AmmoPhysics.cjs +0 -166
- package/physics/AmmoPhysics.js +0 -166
- package/postprocessing/AdaptiveToneMappingPass.cjs +0 -218
- package/postprocessing/AdaptiveToneMappingPass.js +0 -218
- package/postprocessing/AfterimagePass.cjs +0 -68
- package/postprocessing/AfterimagePass.js +0 -68
- package/postprocessing/BloomPass.cjs +0 -109
- package/postprocessing/BloomPass.js +0 -109
- package/postprocessing/BokehPass.cjs +0 -90
- package/postprocessing/BokehPass.js +0 -90
- package/postprocessing/ClearPass.cjs +0 -36
- package/postprocessing/ClearPass.js +0 -36
- package/postprocessing/CubeTexturePass.cjs +0 -53
- package/postprocessing/CubeTexturePass.js +0 -53
- package/postprocessing/DotScreenPass.cjs +0 -49
- package/postprocessing/DotScreenPass.js +0 -49
- package/postprocessing/EffectComposer.cjs +0 -157
- package/postprocessing/EffectComposer.js +0 -157
- package/postprocessing/FilmPass.cjs +0 -51
- package/postprocessing/FilmPass.js +0 -51
- package/postprocessing/GlitchPass.cjs +0 -84
- package/postprocessing/GlitchPass.js +0 -84
- package/postprocessing/HalftonePass.cjs +0 -53
- package/postprocessing/HalftonePass.js +0 -53
- package/postprocessing/LUTPass.cjs +0 -142
- package/postprocessing/LUTPass.js +0 -142
- package/postprocessing/MaskPass.cjs +0 -69
- package/postprocessing/MaskPass.js +0 -69
- package/postprocessing/OutlinePass.cjs +0 -479
- package/postprocessing/OutlinePass.js +0 -479
- package/postprocessing/Pass.cjs +0 -48
- package/postprocessing/Pass.js +0 -48
- package/postprocessing/RenderPass.cjs +0 -59
- package/postprocessing/RenderPass.js +0 -59
- package/postprocessing/RenderPixelatedPass.cjs +0 -199
- package/postprocessing/RenderPixelatedPass.js +0 -199
- package/postprocessing/SAOPass.cjs +0 -288
- package/postprocessing/SAOPass.js +0 -288
- package/postprocessing/SMAAPass.cjs +0 -112
- package/postprocessing/SMAAPass.js +0 -112
- package/postprocessing/SSAARenderPass.cjs +0 -189
- package/postprocessing/SSAARenderPass.js +0 -189
- package/postprocessing/SSAOPass.cjs +0 -272
- package/postprocessing/SSAOPass.js +0 -272
- package/postprocessing/SSRPass.cjs +0 -411
- package/postprocessing/SSRPass.js +0 -411
- package/postprocessing/SavePass.cjs +0 -38
- package/postprocessing/SavePass.js +0 -38
- package/postprocessing/ShaderPass.cjs +0 -49
- package/postprocessing/ShaderPass.js +0 -49
- package/postprocessing/TAARenderPass.cjs +0 -174
- package/postprocessing/TAARenderPass.js +0 -174
- package/postprocessing/TexturePass.cjs +0 -42
- package/postprocessing/TexturePass.js +0 -42
- package/postprocessing/UnrealBloomPass.cjs +0 -277
- package/postprocessing/UnrealBloomPass.js +0 -277
- package/postprocessing/WaterPass.cjs +0 -72
- package/postprocessing/WaterPass.js +0 -72
- package/renderers/CSS2DRenderer.cjs +0 -122
- package/renderers/CSS2DRenderer.js +0 -122
- package/renderers/CSS3DRenderer.cjs +0 -167
- package/renderers/CSS3DRenderer.js +0 -167
- package/renderers/Projector.cjs +0 -499
- package/renderers/Projector.js +0 -499
- package/renderers/SVGRenderer.cjs +0 -311
- package/renderers/SVGRenderer.js +0 -311
- package/shaders/ACESFilmicToneMappingShader.cjs +0 -55
- package/shaders/ACESFilmicToneMappingShader.js +0 -55
- package/shaders/AfterimageShader.cjs +0 -32
- package/shaders/AfterimageShader.js +0 -32
- package/shaders/BasicShader.cjs +0 -12
- package/shaders/BasicShader.js +0 -12
- package/shaders/BleachBypassShader.cjs +0 -35
- package/shaders/BleachBypassShader.js +0 -35
- package/shaders/BlendShader.cjs +0 -30
- package/shaders/BlendShader.js +0 -30
- package/shaders/BokehShader.cjs +0 -109
- package/shaders/BokehShader.js +0 -109
- package/shaders/BokehShader2.cjs +0 -269
- package/shaders/BokehShader2.js +0 -269
- package/shaders/BrightnessContrastShader.cjs +0 -32
- package/shaders/BrightnessContrastShader.js +0 -32
- package/shaders/ColorCorrectionShader.cjs +0 -30
- package/shaders/ColorCorrectionShader.js +0 -30
- package/shaders/ColorifyShader.cjs +0 -28
- package/shaders/ColorifyShader.js +0 -28
- package/shaders/ConvolutionShader.cjs +0 -55
- package/shaders/ConvolutionShader.js +0 -55
- package/shaders/CopyShader.cjs +0 -25
- package/shaders/CopyShader.js +0 -25
- package/shaders/DOFMipMapShader.cjs +0 -32
- package/shaders/DOFMipMapShader.js +0 -32
- package/shaders/DepthLimitedBlurShader.cjs +0 -114
- package/shaders/DepthLimitedBlurShader.js +0 -114
- package/shaders/DigitalGlitch.cjs +0 -85
- package/shaders/DigitalGlitch.js +0 -85
- package/shaders/DotScreenShader.cjs +0 -39
- package/shaders/DotScreenShader.js +0 -39
- package/shaders/FXAAShader.cjs +0 -1098
- package/shaders/FXAAShader.js +0 -1098
- package/shaders/FilmShader.cjs +0 -53
- package/shaders/FilmShader.js +0 -53
- package/shaders/FocusShader.cjs +0 -55
- package/shaders/FocusShader.js +0 -55
- package/shaders/FreiChenShader.cjs +0 -64
- package/shaders/FreiChenShader.js +0 -64
- package/shaders/FresnelShader.cjs +0 -47
- package/shaders/FresnelShader.js +0 -47
- package/shaders/GammaCorrectionShader.cjs +0 -23
- package/shaders/GammaCorrectionShader.js +0 -23
- package/shaders/GodRaysShader.cjs +0 -183
- package/shaders/GodRaysShader.js +0 -183
- package/shaders/HalftoneShader.cjs +0 -228
- package/shaders/HalftoneShader.js +0 -228
- package/shaders/HorizontalBlurShader.cjs +0 -49
- package/shaders/HorizontalBlurShader.js +0 -49
- package/shaders/HorizontalTiltShiftShader.cjs +0 -37
- package/shaders/HorizontalTiltShiftShader.js +0 -37
- package/shaders/HueSaturationShader.cjs +0 -43
- package/shaders/HueSaturationShader.js +0 -43
- package/shaders/KaleidoShader.cjs +0 -34
- package/shaders/KaleidoShader.js +0 -34
- package/shaders/LuminosityHighPassShader.cjs +0 -37
- package/shaders/LuminosityHighPassShader.js +0 -37
- package/shaders/LuminosityShader.cjs +0 -25
- package/shaders/LuminosityShader.js +0 -25
- package/shaders/MirrorShader.cjs +0 -35
- package/shaders/MirrorShader.js +0 -35
- package/shaders/NormalMapShader.cjs +0 -31
- package/shaders/NormalMapShader.js +0 -31
- package/shaders/ParallaxShader.cjs +0 -133
- package/shaders/ParallaxShader.js +0 -133
- package/shaders/PixelShader.cjs +0 -28
- package/shaders/PixelShader.js +0 -28
- package/shaders/RGBShiftShader.cjs +0 -30
- package/shaders/RGBShiftShader.js +0 -30
- package/shaders/SAOShader.cjs +0 -144
- package/shaders/SAOShader.js +0 -144
- package/shaders/SMAAShader.cjs +0 -358
- package/shaders/SMAAShader.js +0 -358
- package/shaders/SSAOShader.cjs +0 -182
- package/shaders/SSAOShader.js +0 -182
- package/shaders/SSRShader.cjs +0 -342
- package/shaders/SSRShader.js +0 -342
- package/shaders/SepiaShader.cjs +0 -29
- package/shaders/SepiaShader.js +0 -29
- package/shaders/SobelOperatorShader.cjs +0 -54
- package/shaders/SobelOperatorShader.js +0 -54
- package/shaders/SubsurfaceScatteringShader.cjs +0 -98
- package/shaders/SubsurfaceScatteringShader.js +0 -98
- package/shaders/TechnicolorShader.cjs +0 -24
- package/shaders/TechnicolorShader.js +0 -24
- package/shaders/ToneMapShader.cjs +0 -51
- package/shaders/ToneMapShader.js +0 -51
- package/shaders/ToonShader.cjs +0 -188
- package/shaders/ToonShader.js +0 -188
- package/shaders/TriangleBlurShader.cjs +0 -37
- package/shaders/TriangleBlurShader.js +0 -37
- package/shaders/UnpackDepthRGBAShader.cjs +0 -26
- package/shaders/UnpackDepthRGBAShader.js +0 -26
- package/shaders/VerticalBlurShader.cjs +0 -50
- package/shaders/VerticalBlurShader.js +0 -50
- package/shaders/VerticalTiltShiftShader.cjs +0 -37
- package/shaders/VerticalTiltShiftShader.js +0 -37
- package/shaders/VignetteShader.cjs +0 -38
- package/shaders/VignetteShader.js +0 -38
- package/shaders/VolumeShader.cjs +0 -225
- package/shaders/VolumeShader.js +0 -225
- package/shaders/WaterRefractionShader.cjs +0 -59
- package/shaders/WaterRefractionShader.js +0 -59
- package/shaders/types.cjs +0 -1
- package/shaders/types.js +0 -1
- package/textures/FlakesTexture.cjs +0 -30
- package/textures/FlakesTexture.js +0 -30
- package/types/helpers.cjs +0 -4
- package/types/helpers.js +0 -4
- package/utils/BufferGeometryUtils.cjs +0 -636
- package/utils/BufferGeometryUtils.js +0 -636
- package/utils/GeometryCompressionUtils.cjs +0 -573
- package/utils/GeometryCompressionUtils.js +0 -573
- package/utils/GeometryUtils.cjs +0 -109
- package/utils/GeometryUtils.js +0 -109
- package/utils/RoughnessMipmapper.cjs +0 -223
- package/utils/RoughnessMipmapper.js +0 -223
- package/utils/SceneUtils.cjs +0 -36
- package/utils/SceneUtils.js +0 -36
- package/utils/ShadowMapViewer.cjs +0 -111
- package/utils/ShadowMapViewer.js +0 -111
- package/utils/SkeletonUtils.cjs +0 -211
- package/utils/SkeletonUtils.js +0 -211
- package/utils/UVsDebug.cjs +0 -80
- package/utils/UVsDebug.js +0 -80
- package/utils/WorkerPool.cjs +0 -62
- package/utils/WorkerPool.js +0 -62
- package/webxr/ARButton.cjs +0 -119
- package/webxr/ARButton.js +0 -119
- package/webxr/OculusHandModel.cjs +0 -82
- package/webxr/OculusHandModel.js +0 -82
- package/webxr/OculusHandPointerModel.cjs +0 -241
- package/webxr/OculusHandPointerModel.js +0 -224
- package/webxr/Text2D.cjs +0 -48
- package/webxr/Text2D.js +0 -31
- package/webxr/VRButton.cjs +0 -111
- package/webxr/VRButton.js +0 -111
- package/webxr/XRControllerModelFactory.cjs +0 -174
- package/webxr/XRControllerModelFactory.js +0 -174
- package/webxr/XREstimatedLight.cjs +0 -126
- package/webxr/XREstimatedLight.js +0 -126
- package/webxr/XRHandMeshModel.cjs +0 -82
- package/webxr/XRHandMeshModel.js +0 -82
- package/webxr/XRHandModelFactory.cjs +0 -61
- package/webxr/XRHandModelFactory.js +0 -61
- package/webxr/XRHandPrimitiveModel.cjs +0 -68
- package/webxr/XRHandPrimitiveModel.js +0 -68
package/loaders/OBJLoader.js
DELETED
@@ -1,487 +0,0 @@
|
|
1
|
-
import { Vector3, Loader, FileLoader, Group, BufferGeometry, Float32BufferAttribute, LineBasicMaterial, Material, PointsMaterial, MeshPhongMaterial, LineSegments, Points, Mesh } from "three";
|
2
|
-
const _object_pattern = /^[og]\s*(.+)?/;
|
3
|
-
const _material_library_pattern = /^mtllib /;
|
4
|
-
const _material_use_pattern = /^usemtl /;
|
5
|
-
const _map_use_pattern = /^usemap /;
|
6
|
-
const _vA = /* @__PURE__ */ new Vector3();
|
7
|
-
const _vB = /* @__PURE__ */ new Vector3();
|
8
|
-
const _vC = /* @__PURE__ */ new Vector3();
|
9
|
-
const _ab = /* @__PURE__ */ new Vector3();
|
10
|
-
const _cb = /* @__PURE__ */ new Vector3();
|
11
|
-
function ParserState() {
|
12
|
-
const state = {
|
13
|
-
objects: [],
|
14
|
-
object: {},
|
15
|
-
vertices: [],
|
16
|
-
normals: [],
|
17
|
-
colors: [],
|
18
|
-
uvs: [],
|
19
|
-
materials: {},
|
20
|
-
materialLibraries: [],
|
21
|
-
startObject: function(name, fromDeclaration) {
|
22
|
-
if (this.object && this.object.fromDeclaration === false) {
|
23
|
-
this.object.name = name;
|
24
|
-
this.object.fromDeclaration = fromDeclaration !== false;
|
25
|
-
return;
|
26
|
-
}
|
27
|
-
const previousMaterial = this.object && typeof this.object.currentMaterial === "function" ? this.object.currentMaterial() : void 0;
|
28
|
-
if (this.object && typeof this.object._finalize === "function") {
|
29
|
-
this.object._finalize(true);
|
30
|
-
}
|
31
|
-
this.object = {
|
32
|
-
name: name || "",
|
33
|
-
fromDeclaration: fromDeclaration !== false,
|
34
|
-
geometry: {
|
35
|
-
vertices: [],
|
36
|
-
normals: [],
|
37
|
-
colors: [],
|
38
|
-
uvs: [],
|
39
|
-
hasUVIndices: false
|
40
|
-
},
|
41
|
-
materials: [],
|
42
|
-
smooth: true,
|
43
|
-
startMaterial: function(name2, libraries) {
|
44
|
-
const previous = this._finalize(false);
|
45
|
-
if (previous && (previous.inherited || previous.groupCount <= 0)) {
|
46
|
-
this.materials.splice(previous.index, 1);
|
47
|
-
}
|
48
|
-
const material = {
|
49
|
-
index: this.materials.length,
|
50
|
-
name: name2 || "",
|
51
|
-
mtllib: Array.isArray(libraries) && libraries.length > 0 ? libraries[libraries.length - 1] : "",
|
52
|
-
smooth: previous !== void 0 ? previous.smooth : this.smooth,
|
53
|
-
groupStart: previous !== void 0 ? previous.groupEnd : 0,
|
54
|
-
groupEnd: -1,
|
55
|
-
groupCount: -1,
|
56
|
-
inherited: false,
|
57
|
-
clone: function(index) {
|
58
|
-
const cloned = {
|
59
|
-
index: typeof index === "number" ? index : this.index,
|
60
|
-
name: this.name,
|
61
|
-
mtllib: this.mtllib,
|
62
|
-
smooth: this.smooth,
|
63
|
-
groupStart: 0,
|
64
|
-
groupEnd: -1,
|
65
|
-
groupCount: -1,
|
66
|
-
inherited: false
|
67
|
-
};
|
68
|
-
cloned.clone = this.clone.bind(cloned);
|
69
|
-
return cloned;
|
70
|
-
}
|
71
|
-
};
|
72
|
-
this.materials.push(material);
|
73
|
-
return material;
|
74
|
-
},
|
75
|
-
currentMaterial: function() {
|
76
|
-
if (this.materials.length > 0) {
|
77
|
-
return this.materials[this.materials.length - 1];
|
78
|
-
}
|
79
|
-
return void 0;
|
80
|
-
},
|
81
|
-
_finalize: function(end) {
|
82
|
-
const lastMultiMaterial = this.currentMaterial();
|
83
|
-
if (lastMultiMaterial && lastMultiMaterial.groupEnd === -1) {
|
84
|
-
lastMultiMaterial.groupEnd = this.geometry.vertices.length / 3;
|
85
|
-
lastMultiMaterial.groupCount = lastMultiMaterial.groupEnd - lastMultiMaterial.groupStart;
|
86
|
-
lastMultiMaterial.inherited = false;
|
87
|
-
}
|
88
|
-
if (end && this.materials.length > 1) {
|
89
|
-
for (let mi = this.materials.length - 1; mi >= 0; mi--) {
|
90
|
-
if (this.materials[mi].groupCount <= 0) {
|
91
|
-
this.materials.splice(mi, 1);
|
92
|
-
}
|
93
|
-
}
|
94
|
-
}
|
95
|
-
if (end && this.materials.length === 0) {
|
96
|
-
this.materials.push({
|
97
|
-
name: "",
|
98
|
-
smooth: this.smooth
|
99
|
-
});
|
100
|
-
}
|
101
|
-
return lastMultiMaterial;
|
102
|
-
}
|
103
|
-
};
|
104
|
-
if (previousMaterial && previousMaterial.name && typeof previousMaterial.clone === "function") {
|
105
|
-
const declared = previousMaterial.clone(0);
|
106
|
-
declared.inherited = true;
|
107
|
-
this.object.materials.push(declared);
|
108
|
-
}
|
109
|
-
this.objects.push(this.object);
|
110
|
-
},
|
111
|
-
finalize: function() {
|
112
|
-
if (this.object && typeof this.object._finalize === "function") {
|
113
|
-
this.object._finalize(true);
|
114
|
-
}
|
115
|
-
},
|
116
|
-
parseVertexIndex: function(value, len) {
|
117
|
-
const index = parseInt(value, 10);
|
118
|
-
return (index >= 0 ? index - 1 : index + len / 3) * 3;
|
119
|
-
},
|
120
|
-
parseNormalIndex: function(value, len) {
|
121
|
-
const index = parseInt(value, 10);
|
122
|
-
return (index >= 0 ? index - 1 : index + len / 3) * 3;
|
123
|
-
},
|
124
|
-
parseUVIndex: function(value, len) {
|
125
|
-
const index = parseInt(value, 10);
|
126
|
-
return (index >= 0 ? index - 1 : index + len / 2) * 2;
|
127
|
-
},
|
128
|
-
addVertex: function(a, b, c) {
|
129
|
-
const src = this.vertices;
|
130
|
-
const dst = this.object.geometry.vertices;
|
131
|
-
dst.push(src[a + 0], src[a + 1], src[a + 2]);
|
132
|
-
dst.push(src[b + 0], src[b + 1], src[b + 2]);
|
133
|
-
dst.push(src[c + 0], src[c + 1], src[c + 2]);
|
134
|
-
},
|
135
|
-
addVertexPoint: function(a) {
|
136
|
-
const src = this.vertices;
|
137
|
-
const dst = this.object.geometry.vertices;
|
138
|
-
dst.push(src[a + 0], src[a + 1], src[a + 2]);
|
139
|
-
},
|
140
|
-
addVertexLine: function(a) {
|
141
|
-
const src = this.vertices;
|
142
|
-
const dst = this.object.geometry.vertices;
|
143
|
-
dst.push(src[a + 0], src[a + 1], src[a + 2]);
|
144
|
-
},
|
145
|
-
addNormal: function(a, b, c) {
|
146
|
-
const src = this.normals;
|
147
|
-
const dst = this.object.geometry.normals;
|
148
|
-
dst.push(src[a + 0], src[a + 1], src[a + 2]);
|
149
|
-
dst.push(src[b + 0], src[b + 1], src[b + 2]);
|
150
|
-
dst.push(src[c + 0], src[c + 1], src[c + 2]);
|
151
|
-
},
|
152
|
-
addFaceNormal: function(a, b, c) {
|
153
|
-
const src = this.vertices;
|
154
|
-
const dst = this.object.geometry.normals;
|
155
|
-
_vA.fromArray(src, a);
|
156
|
-
_vB.fromArray(src, b);
|
157
|
-
_vC.fromArray(src, c);
|
158
|
-
_cb.subVectors(_vC, _vB);
|
159
|
-
_ab.subVectors(_vA, _vB);
|
160
|
-
_cb.cross(_ab);
|
161
|
-
_cb.normalize();
|
162
|
-
dst.push(_cb.x, _cb.y, _cb.z);
|
163
|
-
dst.push(_cb.x, _cb.y, _cb.z);
|
164
|
-
dst.push(_cb.x, _cb.y, _cb.z);
|
165
|
-
},
|
166
|
-
addColor: function(a, b, c) {
|
167
|
-
const src = this.colors;
|
168
|
-
const dst = this.object.geometry.colors;
|
169
|
-
if (src[a] !== void 0)
|
170
|
-
dst.push(src[a + 0], src[a + 1], src[a + 2]);
|
171
|
-
if (src[b] !== void 0)
|
172
|
-
dst.push(src[b + 0], src[b + 1], src[b + 2]);
|
173
|
-
if (src[c] !== void 0)
|
174
|
-
dst.push(src[c + 0], src[c + 1], src[c + 2]);
|
175
|
-
},
|
176
|
-
addUV: function(a, b, c) {
|
177
|
-
const src = this.uvs;
|
178
|
-
const dst = this.object.geometry.uvs;
|
179
|
-
dst.push(src[a + 0], src[a + 1]);
|
180
|
-
dst.push(src[b + 0], src[b + 1]);
|
181
|
-
dst.push(src[c + 0], src[c + 1]);
|
182
|
-
},
|
183
|
-
addDefaultUV: function() {
|
184
|
-
const dst = this.object.geometry.uvs;
|
185
|
-
dst.push(0, 0);
|
186
|
-
dst.push(0, 0);
|
187
|
-
dst.push(0, 0);
|
188
|
-
},
|
189
|
-
addUVLine: function(a) {
|
190
|
-
const src = this.uvs;
|
191
|
-
const dst = this.object.geometry.uvs;
|
192
|
-
dst.push(src[a + 0], src[a + 1]);
|
193
|
-
},
|
194
|
-
addFace: function(a, b, c, ua, ub, uc, na, nb, nc) {
|
195
|
-
const vLen = this.vertices.length;
|
196
|
-
let ia = this.parseVertexIndex(a, vLen);
|
197
|
-
let ib = this.parseVertexIndex(b, vLen);
|
198
|
-
let ic = this.parseVertexIndex(c, vLen);
|
199
|
-
this.addVertex(ia, ib, ic);
|
200
|
-
this.addColor(ia, ib, ic);
|
201
|
-
if (na !== void 0 && na !== "") {
|
202
|
-
const nLen = this.normals.length;
|
203
|
-
ia = this.parseNormalIndex(na, nLen);
|
204
|
-
ib = this.parseNormalIndex(nb, nLen);
|
205
|
-
ic = this.parseNormalIndex(nc, nLen);
|
206
|
-
this.addNormal(ia, ib, ic);
|
207
|
-
} else {
|
208
|
-
this.addFaceNormal(ia, ib, ic);
|
209
|
-
}
|
210
|
-
if (ua !== void 0 && ua !== "") {
|
211
|
-
const uvLen = this.uvs.length;
|
212
|
-
ia = this.parseUVIndex(ua, uvLen);
|
213
|
-
ib = this.parseUVIndex(ub, uvLen);
|
214
|
-
ic = this.parseUVIndex(uc, uvLen);
|
215
|
-
this.addUV(ia, ib, ic);
|
216
|
-
this.object.geometry.hasUVIndices = true;
|
217
|
-
} else {
|
218
|
-
this.addDefaultUV();
|
219
|
-
}
|
220
|
-
},
|
221
|
-
addPointGeometry: function(vertices) {
|
222
|
-
this.object.geometry.type = "Points";
|
223
|
-
const vLen = this.vertices.length;
|
224
|
-
for (let vi = 0, l = vertices.length; vi < l; vi++) {
|
225
|
-
const index = this.parseVertexIndex(vertices[vi], vLen);
|
226
|
-
this.addVertexPoint(index);
|
227
|
-
this.addColor(index);
|
228
|
-
}
|
229
|
-
},
|
230
|
-
addLineGeometry: function(vertices, uvs) {
|
231
|
-
this.object.geometry.type = "Line";
|
232
|
-
const vLen = this.vertices.length;
|
233
|
-
const uvLen = this.uvs.length;
|
234
|
-
for (let vi = 0, l = vertices.length; vi < l; vi++) {
|
235
|
-
this.addVertexLine(this.parseVertexIndex(vertices[vi], vLen));
|
236
|
-
}
|
237
|
-
for (let uvi = 0, l = uvs.length; uvi < l; uvi++) {
|
238
|
-
this.addUVLine(this.parseUVIndex(uvs[uvi], uvLen));
|
239
|
-
}
|
240
|
-
}
|
241
|
-
};
|
242
|
-
state.startObject("", false);
|
243
|
-
return state;
|
244
|
-
}
|
245
|
-
class OBJLoader extends Loader {
|
246
|
-
constructor(manager) {
|
247
|
-
super(manager);
|
248
|
-
this.materials = null;
|
249
|
-
}
|
250
|
-
load(url, onLoad, onProgress, onError) {
|
251
|
-
const scope = this;
|
252
|
-
const loader = new FileLoader(this.manager);
|
253
|
-
loader.setPath(this.path);
|
254
|
-
loader.setRequestHeader(this.requestHeader);
|
255
|
-
loader.setWithCredentials(this.withCredentials);
|
256
|
-
loader.load(
|
257
|
-
url,
|
258
|
-
function(text) {
|
259
|
-
try {
|
260
|
-
onLoad(scope.parse(text));
|
261
|
-
} catch (e) {
|
262
|
-
if (onError) {
|
263
|
-
onError(e);
|
264
|
-
} else {
|
265
|
-
console.error(e);
|
266
|
-
}
|
267
|
-
scope.manager.itemError(url);
|
268
|
-
}
|
269
|
-
},
|
270
|
-
onProgress,
|
271
|
-
onError
|
272
|
-
);
|
273
|
-
}
|
274
|
-
setMaterials(materials) {
|
275
|
-
this.materials = materials;
|
276
|
-
return this;
|
277
|
-
}
|
278
|
-
parse(text) {
|
279
|
-
const state = new ParserState();
|
280
|
-
if (text.indexOf("\r\n") !== -1) {
|
281
|
-
text = text.replace(/\r\n/g, "\n");
|
282
|
-
}
|
283
|
-
if (text.indexOf("\\\n") !== -1) {
|
284
|
-
text = text.replace(/\\\n/g, "");
|
285
|
-
}
|
286
|
-
const lines = text.split("\n");
|
287
|
-
let line = "", lineFirstChar = "";
|
288
|
-
let lineLength = 0;
|
289
|
-
let result = [];
|
290
|
-
const trimLeft = typeof "".trimLeft === "function";
|
291
|
-
for (let i = 0, l = lines.length; i < l; i++) {
|
292
|
-
line = lines[i];
|
293
|
-
line = trimLeft ? line.trimLeft() : line.trim();
|
294
|
-
lineLength = line.length;
|
295
|
-
if (lineLength === 0)
|
296
|
-
continue;
|
297
|
-
lineFirstChar = line.charAt(0);
|
298
|
-
if (lineFirstChar === "#")
|
299
|
-
continue;
|
300
|
-
if (lineFirstChar === "v") {
|
301
|
-
const data = line.split(/\s+/);
|
302
|
-
switch (data[0]) {
|
303
|
-
case "v":
|
304
|
-
state.vertices.push(parseFloat(data[1]), parseFloat(data[2]), parseFloat(data[3]));
|
305
|
-
if (data.length >= 7) {
|
306
|
-
state.colors.push(parseFloat(data[4]), parseFloat(data[5]), parseFloat(data[6]));
|
307
|
-
} else {
|
308
|
-
state.colors.push(void 0, void 0, void 0);
|
309
|
-
}
|
310
|
-
break;
|
311
|
-
case "vn":
|
312
|
-
state.normals.push(parseFloat(data[1]), parseFloat(data[2]), parseFloat(data[3]));
|
313
|
-
break;
|
314
|
-
case "vt":
|
315
|
-
state.uvs.push(parseFloat(data[1]), parseFloat(data[2]));
|
316
|
-
break;
|
317
|
-
}
|
318
|
-
} else if (lineFirstChar === "f") {
|
319
|
-
const lineData = line.substr(1).trim();
|
320
|
-
const vertexData = lineData.split(/\s+/);
|
321
|
-
const faceVertices = [];
|
322
|
-
for (let j = 0, jl = vertexData.length; j < jl; j++) {
|
323
|
-
const vertex = vertexData[j];
|
324
|
-
if (vertex.length > 0) {
|
325
|
-
const vertexParts = vertex.split("/");
|
326
|
-
faceVertices.push(vertexParts);
|
327
|
-
}
|
328
|
-
}
|
329
|
-
const v1 = faceVertices[0];
|
330
|
-
for (let j = 1, jl = faceVertices.length - 1; j < jl; j++) {
|
331
|
-
const v2 = faceVertices[j];
|
332
|
-
const v3 = faceVertices[j + 1];
|
333
|
-
state.addFace(v1[0], v2[0], v3[0], v1[1], v2[1], v3[1], v1[2], v2[2], v3[2]);
|
334
|
-
}
|
335
|
-
} else if (lineFirstChar === "l") {
|
336
|
-
const lineParts = line.substring(1).trim().split(" ");
|
337
|
-
let lineVertices = [];
|
338
|
-
const lineUVs = [];
|
339
|
-
if (line.indexOf("/") === -1) {
|
340
|
-
lineVertices = lineParts;
|
341
|
-
} else {
|
342
|
-
for (let li = 0, llen = lineParts.length; li < llen; li++) {
|
343
|
-
const parts = lineParts[li].split("/");
|
344
|
-
if (parts[0] !== "")
|
345
|
-
lineVertices.push(parts[0]);
|
346
|
-
if (parts[1] !== "")
|
347
|
-
lineUVs.push(parts[1]);
|
348
|
-
}
|
349
|
-
}
|
350
|
-
state.addLineGeometry(lineVertices, lineUVs);
|
351
|
-
} else if (lineFirstChar === "p") {
|
352
|
-
const lineData = line.substr(1).trim();
|
353
|
-
const pointData = lineData.split(" ");
|
354
|
-
state.addPointGeometry(pointData);
|
355
|
-
} else if ((result = _object_pattern.exec(line)) !== null) {
|
356
|
-
const name = (" " + result[0].substr(1).trim()).substr(1);
|
357
|
-
state.startObject(name);
|
358
|
-
} else if (_material_use_pattern.test(line)) {
|
359
|
-
state.object.startMaterial(line.substring(7).trim(), state.materialLibraries);
|
360
|
-
} else if (_material_library_pattern.test(line)) {
|
361
|
-
state.materialLibraries.push(line.substring(7).trim());
|
362
|
-
} else if (_map_use_pattern.test(line)) {
|
363
|
-
console.warn(
|
364
|
-
'THREE.OBJLoader: Rendering identifier "usemap" not supported. Textures must be defined in MTL files.'
|
365
|
-
);
|
366
|
-
} else if (lineFirstChar === "s") {
|
367
|
-
result = line.split(" ");
|
368
|
-
if (result.length > 1) {
|
369
|
-
const value = result[1].trim().toLowerCase();
|
370
|
-
state.object.smooth = value !== "0" && value !== "off";
|
371
|
-
} else {
|
372
|
-
state.object.smooth = true;
|
373
|
-
}
|
374
|
-
const material = state.object.currentMaterial();
|
375
|
-
if (material)
|
376
|
-
material.smooth = state.object.smooth;
|
377
|
-
} else {
|
378
|
-
if (line === "\0")
|
379
|
-
continue;
|
380
|
-
console.warn('THREE.OBJLoader: Unexpected line: "' + line + '"');
|
381
|
-
}
|
382
|
-
}
|
383
|
-
state.finalize();
|
384
|
-
const container = new Group();
|
385
|
-
container.materialLibraries = [].concat(state.materialLibraries);
|
386
|
-
const hasPrimitives = !(state.objects.length === 1 && state.objects[0].geometry.vertices.length === 0);
|
387
|
-
if (hasPrimitives === true) {
|
388
|
-
for (let i = 0, l = state.objects.length; i < l; i++) {
|
389
|
-
const object = state.objects[i];
|
390
|
-
const geometry = object.geometry;
|
391
|
-
const materials = object.materials;
|
392
|
-
const isLine = geometry.type === "Line";
|
393
|
-
const isPoints = geometry.type === "Points";
|
394
|
-
let hasVertexColors = false;
|
395
|
-
if (geometry.vertices.length === 0)
|
396
|
-
continue;
|
397
|
-
const buffergeometry = new BufferGeometry();
|
398
|
-
buffergeometry.setAttribute("position", new Float32BufferAttribute(geometry.vertices, 3));
|
399
|
-
if (geometry.normals.length > 0) {
|
400
|
-
buffergeometry.setAttribute("normal", new Float32BufferAttribute(geometry.normals, 3));
|
401
|
-
}
|
402
|
-
if (geometry.colors.length > 0) {
|
403
|
-
hasVertexColors = true;
|
404
|
-
buffergeometry.setAttribute("color", new Float32BufferAttribute(geometry.colors, 3));
|
405
|
-
}
|
406
|
-
if (geometry.hasUVIndices === true) {
|
407
|
-
buffergeometry.setAttribute("uv", new Float32BufferAttribute(geometry.uvs, 2));
|
408
|
-
}
|
409
|
-
const createdMaterials = [];
|
410
|
-
for (let mi = 0, miLen = materials.length; mi < miLen; mi++) {
|
411
|
-
const sourceMaterial = materials[mi];
|
412
|
-
const materialHash = sourceMaterial.name + "_" + sourceMaterial.smooth + "_" + hasVertexColors;
|
413
|
-
let material = state.materials[materialHash];
|
414
|
-
if (this.materials !== null) {
|
415
|
-
material = this.materials.create(sourceMaterial.name);
|
416
|
-
if (isLine && material && !(material instanceof LineBasicMaterial)) {
|
417
|
-
const materialLine = new LineBasicMaterial();
|
418
|
-
Material.prototype.copy.call(materialLine, material);
|
419
|
-
materialLine.color.copy(material.color);
|
420
|
-
material = materialLine;
|
421
|
-
} else if (isPoints && material && !(material instanceof PointsMaterial)) {
|
422
|
-
const materialPoints = new PointsMaterial({ size: 10, sizeAttenuation: false });
|
423
|
-
Material.prototype.copy.call(materialPoints, material);
|
424
|
-
materialPoints.color.copy(material.color);
|
425
|
-
materialPoints.map = material.map;
|
426
|
-
material = materialPoints;
|
427
|
-
}
|
428
|
-
}
|
429
|
-
if (material === void 0) {
|
430
|
-
if (isLine) {
|
431
|
-
material = new LineBasicMaterial();
|
432
|
-
} else if (isPoints) {
|
433
|
-
material = new PointsMaterial({ size: 1, sizeAttenuation: false });
|
434
|
-
} else {
|
435
|
-
material = new MeshPhongMaterial();
|
436
|
-
}
|
437
|
-
material.name = sourceMaterial.name;
|
438
|
-
material.flatShading = sourceMaterial.smooth ? false : true;
|
439
|
-
material.vertexColors = hasVertexColors;
|
440
|
-
state.materials[materialHash] = material;
|
441
|
-
}
|
442
|
-
createdMaterials.push(material);
|
443
|
-
}
|
444
|
-
let mesh;
|
445
|
-
if (createdMaterials.length > 1) {
|
446
|
-
for (let mi = 0, miLen = materials.length; mi < miLen; mi++) {
|
447
|
-
const sourceMaterial = materials[mi];
|
448
|
-
buffergeometry.addGroup(sourceMaterial.groupStart, sourceMaterial.groupCount, mi);
|
449
|
-
}
|
450
|
-
if (isLine) {
|
451
|
-
mesh = new LineSegments(buffergeometry, createdMaterials);
|
452
|
-
} else if (isPoints) {
|
453
|
-
mesh = new Points(buffergeometry, createdMaterials);
|
454
|
-
} else {
|
455
|
-
mesh = new Mesh(buffergeometry, createdMaterials);
|
456
|
-
}
|
457
|
-
} else {
|
458
|
-
if (isLine) {
|
459
|
-
mesh = new LineSegments(buffergeometry, createdMaterials[0]);
|
460
|
-
} else if (isPoints) {
|
461
|
-
mesh = new Points(buffergeometry, createdMaterials[0]);
|
462
|
-
} else {
|
463
|
-
mesh = new Mesh(buffergeometry, createdMaterials[0]);
|
464
|
-
}
|
465
|
-
}
|
466
|
-
mesh.name = object.name;
|
467
|
-
container.add(mesh);
|
468
|
-
}
|
469
|
-
} else {
|
470
|
-
if (state.vertices.length > 0) {
|
471
|
-
const material = new PointsMaterial({ size: 1, sizeAttenuation: false });
|
472
|
-
const buffergeometry = new BufferGeometry();
|
473
|
-
buffergeometry.setAttribute("position", new Float32BufferAttribute(state.vertices, 3));
|
474
|
-
if (state.colors.length > 0 && state.colors[0] !== void 0) {
|
475
|
-
buffergeometry.setAttribute("color", new Float32BufferAttribute(state.colors, 3));
|
476
|
-
material.vertexColors = true;
|
477
|
-
}
|
478
|
-
const points = new Points(buffergeometry, material);
|
479
|
-
container.add(points);
|
480
|
-
}
|
481
|
-
}
|
482
|
-
return container;
|
483
|
-
}
|
484
|
-
}
|
485
|
-
export {
|
486
|
-
OBJLoader
|
487
|
-
};
|