super-three 0.141.0 → 0.144.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- package/build/three.cjs +1558 -1034
- package/build/three.js +1558 -1034
- package/build/three.min.js +1 -1
- package/build/three.module.js +2012 -1243
- package/examples/js/animation/MMDPhysics.js +1 -16
- package/examples/js/controls/ArcballControls.js +16 -3
- package/examples/js/controls/FirstPersonControls.js +0 -7
- package/examples/js/controls/FlyControls.js +0 -8
- package/examples/js/controls/OrbitControls.js +0 -4
- package/examples/js/controls/PointerLockControls.js +0 -8
- package/examples/js/controls/TrackballControls.js +0 -2
- package/examples/js/controls/TransformControls.js +20 -16
- package/examples/js/effects/AnaglyphEffect.js +2 -2
- package/examples/js/effects/OutlineEffect.js +4 -24
- package/examples/js/effects/ParallaxBarrierEffect.js +2 -2
- package/examples/js/effects/PeppersGhostEffect.js +2 -2
- package/examples/js/effects/StereoEffect.js +2 -2
- package/examples/js/environments/RoomEnvironment.js +22 -0
- package/examples/js/exporters/ColladaExporter.js +4 -13
- package/examples/js/exporters/DRACOExporter.js +0 -12
- package/examples/js/exporters/GLTFExporter.js +28 -29
- package/examples/js/exporters/OBJExporter.js +2 -23
- package/examples/js/exporters/PLYExporter.js +12 -24
- package/examples/js/exporters/STLExporter.js +0 -7
- package/examples/js/exporters/USDZExporter.js +6 -0
- package/examples/js/geometries/ConvexGeometry.js +1 -1
- package/examples/js/geometries/ParametricGeometry.js +1 -8
- package/examples/js/interactive/SelectionHelper.js +2 -0
- package/examples/js/libs/ktx-parse.umd.js +1 -0
- package/examples/js/libs/meshopt_decoder.js +98 -32
- package/examples/js/loaders/ColladaLoader.js +1 -0
- package/examples/js/loaders/DRACOLoader.js +2 -25
- package/examples/js/loaders/EXRLoader.js +2 -13
- package/examples/js/loaders/FBXLoader.js +10 -3
- package/examples/js/loaders/FontLoader.js +3 -16
- package/examples/js/loaders/GLTFLoader.js +52 -36
- package/examples/js/loaders/HDRCubeTextureLoader.js +0 -11
- package/examples/js/loaders/LDrawLoader.js +139 -74
- package/examples/js/loaders/OBJLoader.js +7 -13
- package/examples/js/loaders/PCDLoader.js +59 -14
- package/examples/js/loaders/PLYLoader.js +3 -3
- package/examples/js/loaders/SVGLoader.js +4 -3
- package/examples/js/loaders/TIFFLoader.js +31 -0
- package/examples/js/loaders/VRMLLoader.js +33 -24
- package/examples/js/loaders/VTKLoader.js +1 -1
- package/examples/js/loaders/lwo/LWO2Parser.js +8 -7
- package/examples/js/loaders/lwo/LWO3Parser.js +8 -7
- package/examples/js/materials/MeshGouraudMaterial.js +385 -0
- package/examples/js/math/ColorConverter.js +0 -50
- package/examples/js/misc/GPUComputationRenderer.js +23 -0
- package/examples/js/misc/Volume.js +198 -190
- package/examples/js/misc/VolumeSlice.js +90 -88
- package/examples/js/modifiers/SimplifyModifier.js +1 -1
- package/examples/js/objects/GroundProjectedEnv.js +193 -0
- package/examples/js/objects/Reflector.js +9 -2
- package/examples/js/objects/ReflectorForSSRPass.js +3 -4
- package/examples/js/objects/Refractor.js +10 -4
- package/examples/js/objects/ShadowMesh.js +5 -1
- package/examples/js/postprocessing/OutlinePass.js +5 -3
- package/examples/js/renderers/CSS2DRenderer.js +2 -2
- package/examples/js/renderers/CSS3DRenderer.js +2 -2
- package/examples/js/renderers/Projector.js +2 -23
- package/examples/js/shaders/LuminosityShader.js +1 -1
- package/examples/js/shaders/MMDToonShader.js +6 -2
- package/examples/js/shaders/ToneMapShader.js +1 -1
- package/examples/js/utils/BufferGeometryUtils.js +1 -1
- package/examples/js/utils/GeometryUtils.js +2 -18
- package/examples/js/utils/PackedPhongMaterial.js +1 -1
- package/examples/js/utils/SceneUtils.js +0 -16
- package/examples/jsm/animation/MMDPhysics.js +3 -22
- package/examples/jsm/controls/ArcballControls.js +17 -2
- package/examples/jsm/controls/FirstPersonControls.js +0 -7
- package/examples/jsm/controls/FlyControls.js +0 -7
- package/examples/jsm/controls/OrbitControls.js +0 -5
- package/examples/jsm/controls/PointerLockControls.js +0 -7
- package/examples/jsm/controls/TrackballControls.js +0 -3
- package/examples/jsm/controls/TransformControls.js +18 -16
- package/examples/jsm/effects/AnaglyphEffect.js +2 -2
- package/examples/jsm/effects/OutlineEffect.js +4 -25
- package/examples/jsm/effects/ParallaxBarrierEffect.js +2 -2
- package/examples/jsm/effects/PeppersGhostEffect.js +2 -2
- package/examples/jsm/effects/StereoEffect.js +2 -2
- package/examples/jsm/environments/RoomEnvironment.js +23 -0
- package/examples/jsm/exporters/ColladaExporter.js +4 -13
- package/examples/jsm/exporters/DRACOExporter.js +0 -13
- package/examples/jsm/exporters/GLTFExporter.js +29 -31
- package/examples/jsm/exporters/KTX2Exporter.js +29 -29
- package/examples/jsm/exporters/OBJExporter.js +0 -18
- package/examples/jsm/exporters/PLYExporter.js +14 -22
- package/examples/jsm/exporters/STLExporter.js +1 -9
- package/examples/jsm/exporters/USDZExporter.js +14 -3
- package/examples/jsm/geometries/ConvexGeometry.js +1 -1
- package/examples/jsm/geometries/ParametricGeometry.js +0 -6
- package/examples/jsm/interactive/HTMLMesh.js +9 -9
- package/examples/jsm/interactive/SelectionHelper.js +5 -3
- package/examples/jsm/libs/meshopt_decoder.module.js +97 -32
- package/examples/jsm/libs/utif.module.js +1579 -0
- package/examples/jsm/libs/zstddec.module.js +1 -0
- package/examples/jsm/loaders/ColladaLoader.js +1 -0
- package/examples/jsm/loaders/DRACOLoader.js +2 -28
- package/examples/jsm/loaders/EXRLoader.js +3 -13
- package/examples/jsm/loaders/FBXLoader.js +10 -3
- package/examples/jsm/loaders/FontLoader.js +3 -16
- package/examples/jsm/loaders/GLTFLoader.js +52 -36
- package/examples/jsm/loaders/HDRCubeTextureLoader.js +0 -13
- package/examples/jsm/loaders/KTX2Loader.js +192 -30
- package/examples/jsm/loaders/LDrawLoader.js +135 -74
- package/examples/jsm/loaders/OBJLoader.js +6 -14
- package/examples/jsm/loaders/PCDLoader.js +59 -13
- package/examples/jsm/loaders/PLYLoader.js +3 -3
- package/examples/jsm/loaders/RGBELoader.js +1 -1
- package/examples/jsm/loaders/SVGLoader.js +4 -3
- package/examples/jsm/loaders/TIFFLoader.js +36 -0
- package/examples/jsm/loaders/USDZLoader.js +393 -0
- package/examples/jsm/loaders/VRMLLoader.js +23 -25
- package/examples/jsm/loaders/VTKLoader.js +1 -1
- package/examples/jsm/loaders/lwo/LWO2Parser.js +6 -8
- package/examples/jsm/loaders/lwo/LWO3Parser.js +6 -8
- package/examples/jsm/materials/MeshGouraudMaterial.js +423 -0
- package/examples/jsm/math/ColorConverter.js +1 -49
- package/examples/jsm/misc/GPUComputationRenderer.js +43 -0
- package/examples/jsm/misc/Volume.js +169 -171
- package/examples/jsm/misc/VolumeSlice.js +78 -80
- package/examples/jsm/modifiers/SimplifyModifier.js +1 -1
- package/examples/jsm/node-editor/accessors/MatcapUVEditor.js +1 -1
- package/examples/jsm/node-editor/accessors/NormalEditor.js +1 -1
- package/examples/jsm/node-editor/accessors/PositionEditor.js +1 -1
- package/examples/jsm/node-editor/accessors/UVEditor.js +1 -1
- package/examples/jsm/node-editor/display/BlendEditor.js +1 -1
- package/examples/jsm/node-editor/display/NormalMapEditor.js +1 -1
- package/examples/jsm/node-editor/inputs/ColorEditor.js +1 -1
- package/examples/jsm/node-editor/inputs/FloatEditor.js +1 -1
- package/examples/jsm/node-editor/inputs/SliderEditor.js +1 -1
- package/examples/jsm/node-editor/inputs/TextureEditor.js +1 -1
- package/examples/jsm/node-editor/inputs/Vector2Editor.js +1 -1
- package/examples/jsm/node-editor/inputs/Vector3Editor.js +1 -1
- package/examples/jsm/node-editor/inputs/Vector4Editor.js +1 -1
- package/examples/jsm/node-editor/materials/BasicMaterialEditor.js +1 -1
- package/examples/jsm/node-editor/materials/PointsMaterialEditor.js +1 -1
- package/examples/jsm/node-editor/materials/StandardMaterialEditor.js +1 -1
- package/examples/jsm/node-editor/math/AngleEditor.js +1 -1
- package/examples/jsm/node-editor/math/DotEditor.js +1 -1
- package/examples/jsm/node-editor/math/InvertEditor.js +1 -1
- package/examples/jsm/node-editor/math/LimiterEditor.js +1 -1
- package/examples/jsm/node-editor/math/NormalizeEditor.js +1 -1
- package/examples/jsm/node-editor/math/OperatorEditor.js +1 -1
- package/examples/jsm/node-editor/math/PowerEditor.js +1 -1
- package/examples/jsm/node-editor/math/TrigonometryEditor.js +1 -1
- package/examples/jsm/node-editor/procedural/CheckerEditor.js +1 -1
- package/examples/jsm/node-editor/utils/JoinEditor.js +1 -1
- package/examples/jsm/node-editor/utils/OscillatorEditor.js +1 -1
- package/examples/jsm/node-editor/utils/PreviewEditor.js +3 -3
- package/examples/jsm/node-editor/utils/SplitEditor.js +1 -1
- package/examples/jsm/node-editor/utils/TimerEditor.js +1 -1
- package/examples/jsm/nodes/Nodes.js +43 -13
- package/examples/jsm/nodes/accessors/CubeTextureNode.js +9 -5
- package/examples/jsm/nodes/accessors/NormalNode.js +4 -4
- package/examples/jsm/nodes/accessors/PositionNode.js +5 -5
- package/examples/jsm/nodes/accessors/ReflectVectorNode.js +31 -0
- package/examples/jsm/nodes/core/AttributeNode.js +3 -3
- package/examples/jsm/nodes/core/CodeNode.js +3 -3
- package/examples/jsm/nodes/core/FunctionCallNode.js +20 -5
- package/examples/jsm/nodes/core/FunctionNode.js +2 -2
- package/examples/jsm/nodes/core/Node.js +14 -12
- package/examples/jsm/nodes/core/NodeBuilder.js +12 -12
- package/examples/jsm/nodes/core/NodeUtils.js +23 -1
- package/examples/jsm/nodes/core/{NodeVary.js → NodeVarying.js} +3 -3
- package/examples/jsm/nodes/core/{VaryNode.js → VaryingNode.js} +7 -7
- package/examples/jsm/nodes/display/ColorAdjustmentNode.js +94 -0
- package/examples/jsm/nodes/geometry/RangeNode.js +109 -0
- package/examples/jsm/nodes/gpgpu/ComputeNode.js +2 -0
- package/examples/jsm/nodes/lighting/EnvironmentNode.js +8 -7
- package/examples/jsm/nodes/lighting/LightingContextNode.js +4 -4
- package/examples/jsm/nodes/loaders/NodeLoader.js +2 -2
- package/examples/jsm/nodes/loaders/NodeMaterialLoader.js +31 -0
- package/examples/jsm/nodes/materials/Materials.js +13 -25
- package/examples/jsm/nodes/materials/MeshPhysicalNodeMaterial.js +70 -0
- package/examples/jsm/nodes/materials/MeshStandardNodeMaterial.js +4 -7
- package/examples/jsm/nodes/materials/NodeMaterial.js +2 -2
- package/examples/jsm/nodes/materials/SpriteNodeMaterial.js +28 -17
- package/examples/jsm/nodes/materialx/Disclaimer.md +199 -0
- package/examples/jsm/nodes/materialx/functions/lib/mx_hsv.js +56 -0
- package/examples/jsm/nodes/materialx/functions/lib/mx_noise.js +607 -0
- package/examples/jsm/nodes/math/MathNode.js +2 -12
- package/examples/jsm/nodes/parsers/GLSLNodeFunction.js +21 -6
- package/examples/jsm/nodes/procedural/CheckerNode.js +2 -2
- package/examples/jsm/nodes/shadernode/ShaderNode.js +5 -5
- package/examples/jsm/nodes/shadernode/ShaderNodeBaseElements.js +8 -5
- package/examples/jsm/nodes/shadernode/ShaderNodeElements.js +20 -6
- package/examples/jsm/nodes/utils/ConvertNode.js +8 -3
- package/examples/jsm/nodes/utils/JoinNode.js +7 -7
- package/examples/jsm/nodes/utils/MaxMipLevelNode.js +2 -1
- package/examples/jsm/nodes/utils/RotateUVNode.js +32 -0
- package/examples/jsm/nodes/utils/SplitNode.js +21 -5
- package/examples/jsm/nodes/utils/TimerNode.js +2 -2
- package/examples/jsm/objects/GroundProjectedEnv.js +186 -0
- package/examples/jsm/objects/Reflector.js +12 -5
- package/examples/jsm/objects/ReflectorForSSRPass.js +3 -5
- package/examples/jsm/objects/Refractor.js +12 -6
- package/examples/jsm/objects/ShadowMesh.js +8 -2
- package/examples/jsm/postprocessing/OutlinePass.js +5 -3
- package/examples/jsm/renderers/CSS2DRenderer.js +2 -2
- package/examples/jsm/renderers/CSS3DRenderer.js +2 -2
- package/examples/jsm/renderers/Projector.js +2 -24
- package/examples/jsm/renderers/webgl/nodes/SlotNode.js +9 -5
- package/examples/jsm/renderers/webgl/nodes/WebGLNodeBuilder.js +329 -218
- package/examples/jsm/renderers/webgl/nodes/WebGLNodes.js +7 -3
- package/examples/jsm/renderers/webgpu/WebGPUBackground.js +39 -3
- package/examples/jsm/renderers/webgpu/WebGPUComputePipelines.js +6 -0
- package/examples/jsm/renderers/webgpu/WebGPUGeometries.js +6 -0
- package/examples/jsm/renderers/webgpu/WebGPUObjects.js +1 -1
- package/examples/jsm/renderers/webgpu/WebGPURenderPipeline.js +17 -19
- package/examples/jsm/renderers/webgpu/WebGPURenderPipelines.js +16 -14
- package/examples/jsm/renderers/webgpu/WebGPURenderStates.js +2 -2
- package/examples/jsm/renderers/webgpu/WebGPURenderer.js +66 -81
- package/examples/jsm/renderers/webgpu/WebGPUTextureUtils.js +5 -3
- package/examples/jsm/renderers/webgpu/WebGPUTextures.js +2 -2
- package/examples/jsm/renderers/webgpu/WebGPUUtils.js +81 -0
- package/examples/jsm/renderers/webgpu/nodes/WebGPUNodeBuilder.js +25 -30
- package/examples/jsm/renderers/webgpu/nodes/WebGPUNodes.js +1 -1
- package/examples/jsm/shaders/LuminosityShader.js +1 -1
- package/examples/jsm/shaders/MMDToonShader.js +2 -2
- package/examples/jsm/shaders/ToneMapShader.js +1 -1
- package/examples/jsm/utils/BufferGeometryUtils.js +2 -1
- package/examples/jsm/utils/GeometryUtils.js +17 -25
- package/examples/jsm/utils/PackedPhongMaterial.js +0 -1
- package/examples/jsm/utils/SceneUtils.js +1 -21
- package/examples/jsm/webxr/OculusHandPointerModel.js +6 -1
- package/examples/jsm/webxr/VRButton.js +1 -7
- package/package.json +18 -14
- package/src/Three.Legacy.js +262 -36
- package/src/Three.js +3 -2
- package/src/animation/AnimationAction.js +6 -5
- package/src/animation/AnimationClip.js +1 -1
- package/src/animation/AnimationMixer.js +1 -1
- package/src/animation/AnimationUtils.js +204 -199
- package/src/animation/KeyframeTrack.js +1 -1
- package/src/animation/PropertyBinding.js +24 -5
- package/src/cameras/CubeCamera.js +0 -7
- package/src/constants.js +2 -4
- package/src/core/BufferAttribute.js +81 -111
- package/src/core/BufferGeometry.js +3 -41
- package/src/core/InstancedBufferAttribute.js +0 -10
- package/src/core/InterleavedBuffer.js +1 -1
- package/src/core/InterleavedBufferAttribute.js +56 -7
- package/src/core/Object3D.js +22 -5
- package/src/core/Uniform.js +0 -7
- package/src/core/UniformsGroup.js +92 -0
- package/src/extras/DataUtils.js +104 -88
- package/src/extras/core/Path.js +1 -0
- package/src/extras/core/ShapePath.js +1 -4
- package/src/extras/curves/CatmullRomCurve3.js +4 -2
- package/src/geometries/BoxGeometry.js +1 -1
- package/src/geometries/CapsuleGeometry.js +1 -1
- package/src/geometries/CircleGeometry.js +1 -1
- package/src/geometries/ConeGeometry.js +1 -1
- package/src/geometries/CylinderGeometry.js +2 -1
- package/src/geometries/DodecahedronGeometry.js +1 -1
- package/src/geometries/EdgesGeometry.js +5 -4
- package/src/geometries/ExtrudeGeometry.js +2 -11
- package/src/geometries/IcosahedronGeometry.js +1 -1
- package/src/geometries/LatheGeometry.js +2 -2
- package/src/geometries/OctahedronGeometry.js +1 -1
- package/src/geometries/PlaneGeometry.js +2 -1
- package/src/geometries/PolyhedronGeometry.js +1 -1
- package/src/geometries/RingGeometry.js +1 -1
- package/src/geometries/ShapeGeometry.js +2 -1
- package/src/geometries/SphereGeometry.js +2 -1
- package/src/geometries/TetrahedronGeometry.js +1 -1
- package/src/geometries/TorusGeometry.js +2 -1
- package/src/geometries/TorusKnotGeometry.js +2 -1
- package/src/geometries/TubeGeometry.js +2 -1
- package/src/geometries/WireframeGeometry.js +1 -0
- package/src/helpers/CameraHelper.js +97 -38
- package/src/helpers/DirectionalLightHelper.js +1 -0
- package/src/helpers/HemisphereLightHelper.js +1 -0
- package/src/helpers/PlaneHelper.js +6 -9
- package/src/helpers/PolarGridHelper.js +18 -14
- package/src/helpers/SpotLightHelper.js +1 -0
- package/src/lights/SpotLight.js +2 -0
- package/src/loaders/FileLoader.js +12 -1
- package/src/loaders/LoadingManager.js +1 -1
- package/src/loaders/MaterialLoader.js +49 -7
- package/src/loaders/ObjectLoader.js +4 -41
- package/src/materials/Material.js +1 -33
- package/src/materials/Materials.js +0 -27
- package/src/materials/MeshLambertMaterial.js +28 -1
- package/src/materials/ShaderMaterial.js +3 -7
- package/src/math/Color.js +3 -13
- package/src/math/MathUtils.js +1 -7
- package/src/math/Matrix3.js +1 -7
- package/src/math/Matrix4.js +3 -27
- package/src/math/Quaternion.js +1 -21
- package/src/math/Vector2.js +4 -24
- package/src/math/Vector3.js +7 -46
- package/src/math/Vector4.js +4 -24
- package/src/renderers/WebGLRenderer.js +84 -8
- package/src/renderers/shaders/ShaderChunk/bsdfs.glsl.js +12 -12
- package/src/renderers/shaders/ShaderChunk/bumpmap_pars_fragment.glsl.js +3 -5
- package/src/renderers/shaders/ShaderChunk/common.glsl.js +6 -5
- package/src/renderers/shaders/ShaderChunk/cube_uv_reflection_fragment.glsl.js +24 -24
- package/src/renderers/shaders/ShaderChunk/envmap_pars_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/envmap_pars_vertex.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js +2 -1
- package/src/renderers/shaders/ShaderChunk/iridescence_fragment.glsl.js +113 -99
- package/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js +34 -12
- package/src/renderers/shaders/ShaderChunk/lights_lambert_fragment.glsl.js +5 -0
- package/src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js +30 -0
- package/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js +3 -1
- package/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js +13 -1
- package/src/renderers/shaders/ShaderChunk/normalmap_pars_fragment.glsl.js +2 -4
- package/src/renderers/shaders/ShaderChunk/output_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js +18 -7
- package/src/renderers/shaders/ShaderChunk/shadowmap_pars_vertex.glsl.js +8 -3
- package/src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js +9 -6
- package/src/renderers/shaders/ShaderChunk/shadowmask_pars_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js +14 -10
- package/src/renderers/shaders/ShaderChunk/worldpos_vertex.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk.js +4 -2
- package/src/renderers/shaders/ShaderLib/meshbasic.glsl.js +0 -1
- package/src/renderers/shaders/ShaderLib/meshlambert.glsl.js +22 -50
- package/src/renderers/shaders/ShaderLib/meshphong.glsl.js +0 -1
- package/src/renderers/shaders/ShaderLib.js +31 -31
- package/src/renderers/shaders/UniformsLib.js +12 -11
- package/src/renderers/shaders/UniformsUtils.js +14 -0
- package/src/renderers/webgl/WebGLBackground.js +2 -2
- package/src/renderers/webgl/WebGLLights.js +37 -13
- package/src/renderers/webgl/WebGLMorphtargets.js +0 -20
- package/src/renderers/webgl/WebGLProgram.js +6 -11
- package/src/renderers/webgl/WebGLPrograms.js +30 -26
- package/src/renderers/webgl/WebGLRenderLists.js +5 -4
- package/src/renderers/webgl/WebGLRenderStates.js +5 -4
- package/src/renderers/webgl/WebGLShaderCache.js +9 -6
- package/src/renderers/webgl/WebGLShadowMap.js +10 -15
- package/src/renderers/webgl/WebGLState.js +47 -0
- package/src/renderers/webgl/WebGLUniforms.js +4 -4
- package/src/renderers/webgl/WebGLUniformsGroups.js +372 -0
- package/src/renderers/webgl/WebGLUtils.js +2 -0
- package/src/renderers/webvr/WebVRManager.js +42 -9
- package/src/renderers/webvr/WebVRUtils.js +1 -1
- package/src/renderers/webxr/WebXRController.js +45 -37
- package/src/renderers/webxr/WebXRManager.js +58 -33
- package/src/scenes/Scene.js +16 -3
- package/src/textures/Source.js +1 -1
- package/src/utils.js +1 -1
- package/examples/js/controls/experimental/CameraControls.js +0 -1048
- package/examples/js/loaders/KTX2Loader.js +0 -558
- package/examples/jsm/controls/experimental/CameraControls.js +0 -1248
- package/examples/jsm/nodes/accessors/ReflectNode.js +0 -70
- package/examples/jsm/package.json +0 -3
- package/examples/jsm/renderers/webgl/nodes/WebGLPhysicalContextNode.js +0 -45
- package/src/renderers/shaders/ShaderChunk/lights_lambert_vertex.glsl.js +0 -122
package/src/constants.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const REVISION = '
|
|
1
|
+
export const REVISION = '144';
|
|
2
2
|
export const MOUSE = { LEFT: 0, MIDDLE: 1, RIGHT: 2, ROTATE: 0, DOLLY: 1, PAN: 2 };
|
|
3
3
|
export const TOUCH = { ROTATE: 0, PAN: 1, DOLLY_PAN: 2, DOLLY_ROTATE: 3 };
|
|
4
4
|
export const CullFaceNone = 0;
|
|
@@ -12,8 +12,6 @@ export const VSMShadowMap = 3;
|
|
|
12
12
|
export const FrontSide = 0;
|
|
13
13
|
export const BackSide = 1;
|
|
14
14
|
export const DoubleSide = 2;
|
|
15
|
-
export const FlatShading = 1;
|
|
16
|
-
export const SmoothShading = 2;
|
|
17
15
|
export const NoBlending = 0;
|
|
18
16
|
export const NormalBlending = 1;
|
|
19
17
|
export const AdditiveBlending = 2;
|
|
@@ -85,7 +83,7 @@ export const UnsignedShort4444Type = 1017;
|
|
|
85
83
|
export const UnsignedShort5551Type = 1018;
|
|
86
84
|
export const UnsignedInt248Type = 1020;
|
|
87
85
|
export const AlphaFormat = 1021;
|
|
88
|
-
export const RGBFormat = 1022;
|
|
86
|
+
export const RGBFormat = 1022; // @deprecated since r137
|
|
89
87
|
export const RGBAFormat = 1023;
|
|
90
88
|
export const LuminanceFormat = 1024;
|
|
91
89
|
export const LuminanceAlphaFormat = 1025;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { Vector4 } from '../math/Vector4.js';
|
|
2
1
|
import { Vector3 } from '../math/Vector3.js';
|
|
3
2
|
import { Vector2 } from '../math/Vector2.js';
|
|
4
|
-
import {
|
|
3
|
+
import { denormalize, normalize } from '../math/MathUtils.js';
|
|
5
4
|
import { StaticDrawUsage } from '../constants.js';
|
|
6
5
|
|
|
7
6
|
const _vector = /*@__PURE__*/ new Vector3();
|
|
@@ -86,110 +85,6 @@ class BufferAttribute {
|
|
|
86
85
|
|
|
87
86
|
}
|
|
88
87
|
|
|
89
|
-
copyColorsArray( colors ) {
|
|
90
|
-
|
|
91
|
-
const array = this.array;
|
|
92
|
-
let offset = 0;
|
|
93
|
-
|
|
94
|
-
for ( let i = 0, l = colors.length; i < l; i ++ ) {
|
|
95
|
-
|
|
96
|
-
let color = colors[ i ];
|
|
97
|
-
|
|
98
|
-
if ( color === undefined ) {
|
|
99
|
-
|
|
100
|
-
console.warn( 'THREE.BufferAttribute.copyColorsArray(): color is undefined', i );
|
|
101
|
-
color = new Color();
|
|
102
|
-
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
array[ offset ++ ] = color.r;
|
|
106
|
-
array[ offset ++ ] = color.g;
|
|
107
|
-
array[ offset ++ ] = color.b;
|
|
108
|
-
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
return this;
|
|
112
|
-
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
copyVector2sArray( vectors ) {
|
|
116
|
-
|
|
117
|
-
const array = this.array;
|
|
118
|
-
let offset = 0;
|
|
119
|
-
|
|
120
|
-
for ( let i = 0, l = vectors.length; i < l; i ++ ) {
|
|
121
|
-
|
|
122
|
-
let vector = vectors[ i ];
|
|
123
|
-
|
|
124
|
-
if ( vector === undefined ) {
|
|
125
|
-
|
|
126
|
-
console.warn( 'THREE.BufferAttribute.copyVector2sArray(): vector is undefined', i );
|
|
127
|
-
vector = new Vector2();
|
|
128
|
-
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
array[ offset ++ ] = vector.x;
|
|
132
|
-
array[ offset ++ ] = vector.y;
|
|
133
|
-
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
return this;
|
|
137
|
-
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
copyVector3sArray( vectors ) {
|
|
141
|
-
|
|
142
|
-
const array = this.array;
|
|
143
|
-
let offset = 0;
|
|
144
|
-
|
|
145
|
-
for ( let i = 0, l = vectors.length; i < l; i ++ ) {
|
|
146
|
-
|
|
147
|
-
let vector = vectors[ i ];
|
|
148
|
-
|
|
149
|
-
if ( vector === undefined ) {
|
|
150
|
-
|
|
151
|
-
console.warn( 'THREE.BufferAttribute.copyVector3sArray(): vector is undefined', i );
|
|
152
|
-
vector = new Vector3();
|
|
153
|
-
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
array[ offset ++ ] = vector.x;
|
|
157
|
-
array[ offset ++ ] = vector.y;
|
|
158
|
-
array[ offset ++ ] = vector.z;
|
|
159
|
-
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
return this;
|
|
163
|
-
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
copyVector4sArray( vectors ) {
|
|
167
|
-
|
|
168
|
-
const array = this.array;
|
|
169
|
-
let offset = 0;
|
|
170
|
-
|
|
171
|
-
for ( let i = 0, l = vectors.length; i < l; i ++ ) {
|
|
172
|
-
|
|
173
|
-
let vector = vectors[ i ];
|
|
174
|
-
|
|
175
|
-
if ( vector === undefined ) {
|
|
176
|
-
|
|
177
|
-
console.warn( 'THREE.BufferAttribute.copyVector4sArray(): vector is undefined', i );
|
|
178
|
-
vector = new Vector4();
|
|
179
|
-
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
array[ offset ++ ] = vector.x;
|
|
183
|
-
array[ offset ++ ] = vector.y;
|
|
184
|
-
array[ offset ++ ] = vector.z;
|
|
185
|
-
array[ offset ++ ] = vector.w;
|
|
186
|
-
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
return this;
|
|
190
|
-
|
|
191
|
-
}
|
|
192
|
-
|
|
193
88
|
applyMatrix3( m ) {
|
|
194
89
|
|
|
195
90
|
if ( this.itemSize === 2 ) {
|
|
@@ -270,6 +165,7 @@ class BufferAttribute {
|
|
|
270
165
|
|
|
271
166
|
set( value, offset = 0 ) {
|
|
272
167
|
|
|
168
|
+
// Matching BufferAttribute constructor, do not normalize the array.
|
|
273
169
|
this.array.set( value, offset );
|
|
274
170
|
|
|
275
171
|
return this;
|
|
@@ -278,12 +174,18 @@ class BufferAttribute {
|
|
|
278
174
|
|
|
279
175
|
getX( index ) {
|
|
280
176
|
|
|
281
|
-
|
|
177
|
+
let x = this.array[ index * this.itemSize ];
|
|
178
|
+
|
|
179
|
+
if ( this.normalized ) x = denormalize( x, this.array );
|
|
180
|
+
|
|
181
|
+
return x;
|
|
282
182
|
|
|
283
183
|
}
|
|
284
184
|
|
|
285
185
|
setX( index, x ) {
|
|
286
186
|
|
|
187
|
+
if ( this.normalized ) x = normalize( x, this.array );
|
|
188
|
+
|
|
287
189
|
this.array[ index * this.itemSize ] = x;
|
|
288
190
|
|
|
289
191
|
return this;
|
|
@@ -292,12 +194,18 @@ class BufferAttribute {
|
|
|
292
194
|
|
|
293
195
|
getY( index ) {
|
|
294
196
|
|
|
295
|
-
|
|
197
|
+
let y = this.array[ index * this.itemSize + 1 ];
|
|
198
|
+
|
|
199
|
+
if ( this.normalized ) y = denormalize( y, this.array );
|
|
200
|
+
|
|
201
|
+
return y;
|
|
296
202
|
|
|
297
203
|
}
|
|
298
204
|
|
|
299
205
|
setY( index, y ) {
|
|
300
206
|
|
|
207
|
+
if ( this.normalized ) y = normalize( y, this.array );
|
|
208
|
+
|
|
301
209
|
this.array[ index * this.itemSize + 1 ] = y;
|
|
302
210
|
|
|
303
211
|
return this;
|
|
@@ -306,12 +214,18 @@ class BufferAttribute {
|
|
|
306
214
|
|
|
307
215
|
getZ( index ) {
|
|
308
216
|
|
|
309
|
-
|
|
217
|
+
let z = this.array[ index * this.itemSize + 2 ];
|
|
218
|
+
|
|
219
|
+
if ( this.normalized ) z = denormalize( z, this.array );
|
|
220
|
+
|
|
221
|
+
return z;
|
|
310
222
|
|
|
311
223
|
}
|
|
312
224
|
|
|
313
225
|
setZ( index, z ) {
|
|
314
226
|
|
|
227
|
+
if ( this.normalized ) z = normalize( z, this.array );
|
|
228
|
+
|
|
315
229
|
this.array[ index * this.itemSize + 2 ] = z;
|
|
316
230
|
|
|
317
231
|
return this;
|
|
@@ -320,12 +234,18 @@ class BufferAttribute {
|
|
|
320
234
|
|
|
321
235
|
getW( index ) {
|
|
322
236
|
|
|
323
|
-
|
|
237
|
+
let w = this.array[ index * this.itemSize + 3 ];
|
|
238
|
+
|
|
239
|
+
if ( this.normalized ) w = denormalize( w, this.array );
|
|
240
|
+
|
|
241
|
+
return w;
|
|
324
242
|
|
|
325
243
|
}
|
|
326
244
|
|
|
327
245
|
setW( index, w ) {
|
|
328
246
|
|
|
247
|
+
if ( this.normalized ) w = normalize( w, this.array );
|
|
248
|
+
|
|
329
249
|
this.array[ index * this.itemSize + 3 ] = w;
|
|
330
250
|
|
|
331
251
|
return this;
|
|
@@ -336,6 +256,13 @@ class BufferAttribute {
|
|
|
336
256
|
|
|
337
257
|
index *= this.itemSize;
|
|
338
258
|
|
|
259
|
+
if ( this.normalized ) {
|
|
260
|
+
|
|
261
|
+
x = normalize( x, this.array );
|
|
262
|
+
y = normalize( y, this.array );
|
|
263
|
+
|
|
264
|
+
}
|
|
265
|
+
|
|
339
266
|
this.array[ index + 0 ] = x;
|
|
340
267
|
this.array[ index + 1 ] = y;
|
|
341
268
|
|
|
@@ -347,6 +274,14 @@ class BufferAttribute {
|
|
|
347
274
|
|
|
348
275
|
index *= this.itemSize;
|
|
349
276
|
|
|
277
|
+
if ( this.normalized ) {
|
|
278
|
+
|
|
279
|
+
x = normalize( x, this.array );
|
|
280
|
+
y = normalize( y, this.array );
|
|
281
|
+
z = normalize( z, this.array );
|
|
282
|
+
|
|
283
|
+
}
|
|
284
|
+
|
|
350
285
|
this.array[ index + 0 ] = x;
|
|
351
286
|
this.array[ index + 1 ] = y;
|
|
352
287
|
this.array[ index + 2 ] = z;
|
|
@@ -359,6 +294,15 @@ class BufferAttribute {
|
|
|
359
294
|
|
|
360
295
|
index *= this.itemSize;
|
|
361
296
|
|
|
297
|
+
if ( this.normalized ) {
|
|
298
|
+
|
|
299
|
+
x = normalize( x, this.array );
|
|
300
|
+
y = normalize( y, this.array );
|
|
301
|
+
z = normalize( z, this.array );
|
|
302
|
+
w = normalize( w, this.array );
|
|
303
|
+
|
|
304
|
+
}
|
|
305
|
+
|
|
362
306
|
this.array[ index + 0 ] = x;
|
|
363
307
|
this.array[ index + 1 ] = y;
|
|
364
308
|
this.array[ index + 2 ] = z;
|
|
@@ -387,7 +331,7 @@ class BufferAttribute {
|
|
|
387
331
|
const data = {
|
|
388
332
|
itemSize: this.itemSize,
|
|
389
333
|
type: this.array.constructor.name,
|
|
390
|
-
array: Array.
|
|
334
|
+
array: Array.from( this.array ),
|
|
391
335
|
normalized: this.normalized
|
|
392
336
|
};
|
|
393
337
|
|
|
@@ -399,6 +343,32 @@ class BufferAttribute {
|
|
|
399
343
|
|
|
400
344
|
}
|
|
401
345
|
|
|
346
|
+
// @deprecated
|
|
347
|
+
|
|
348
|
+
copyColorsArray() {
|
|
349
|
+
|
|
350
|
+
console.error( 'THREE.BufferAttribute: copyColorsArray() was removed in r144.' );
|
|
351
|
+
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
copyVector2sArray() {
|
|
355
|
+
|
|
356
|
+
console.error( 'THREE.BufferAttribute: copyVector2sArray() was removed in r144.' );
|
|
357
|
+
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
copyVector3sArray() {
|
|
361
|
+
|
|
362
|
+
console.error( 'THREE.BufferAttribute: copyVector3sArray() was removed in r144.' );
|
|
363
|
+
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
copyVector4sArray() {
|
|
367
|
+
|
|
368
|
+
console.error( 'THREE.BufferAttribute: copyVector4sArray() was removed in r144.' );
|
|
369
|
+
|
|
370
|
+
}
|
|
371
|
+
|
|
402
372
|
}
|
|
403
373
|
|
|
404
374
|
//
|
|
@@ -726,49 +726,11 @@ class BufferGeometry extends EventDispatcher {
|
|
|
726
726
|
|
|
727
727
|
}
|
|
728
728
|
|
|
729
|
-
|
|
729
|
+
// @deprecated since r144
|
|
730
730
|
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
console.error( 'THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.', geometry );
|
|
734
|
-
return;
|
|
735
|
-
|
|
736
|
-
}
|
|
737
|
-
|
|
738
|
-
if ( offset === undefined ) {
|
|
739
|
-
|
|
740
|
-
offset = 0;
|
|
741
|
-
|
|
742
|
-
console.warn(
|
|
743
|
-
'THREE.BufferGeometry.merge(): Overwriting original geometry, starting at offset=0. '
|
|
744
|
-
+ 'Use BufferGeometryUtils.mergeBufferGeometries() for lossless merge.'
|
|
745
|
-
);
|
|
746
|
-
|
|
747
|
-
}
|
|
748
|
-
|
|
749
|
-
const attributes = this.attributes;
|
|
750
|
-
|
|
751
|
-
for ( const key in attributes ) {
|
|
752
|
-
|
|
753
|
-
if ( geometry.attributes[ key ] === undefined ) continue;
|
|
754
|
-
|
|
755
|
-
const attribute1 = attributes[ key ];
|
|
756
|
-
const attributeArray1 = attribute1.array;
|
|
757
|
-
|
|
758
|
-
const attribute2 = geometry.attributes[ key ];
|
|
759
|
-
const attributeArray2 = attribute2.array;
|
|
760
|
-
|
|
761
|
-
const attributeOffset = attribute2.itemSize * offset;
|
|
762
|
-
const length = Math.min( attributeArray2.length, attributeArray1.length - attributeOffset );
|
|
763
|
-
|
|
764
|
-
for ( let i = 0, j = attributeOffset; i < length; i ++, j ++ ) {
|
|
765
|
-
|
|
766
|
-
attributeArray1[ j ] = attributeArray2[ i ];
|
|
767
|
-
|
|
768
|
-
}
|
|
769
|
-
|
|
770
|
-
}
|
|
731
|
+
merge() {
|
|
771
732
|
|
|
733
|
+
console.error( 'THREE.BufferGeometry.merge() has been removed. Use THREE.BufferGeometryUtils.mergeBufferGeometries() instead.' );
|
|
772
734
|
return this;
|
|
773
735
|
|
|
774
736
|
}
|
|
@@ -4,16 +4,6 @@ class InstancedBufferAttribute extends BufferAttribute {
|
|
|
4
4
|
|
|
5
5
|
constructor( array, itemSize, normalized, meshPerAttribute = 1 ) {
|
|
6
6
|
|
|
7
|
-
if ( typeof normalized === 'number' ) {
|
|
8
|
-
|
|
9
|
-
meshPerAttribute = normalized;
|
|
10
|
-
|
|
11
|
-
normalized = false;
|
|
12
|
-
|
|
13
|
-
console.error( 'THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument.' );
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
7
|
super( array, itemSize, normalized );
|
|
18
8
|
|
|
19
9
|
this.isInstancedBufferAttribute = true;
|
|
@@ -125,7 +125,7 @@ class InterleavedBuffer {
|
|
|
125
125
|
|
|
126
126
|
if ( data.arrayBuffers[ this.array.buffer._uuid ] === undefined ) {
|
|
127
127
|
|
|
128
|
-
data.arrayBuffers[ this.array.buffer._uuid ] = Array.
|
|
128
|
+
data.arrayBuffers[ this.array.buffer._uuid ] = Array.from( new Uint32Array( this.array.buffer ) );
|
|
129
129
|
|
|
130
130
|
}
|
|
131
131
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Vector3 } from '../math/Vector3.js';
|
|
2
2
|
import { BufferAttribute } from './BufferAttribute.js';
|
|
3
|
+
import { denormalize, normalize } from '../math/MathUtils.js';
|
|
3
4
|
|
|
4
5
|
const _vector = /*@__PURE__*/ new Vector3();
|
|
5
6
|
|
|
@@ -87,6 +88,8 @@ class InterleavedBufferAttribute {
|
|
|
87
88
|
|
|
88
89
|
setX( index, x ) {
|
|
89
90
|
|
|
91
|
+
if ( this.normalized ) x = normalize( x, this.array );
|
|
92
|
+
|
|
90
93
|
this.data.array[ index * this.data.stride + this.offset ] = x;
|
|
91
94
|
|
|
92
95
|
return this;
|
|
@@ -95,6 +98,8 @@ class InterleavedBufferAttribute {
|
|
|
95
98
|
|
|
96
99
|
setY( index, y ) {
|
|
97
100
|
|
|
101
|
+
if ( this.normalized ) y = normalize( y, this.array );
|
|
102
|
+
|
|
98
103
|
this.data.array[ index * this.data.stride + this.offset + 1 ] = y;
|
|
99
104
|
|
|
100
105
|
return this;
|
|
@@ -103,6 +108,8 @@ class InterleavedBufferAttribute {
|
|
|
103
108
|
|
|
104
109
|
setZ( index, z ) {
|
|
105
110
|
|
|
111
|
+
if ( this.normalized ) z = normalize( z, this.array );
|
|
112
|
+
|
|
106
113
|
this.data.array[ index * this.data.stride + this.offset + 2 ] = z;
|
|
107
114
|
|
|
108
115
|
return this;
|
|
@@ -111,6 +118,8 @@ class InterleavedBufferAttribute {
|
|
|
111
118
|
|
|
112
119
|
setW( index, w ) {
|
|
113
120
|
|
|
121
|
+
if ( this.normalized ) w = normalize( w, this.array );
|
|
122
|
+
|
|
114
123
|
this.data.array[ index * this.data.stride + this.offset + 3 ] = w;
|
|
115
124
|
|
|
116
125
|
return this;
|
|
@@ -119,25 +128,41 @@ class InterleavedBufferAttribute {
|
|
|
119
128
|
|
|
120
129
|
getX( index ) {
|
|
121
130
|
|
|
122
|
-
|
|
131
|
+
let x = this.data.array[ index * this.data.stride + this.offset ];
|
|
132
|
+
|
|
133
|
+
if ( this.normalized ) x = denormalize( x, this.array );
|
|
134
|
+
|
|
135
|
+
return x;
|
|
123
136
|
|
|
124
137
|
}
|
|
125
138
|
|
|
126
139
|
getY( index ) {
|
|
127
140
|
|
|
128
|
-
|
|
141
|
+
let y = this.data.array[ index * this.data.stride + this.offset + 1 ];
|
|
142
|
+
|
|
143
|
+
if ( this.normalized ) y = denormalize( y, this.array );
|
|
144
|
+
|
|
145
|
+
return y;
|
|
129
146
|
|
|
130
147
|
}
|
|
131
148
|
|
|
132
149
|
getZ( index ) {
|
|
133
150
|
|
|
134
|
-
|
|
151
|
+
let z = this.data.array[ index * this.data.stride + this.offset + 2 ];
|
|
152
|
+
|
|
153
|
+
if ( this.normalized ) z = denormalize( z, this.array );
|
|
154
|
+
|
|
155
|
+
return z;
|
|
135
156
|
|
|
136
157
|
}
|
|
137
158
|
|
|
138
159
|
getW( index ) {
|
|
139
160
|
|
|
140
|
-
|
|
161
|
+
let w = this.data.array[ index * this.data.stride + this.offset + 3 ];
|
|
162
|
+
|
|
163
|
+
if ( this.normalized ) w = denormalize( w, this.array );
|
|
164
|
+
|
|
165
|
+
return w;
|
|
141
166
|
|
|
142
167
|
}
|
|
143
168
|
|
|
@@ -145,6 +170,13 @@ class InterleavedBufferAttribute {
|
|
|
145
170
|
|
|
146
171
|
index = index * this.data.stride + this.offset;
|
|
147
172
|
|
|
173
|
+
if ( this.normalized ) {
|
|
174
|
+
|
|
175
|
+
x = normalize( x, this.array );
|
|
176
|
+
y = normalize( y, this.array );
|
|
177
|
+
|
|
178
|
+
}
|
|
179
|
+
|
|
148
180
|
this.data.array[ index + 0 ] = x;
|
|
149
181
|
this.data.array[ index + 1 ] = y;
|
|
150
182
|
|
|
@@ -156,6 +188,14 @@ class InterleavedBufferAttribute {
|
|
|
156
188
|
|
|
157
189
|
index = index * this.data.stride + this.offset;
|
|
158
190
|
|
|
191
|
+
if ( this.normalized ) {
|
|
192
|
+
|
|
193
|
+
x = normalize( x, this.array );
|
|
194
|
+
y = normalize( y, this.array );
|
|
195
|
+
z = normalize( z, this.array );
|
|
196
|
+
|
|
197
|
+
}
|
|
198
|
+
|
|
159
199
|
this.data.array[ index + 0 ] = x;
|
|
160
200
|
this.data.array[ index + 1 ] = y;
|
|
161
201
|
this.data.array[ index + 2 ] = z;
|
|
@@ -168,6 +208,15 @@ class InterleavedBufferAttribute {
|
|
|
168
208
|
|
|
169
209
|
index = index * this.data.stride + this.offset;
|
|
170
210
|
|
|
211
|
+
if ( this.normalized ) {
|
|
212
|
+
|
|
213
|
+
x = normalize( x, this.array );
|
|
214
|
+
y = normalize( y, this.array );
|
|
215
|
+
z = normalize( z, this.array );
|
|
216
|
+
w = normalize( w, this.array );
|
|
217
|
+
|
|
218
|
+
}
|
|
219
|
+
|
|
171
220
|
this.data.array[ index + 0 ] = x;
|
|
172
221
|
this.data.array[ index + 1 ] = y;
|
|
173
222
|
this.data.array[ index + 2 ] = z;
|
|
@@ -181,7 +230,7 @@ class InterleavedBufferAttribute {
|
|
|
181
230
|
|
|
182
231
|
if ( data === undefined ) {
|
|
183
232
|
|
|
184
|
-
console.log( 'THREE.InterleavedBufferAttribute.clone(): Cloning an
|
|
233
|
+
console.log( 'THREE.InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will deinterleave buffer data.' );
|
|
185
234
|
|
|
186
235
|
const array = [];
|
|
187
236
|
|
|
@@ -223,7 +272,7 @@ class InterleavedBufferAttribute {
|
|
|
223
272
|
|
|
224
273
|
if ( data === undefined ) {
|
|
225
274
|
|
|
226
|
-
console.log( 'THREE.InterleavedBufferAttribute.toJSON(): Serializing an
|
|
275
|
+
console.log( 'THREE.InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will deinterleave buffer data.' );
|
|
227
276
|
|
|
228
277
|
const array = [];
|
|
229
278
|
|
|
@@ -250,7 +299,7 @@ class InterleavedBufferAttribute {
|
|
|
250
299
|
|
|
251
300
|
} else {
|
|
252
301
|
|
|
253
|
-
// save as true
|
|
302
|
+
// save as true interleaved attribtue
|
|
254
303
|
|
|
255
304
|
if ( data.interleavedBuffers === undefined ) {
|
|
256
305
|
|
package/src/core/Object3D.js
CHANGED
|
@@ -100,6 +100,8 @@ class Object3D extends EventDispatcher {
|
|
|
100
100
|
this.matrixAutoUpdate = Object3D.DefaultMatrixAutoUpdate;
|
|
101
101
|
this.matrixWorldNeedsUpdate = false;
|
|
102
102
|
|
|
103
|
+
this.matrixWorldAutoUpdate = Object3D.DefaultMatrixWorldAutoUpdate; // checked by the renderer
|
|
104
|
+
|
|
103
105
|
this.layers = new Layers();
|
|
104
106
|
this.visible = true;
|
|
105
107
|
|
|
@@ -584,7 +586,13 @@ class Object3D extends EventDispatcher {
|
|
|
584
586
|
|
|
585
587
|
for ( let i = 0, l = children.length; i < l; i ++ ) {
|
|
586
588
|
|
|
587
|
-
children[ i ]
|
|
589
|
+
const child = children[ i ];
|
|
590
|
+
|
|
591
|
+
if ( child.matrixWorldAutoUpdate === true || force === true ) {
|
|
592
|
+
|
|
593
|
+
child.updateMatrixWorld( force );
|
|
594
|
+
|
|
595
|
+
}
|
|
588
596
|
|
|
589
597
|
}
|
|
590
598
|
|
|
@@ -594,7 +602,7 @@ class Object3D extends EventDispatcher {
|
|
|
594
602
|
|
|
595
603
|
const parent = this.parent;
|
|
596
604
|
|
|
597
|
-
if ( updateParents === true && parent !== null ) {
|
|
605
|
+
if ( updateParents === true && parent !== null && parent.matrixWorldAutoUpdate === true ) {
|
|
598
606
|
|
|
599
607
|
parent.updateWorldMatrix( true, false );
|
|
600
608
|
|
|
@@ -620,7 +628,13 @@ class Object3D extends EventDispatcher {
|
|
|
620
628
|
|
|
621
629
|
for ( let i = 0, l = children.length; i < l; i ++ ) {
|
|
622
630
|
|
|
623
|
-
children[ i ]
|
|
631
|
+
const child = children[ i ];
|
|
632
|
+
|
|
633
|
+
if ( child.matrixWorldAutoUpdate === true ) {
|
|
634
|
+
|
|
635
|
+
child.updateWorldMatrix( false, true );
|
|
636
|
+
|
|
637
|
+
}
|
|
624
638
|
|
|
625
639
|
}
|
|
626
640
|
|
|
@@ -721,7 +735,7 @@ class Object3D extends EventDispatcher {
|
|
|
721
735
|
|
|
722
736
|
}
|
|
723
737
|
|
|
724
|
-
if ( this.environment && this.environment.isTexture ) {
|
|
738
|
+
if ( this.environment && this.environment.isTexture && this.environment.isRenderTargetTexture !== true ) {
|
|
725
739
|
|
|
726
740
|
object.environment = this.environment.toJSON( meta ).uuid;
|
|
727
741
|
|
|
@@ -893,6 +907,8 @@ class Object3D extends EventDispatcher {
|
|
|
893
907
|
this.matrixAutoUpdate = source.matrixAutoUpdate;
|
|
894
908
|
this.matrixWorldNeedsUpdate = source.matrixWorldNeedsUpdate;
|
|
895
909
|
|
|
910
|
+
this.matrixWorldAutoUpdate = source.matrixWorldAutoUpdate;
|
|
911
|
+
|
|
896
912
|
this.layers.mask = source.layers.mask;
|
|
897
913
|
this.visible = source.visible;
|
|
898
914
|
|
|
@@ -921,7 +937,8 @@ class Object3D extends EventDispatcher {
|
|
|
921
937
|
|
|
922
938
|
}
|
|
923
939
|
|
|
924
|
-
Object3D.DefaultUp = new Vector3( 0, 1, 0 );
|
|
940
|
+
Object3D.DefaultUp = /*@__PURE__*/ new Vector3( 0, 1, 0 );
|
|
925
941
|
Object3D.DefaultMatrixAutoUpdate = true;
|
|
942
|
+
Object3D.DefaultMatrixWorldAutoUpdate = true;
|
|
926
943
|
|
|
927
944
|
export { Object3D };
|
package/src/core/Uniform.js
CHANGED