super-three 0.133.4 → 0.136.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/LICENSE +1 -1
- package/build/three.js +2285 -1983
- package/build/three.min.js +1 -1
- package/build/three.module.js +5983 -5358
- package/examples/fonts/open-sans/open-sans-v15-cyrillic-ext_greek_greek-ext_cyrillic_latin_latin-ext_vietnamese-regular.woff +0 -0
- package/examples/fonts/open-sans/open-sans-v15-cyrillic-ext_greek_greek-ext_cyrillic_latin_latin-ext_vietnamese-regular.woff2 +0 -0
- package/examples/fonts/open-sans/open-sans.css +9 -0
- package/examples/fonts/tabler-icons/fonts/tabler-icons.eot +0 -0
- package/examples/fonts/tabler-icons/fonts/tabler-icons.svg +3966 -0
- package/examples/fonts/tabler-icons/fonts/tabler-icons.ttf +0 -0
- package/examples/fonts/tabler-icons/fonts/tabler-icons.woff +0 -0
- package/examples/fonts/tabler-icons/fonts/tabler-icons.woff2 +0 -0
- package/examples/fonts/tabler-icons/tabler-icons.min.css +4 -0
- package/examples/js/animation/CCDIKSolver.js +0 -1
- package/examples/js/animation/MMDPhysics.js +2 -4
- package/examples/js/cameras/CinematicCamera.js +2 -7
- package/examples/js/controls/ArcballControls.js +99 -72
- package/examples/js/controls/DragControls.js +7 -0
- package/examples/js/controls/OrbitControls.js +5 -36
- package/examples/js/controls/TrackballControls.js +3 -2
- package/examples/js/controls/TransformControls.js +24 -1
- package/examples/js/csm/CSM.js +2 -2
- package/examples/js/csm/CSMFrustum.js +133 -0
- package/examples/js/curves/CurveExtras.js +0 -2
- package/examples/js/effects/AsciiEffect.js +2 -9
- package/examples/js/exporters/GLTFExporter.js +148 -64
- package/examples/js/exporters/MMDExporter.js +1 -1
- package/examples/js/exporters/USDZExporter.js +45 -26
- package/examples/js/geometries/ConvexGeometry.js +1 -1
- package/examples/js/geometries/TeapotGeometry.js +0 -1
- package/examples/js/interactive/SelectionBox.js +2 -0
- package/examples/js/interactive/SelectionHelper.js +22 -7
- package/examples/js/lights/RectAreaLightUniformsLib.js +4 -0
- package/examples/js/lines/LineMaterial.js +58 -20
- package/examples/js/lines/LineSegments2.js +29 -24
- package/examples/js/loaders/3DMLoader.js +24 -11
- package/examples/js/loaders/3MFLoader.js +2 -2
- package/examples/js/loaders/AMFLoader.js +0 -2
- package/examples/js/loaders/BasisTextureLoader.js +1 -0
- package/examples/js/loaders/ColladaLoader.js +61 -4
- package/examples/js/loaders/EXRLoader.js +201 -272
- package/examples/js/loaders/FBXLoader.js +4 -5
- package/examples/js/loaders/GLTFLoader.js +98 -35
- package/examples/js/loaders/HDRCubeTextureLoader.js +0 -10
- package/examples/js/loaders/KTX2Loader.js +23 -2
- package/examples/js/loaders/KTXLoader.js +1 -1
- package/examples/js/loaders/LDrawLoader.js +1169 -901
- package/examples/js/loaders/LUT3dlLoader.js +19 -10
- package/examples/js/loaders/LUTCubeLoader.js +5 -4
- package/examples/js/loaders/LWOLoader.js +8 -6
- package/examples/js/loaders/LogLuvLoader.js +766 -0
- package/examples/js/loaders/MMDLoader.js +0 -1
- package/examples/js/loaders/NRRDLoader.js +9 -2
- package/examples/js/loaders/OBJLoader.js +0 -2
- package/examples/js/loaders/PLYLoader.js +33 -8
- package/examples/js/loaders/RGBELoader.js +8 -22
- package/examples/js/loaders/RGBMLoader.js +56 -6
- package/examples/js/loaders/SVGLoader.js +12 -6
- package/examples/js/loaders/TDSLoader.js +237 -271
- package/examples/js/loaders/VOXLoader.js +1 -0
- package/examples/js/loaders/VRMLLoader.js +11 -22
- package/examples/js/loaders/lwo/LWO2Parser.js +1 -0
- package/examples/js/loaders/lwo/LWO3Parser.js +4 -2
- package/examples/js/math/ConvexHull.js +7 -13
- package/examples/js/math/ImprovedNoise.js +1 -1
- package/examples/js/misc/GPUComputationRenderer.js +3 -1
- package/examples/js/misc/Volume.js +2 -2
- package/examples/js/modifiers/CurveModifier.js +8 -7
- package/examples/js/modifiers/EdgeSplitModifier.js +1 -1
- package/examples/js/modifiers/SimplifyModifier.js +1 -1
- package/examples/js/objects/Lensflare.js +2 -10
- package/examples/js/objects/MarchingCubes.js +42 -128
- package/examples/js/objects/Reflector.js +8 -13
- package/examples/js/objects/ReflectorForSSRPass.js +0 -10
- package/examples/js/objects/Refractor.js +8 -13
- package/examples/js/objects/Sky.js +1 -1
- package/examples/js/objects/Water.js +3 -15
- package/examples/js/objects/Water2.js +4 -7
- package/examples/js/postprocessing/GlitchPass.js +6 -5
- package/examples/js/postprocessing/SMAAPass.js +2 -9
- package/examples/js/postprocessing/SSAOPass.js +10 -21
- package/examples/js/postprocessing/SavePass.js +1 -5
- package/examples/js/renderers/CSS2DRenderer.js +4 -4
- package/examples/js/renderers/CSS3DRenderer.js +4 -4
- package/examples/js/shaders/ConvolutionShader.js +0 -1
- package/examples/js/shaders/DigitalGlitch.js +3 -3
- package/examples/js/shaders/FXAAShader.js +1 -1
- package/examples/js/shaders/FilmShader.js +1 -1
- package/examples/js/shaders/GammaCorrectionShader.js +1 -1
- package/examples/js/shaders/HorizontalBlurShader.js +1 -2
- package/examples/js/shaders/MMDToonShader.js +0 -1
- package/examples/js/shaders/SSAOShader.js +1 -1
- package/examples/js/shaders/SSRShader.js +1 -1
- package/examples/js/shaders/SSRrShader.js +1 -1
- package/examples/js/shaders/VerticalBlurShader.js +1 -2
- package/examples/js/utils/GeometryUtils.js +1 -1
- package/examples/jsm/animation/CCDIKSolver.js +0 -1
- package/examples/jsm/animation/MMDPhysics.js +1 -3
- package/examples/jsm/cameras/CinematicCamera.js +2 -5
- package/examples/jsm/{WebGL.js → capabilities/WebGL.js} +2 -2
- package/examples/jsm/{renderers/webgpu → capabilities}/WebGPU.js +1 -1
- package/examples/jsm/controls/ArcballControls.js +80 -77
- package/examples/jsm/controls/DragControls.js +7 -0
- package/examples/jsm/controls/OrbitControls.js +9 -51
- package/examples/jsm/controls/TrackballControls.js +1 -1
- package/examples/jsm/controls/TransformControls.js +24 -1
- package/examples/jsm/csm/CSM.js +3 -3
- package/examples/jsm/csm/{Frustum.js → CSMFrustum.js} +3 -3
- package/examples/jsm/curves/CurveExtras.js +0 -2
- package/examples/jsm/effects/AsciiEffect.js +2 -9
- package/examples/jsm/exporters/GLTFExporter.js +169 -99
- package/examples/jsm/exporters/MMDExporter.js +1 -1
- package/examples/jsm/exporters/USDZExporter.js +47 -26
- package/examples/jsm/geometries/ConvexGeometry.js +1 -1
- package/examples/jsm/geometries/TeapotGeometry.js +0 -1
- package/examples/jsm/interactive/SelectionBox.js +1 -0
- package/examples/jsm/interactive/SelectionHelper.js +19 -7
- package/examples/jsm/libs/flow.module.js +3338 -0
- package/examples/jsm/libs/lil-gui.module.min.js +8 -0
- package/examples/jsm/libs/rhino3dm/rhino3dm.wasm +0 -0
- package/examples/jsm/lights/RectAreaLightUniformsLib.js +7 -0
- package/examples/jsm/lines/LineMaterial.js +59 -23
- package/examples/jsm/lines/LineSegments2.js +22 -18
- package/examples/jsm/loaders/3DMLoader.js +18 -12
- package/examples/jsm/loaders/3MFLoader.js +2 -2
- package/examples/jsm/loaders/AMFLoader.js +0 -2
- package/examples/jsm/loaders/BasisTextureLoader.js +7 -0
- package/examples/jsm/loaders/ColladaLoader.js +61 -4
- package/examples/jsm/loaders/EXRLoader.js +200 -306
- package/examples/jsm/loaders/FBXLoader.js +4 -5
- package/examples/jsm/loaders/GLTFLoader.js +102 -40
- package/examples/jsm/loaders/HDRCubeTextureLoader.js +1 -17
- package/examples/jsm/loaders/KTX2Loader.js +30 -2
- package/examples/jsm/loaders/KTXLoader.js +1 -1
- package/examples/jsm/loaders/LDrawLoader.js +1159 -898
- package/examples/jsm/loaders/LUT3dlLoader.js +19 -12
- package/examples/jsm/loaders/LUTCubeLoader.js +5 -5
- package/examples/jsm/loaders/LWOLoader.js +8 -6
- package/examples/jsm/loaders/LogLuvLoader.js +606 -0
- package/examples/jsm/loaders/MMDLoader.js +0 -1
- package/examples/jsm/loaders/NRRDLoader.js +10 -2
- package/examples/jsm/loaders/OBJLoader.js +0 -2
- package/examples/jsm/loaders/PLYLoader.js +34 -8
- package/examples/jsm/loaders/RGBELoader.js +7 -28
- package/examples/jsm/loaders/RGBMLoader.js +62 -8
- package/examples/jsm/loaders/SVGLoader.js +15 -7
- package/examples/jsm/loaders/TDSLoader.js +236 -275
- package/examples/jsm/loaders/VOXLoader.js +1 -0
- package/examples/jsm/loaders/VRMLLoader.js +11 -23
- package/examples/jsm/loaders/lwo/LWO2Parser.js +1 -0
- package/examples/jsm/loaders/lwo/LWO3Parser.js +2 -2
- package/examples/jsm/math/ConvexHull.js +7 -13
- package/examples/jsm/math/ImprovedNoise.js +1 -1
- package/examples/jsm/misc/GPUComputationRenderer.js +3 -1
- package/examples/jsm/misc/Volume.js +2 -2
- package/examples/jsm/modifiers/CurveModifier.js +9 -8
- package/examples/jsm/modifiers/EdgeSplitModifier.js +1 -1
- package/examples/jsm/modifiers/SimplifyModifier.js +1 -1
- package/examples/jsm/node-editor/NodeEditor.js +455 -0
- package/examples/jsm/node-editor/accessors/NormalEditor.js +30 -0
- package/examples/jsm/node-editor/accessors/PositionEditor.js +30 -0
- package/examples/jsm/node-editor/accessors/UVEditor.js +26 -0
- package/examples/jsm/node-editor/display/BlendEditor.js +43 -0
- package/examples/jsm/node-editor/examples/animate-uv.json +1 -0
- package/examples/jsm/node-editor/examples/fake-top-light.json +1 -0
- package/examples/jsm/node-editor/examples/oscillator-color.json +1 -0
- package/examples/jsm/node-editor/examples/rim.json +1 -0
- package/examples/jsm/node-editor/inputs/ColorEditor.js +91 -0
- package/examples/jsm/node-editor/inputs/FloatEditor.js +24 -0
- package/examples/jsm/node-editor/inputs/SliderEditor.js +68 -0
- package/examples/jsm/node-editor/inputs/Vector2Editor.js +28 -0
- package/examples/jsm/node-editor/inputs/Vector3Editor.js +30 -0
- package/examples/jsm/node-editor/inputs/Vector4Editor.js +37 -0
- package/examples/jsm/node-editor/materials/StandardMaterialEditor.js +108 -0
- package/examples/jsm/node-editor/math/DotEditor.js +36 -0
- package/examples/jsm/node-editor/math/InvertEditor.js +38 -0
- package/examples/jsm/node-editor/math/LimiterEditor.js +48 -0
- package/examples/jsm/node-editor/math/NormalizeEditor.js +26 -0
- package/examples/jsm/node-editor/math/OperatorEditor.js +50 -0
- package/examples/jsm/node-editor/math/PowerEditor.js +34 -0
- package/examples/jsm/node-editor/math/TrigonometryEditor.js +39 -0
- package/examples/jsm/node-editor/procedural/CheckerEditor.js +26 -0
- package/examples/jsm/node-editor/utils/OscillatorEditor.js +42 -0
- package/examples/jsm/node-editor/utils/TimerEditor.js +57 -0
- package/examples/jsm/nodes/core/NodeBuilder.js +2 -2
- package/examples/jsm/nodes/materials/StandardNodeMaterial.js +1 -1
- package/examples/jsm/nodes/materials/nodes/StandardNode.js +7 -6
- package/examples/jsm/nodes/math/MathNode.js +12 -0
- package/examples/jsm/nodes/misc/BumpMapNode.js +1 -1
- package/examples/jsm/nodes/misc/TextureCubeUVNode.js +1 -4
- package/examples/jsm/nodes/utils/ColorSpaceNode.js +5 -177
- package/examples/jsm/objects/Lensflare.js +5 -16
- package/examples/jsm/objects/MarchingCubes.js +46 -152
- package/examples/jsm/objects/Reflector.js +8 -16
- package/examples/jsm/objects/ReflectorForSSRPass.js +0 -12
- package/examples/jsm/objects/Refractor.js +8 -16
- package/examples/jsm/objects/Sky.js +1 -1
- package/examples/jsm/objects/Water.js +3 -18
- package/examples/jsm/objects/Water2.js +4 -8
- package/examples/jsm/postprocessing/AdaptiveToneMappingPass.js +1 -1
- package/examples/jsm/postprocessing/AfterimagePass.js +1 -1
- package/examples/jsm/postprocessing/BloomPass.js +1 -1
- package/examples/jsm/postprocessing/BokehPass.js +1 -1
- package/examples/jsm/postprocessing/ClearPass.js +1 -1
- package/examples/jsm/postprocessing/CubeTexturePass.js +1 -1
- package/examples/jsm/postprocessing/DotScreenPass.js +1 -1
- package/examples/jsm/postprocessing/EffectComposer.js +3 -3
- package/examples/jsm/postprocessing/FilmPass.js +1 -1
- package/examples/jsm/postprocessing/GlitchPass.js +10 -7
- package/examples/jsm/postprocessing/HalftonePass.js +1 -1
- package/examples/jsm/postprocessing/MaskPass.js +1 -1
- package/examples/jsm/postprocessing/OutlinePass.js +1 -1
- package/examples/jsm/postprocessing/RenderPass.js +1 -1
- package/examples/jsm/postprocessing/SAOPass.js +2 -2
- package/examples/jsm/postprocessing/SMAAPass.js +3 -12
- package/examples/jsm/postprocessing/SSAARenderPass.js +1 -1
- package/examples/jsm/postprocessing/SSAOPass.js +15 -26
- package/examples/jsm/postprocessing/SSRPass.js +1 -1
- package/examples/jsm/postprocessing/SSRrPass.js +1 -1
- package/examples/jsm/postprocessing/SavePass.js +2 -4
- package/examples/jsm/postprocessing/ShaderPass.js +1 -1
- package/examples/jsm/postprocessing/TAARenderPass.js +1 -1
- package/examples/jsm/postprocessing/TexturePass.js +1 -1
- package/examples/jsm/postprocessing/UnrealBloomPass.js +1 -1
- package/examples/jsm/renderers/CSS2DRenderer.js +5 -4
- package/examples/jsm/renderers/CSS3DRenderer.js +5 -4
- package/examples/jsm/renderers/nodes/Nodes.js +17 -13
- package/examples/jsm/renderers/nodes/ShaderNode.js +229 -49
- package/examples/jsm/renderers/nodes/accessors/MaterialNode.js +6 -6
- package/examples/jsm/renderers/nodes/accessors/ModelViewProjectionNode.js +5 -5
- package/examples/jsm/renderers/nodes/accessors/NormalNode.js +14 -3
- package/examples/jsm/renderers/nodes/accessors/PointUVNode.js +3 -3
- package/examples/jsm/renderers/nodes/accessors/PositionNode.js +15 -5
- package/examples/jsm/renderers/nodes/accessors/SkinningNode.js +107 -0
- package/examples/jsm/renderers/nodes/accessors/UVNode.js +7 -5
- package/examples/jsm/renderers/nodes/core/ArrayInputNode.js +3 -3
- package/examples/jsm/renderers/nodes/core/AttributeNode.js +6 -0
- package/examples/jsm/renderers/nodes/core/BypassNode.js +38 -0
- package/examples/jsm/renderers/nodes/core/CodeNode.js +3 -3
- package/examples/jsm/renderers/nodes/core/ContextNode.js +4 -19
- package/examples/jsm/renderers/nodes/core/ExpressionNode.js +13 -2
- package/examples/jsm/renderers/nodes/core/FunctionNode.js +19 -132
- package/examples/jsm/renderers/nodes/core/InputNode.js +13 -3
- package/examples/jsm/renderers/nodes/core/Node.js +32 -10
- package/examples/jsm/renderers/nodes/core/NodeBuilder.js +146 -128
- package/examples/jsm/renderers/nodes/core/NodeFunction.js +22 -0
- package/examples/jsm/renderers/nodes/core/NodeFunctionInput.js +4 -4
- package/examples/jsm/renderers/nodes/core/NodeKeywords.js +18 -179
- package/examples/jsm/renderers/nodes/core/NodeParser.js +11 -0
- package/examples/jsm/renderers/nodes/core/NodeVar.js +2 -2
- package/examples/jsm/renderers/nodes/core/PropertyNode.js +14 -2
- package/examples/jsm/renderers/nodes/core/TempNode.js +10 -13
- package/examples/jsm/renderers/nodes/core/VarNode.js +12 -7
- package/examples/jsm/renderers/nodes/core/VaryNode.js +23 -8
- package/examples/jsm/renderers/nodes/core/constants.js +2 -0
- package/examples/jsm/renderers/nodes/display/ColorSpaceNode.js +43 -63
- package/examples/jsm/renderers/nodes/display/NormalMapNode.js +21 -22
- package/examples/jsm/renderers/nodes/functions/BSDFs.js +64 -101
- package/examples/jsm/renderers/nodes/functions/PhysicalMaterialFunctions.js +27 -0
- package/examples/jsm/renderers/nodes/inputs/BufferNode.js +25 -0
- package/examples/jsm/renderers/nodes/inputs/IntNode.js +17 -0
- package/examples/jsm/renderers/nodes/inputs/TextureNode.js +13 -10
- package/examples/jsm/renderers/nodes/lights/LightContextNode.js +20 -14
- package/examples/jsm/renderers/nodes/lights/LightNode.js +32 -36
- package/examples/jsm/renderers/nodes/math/CondNode.js +60 -0
- package/examples/jsm/renderers/nodes/math/MathNode.js +91 -37
- package/examples/jsm/renderers/nodes/math/OperatorNode.js +124 -31
- package/examples/jsm/renderers/nodes/parsers/GLSLNodeFunction.js +137 -0
- package/examples/jsm/renderers/nodes/parsers/GLSLNodeParser.js +14 -0
- package/examples/jsm/renderers/nodes/parsers/WGSLNodeFunction.js +89 -0
- package/examples/jsm/renderers/nodes/parsers/WGSLNodeParser.js +14 -0
- package/examples/jsm/renderers/nodes/procedural/CheckerNode.js +7 -9
- package/examples/jsm/renderers/nodes/utils/ArrayElementNode.js +31 -0
- package/examples/jsm/renderers/nodes/utils/ConvertNode.js +33 -0
- package/examples/jsm/renderers/nodes/utils/JoinNode.js +7 -7
- package/examples/jsm/renderers/nodes/utils/OscNode.js +58 -0
- package/examples/jsm/renderers/nodes/utils/SplitNode.js +18 -8
- package/examples/jsm/renderers/nodes/utils/SpriteSheetUVNode.js +7 -7
- package/examples/jsm/renderers/nodes/utils/TimerNode.js +1 -1
- package/examples/jsm/renderers/webgl/nodes/SlotNode.js +22 -0
- package/examples/jsm/renderers/webgl/nodes/WebGLNodeBuilder.js +192 -95
- package/examples/jsm/renderers/webgl/nodes/WebGLNodes.js +2 -2
- package/examples/jsm/renderers/webgl/nodes/WebGLPhysicalContextNode.js +2 -2
- package/examples/jsm/renderers/webgpu/WebGPUBackground.js +1 -1
- package/examples/jsm/renderers/webgpu/WebGPUBindings.js +10 -9
- package/examples/jsm/renderers/webgpu/WebGPUComputePipelines.js +2 -4
- package/examples/jsm/renderers/webgpu/WebGPUObjects.js +1 -1
- package/examples/jsm/renderers/webgpu/WebGPUProgrammableStage.js +2 -4
- package/examples/jsm/renderers/webgpu/WebGPURenderPipeline.js +15 -23
- package/examples/jsm/renderers/webgpu/WebGPURenderPipelines.js +44 -65
- package/examples/jsm/renderers/webgpu/WebGPURenderer.js +13 -31
- package/examples/jsm/renderers/webgpu/WebGPUTextureUtils.js +61 -28
- package/examples/jsm/renderers/webgpu/WebGPUTextures.js +35 -29
- package/examples/jsm/renderers/webgpu/constants.js +2 -2
- package/examples/jsm/renderers/webgpu/nodes/WebGPUNodeBuilder.js +459 -95
- package/examples/jsm/renderers/webgpu/nodes/WebGPUNodes.js +1 -1
- package/examples/jsm/shaders/ConvolutionShader.js +0 -1
- package/examples/jsm/shaders/DigitalGlitch.js +3 -3
- package/examples/jsm/shaders/FXAAShader.js +1 -1
- package/examples/jsm/shaders/FilmShader.js +1 -1
- package/examples/jsm/shaders/GammaCorrectionShader.js +1 -1
- package/examples/jsm/shaders/HorizontalBlurShader.js +1 -2
- package/examples/jsm/shaders/MMDToonShader.js +0 -1
- package/examples/jsm/shaders/SSAOShader.js +1 -1
- package/examples/jsm/shaders/SSRShader.js +1 -1
- package/examples/jsm/shaders/SSRrShader.js +1 -1
- package/examples/jsm/shaders/VerticalBlurShader.js +1 -2
- package/examples/jsm/utils/GeometryUtils.js +1 -1
- package/examples/jsm/utils/LDrawUtils.js +195 -0
- package/examples/jsm/utils/WorkerPool.js +11 -11
- package/examples/jsm/webxr/OculusHandPointerModel.js +6 -6
- package/examples/jsm/webxr/VRButton.js +24 -0
- package/examples/jsm/webxr/XREstimatedLight.js +2 -0
- package/package.json +27 -18
- package/src/Three.Legacy.js +18 -0
- package/src/Three.js +1 -3
- package/src/animation/AnimationMixer.js +1 -0
- package/src/cameras/CubeCamera.js +2 -0
- package/src/cameras/StereoCamera.js +8 -7
- package/src/constants.js +3 -23
- package/src/core/Layers.js +7 -1
- package/src/core/Object3D.js +3 -1
- package/src/extras/ImageUtils.js +63 -0
- package/src/extras/PMREMGenerator.js +49 -185
- package/src/extras/core/Interpolations.js +1 -1
- package/src/geometries/LatheGeometry.js +70 -47
- package/src/helpers/CameraHelper.js +1 -1
- package/src/loaders/FileLoader.js +98 -144
- package/src/loaders/ImageLoader.js +9 -4
- package/src/loaders/LoaderUtils.js +26 -0
- package/src/loaders/MaterialLoader.js +8 -5
- package/src/loaders/ObjectLoader.js +2 -0
- package/src/materials/Material.js +8 -8
- package/src/materials/MeshPhysicalMaterial.js +20 -14
- package/src/math/Color.js +1 -39
- package/src/math/MathUtils.js +5 -16
- package/src/math/Quaternion.js +1 -1
- package/src/math/Ray.js +2 -2
- package/src/math/Sphere.js +10 -1
- package/src/objects/Skeleton.js +1 -0
- package/src/renderers/WebGLCubeRenderTarget.js +0 -2
- package/src/renderers/WebGLMultisampleRenderTarget.js +7 -1
- package/src/renderers/WebGLRenderer.js +106 -199
- package/src/renderers/shaders/ShaderChunk/bsdfs.glsl.js +2 -2
- package/src/renderers/shaders/ShaderChunk/bumpmap_pars_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/cube_uv_reflection_fragment.glsl.js +2 -24
- package/src/renderers/shaders/ShaderChunk/emissivemap_fragment.glsl.js +0 -2
- package/src/renderers/shaders/ShaderChunk/encodings_pars_fragment.glsl.js +0 -78
- package/src/renderers/shaders/ShaderChunk/envmap_common_pars_fragment.glsl.js +0 -1
- package/src/renderers/shaders/ShaderChunk/envmap_fragment.glsl.js +0 -2
- package/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/lightmap_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/lights_fragment_maps.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js +19 -6
- package/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js +28 -2
- package/src/renderers/shaders/ShaderChunk/map_fragment.glsl.js +10 -3
- package/src/renderers/shaders/ShaderChunk/map_particle_fragment.glsl.js +1 -2
- package/src/renderers/shaders/ShaderChunk/tonemapping_pars_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/transmission_pars_fragment.glsl.js +9 -8
- package/src/renderers/shaders/ShaderLib/background.glsl.js +1 -3
- package/src/renderers/shaders/ShaderLib/equirect.glsl.js +1 -3
- package/src/renderers/shaders/ShaderLib/meshbasic.glsl.js +1 -1
- package/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js +1 -2
- package/src/renderers/shaders/ShaderLib/meshphysical.glsl.js +23 -5
- package/src/renderers/shaders/ShaderLib/vsm.glsl.js +2 -1
- package/src/renderers/shaders/ShaderLib.js +8 -6
- package/src/renderers/shaders/UniformsLib.js +1 -2
- package/src/renderers/webgl/WebGLCapabilities.js +0 -2
- package/src/renderers/webgl/WebGLCubeMaps.js +0 -4
- package/src/renderers/webgl/WebGLCubeUVMaps.js +29 -16
- package/src/renderers/webgl/WebGLExtensions.js +1 -0
- package/src/renderers/webgl/WebGLMaterials.js +27 -15
- package/src/renderers/webgl/WebGLMorphtargets.js +13 -0
- package/src/renderers/webgl/WebGLProgram.js +12 -37
- package/src/renderers/webgl/WebGLPrograms.js +192 -70
- package/src/renderers/webgl/WebGLRenderLists.js +4 -14
- package/src/renderers/webgl/WebGLShaderCache.js +120 -0
- package/src/renderers/webgl/WebGLShadowMap.js +14 -5
- package/src/renderers/webgl/WebGLState.js +157 -17
- package/src/renderers/webgl/WebGLTextures.js +442 -83
- package/src/renderers/webgl/WebGLUniforms.js +45 -1
- package/src/renderers/webgl/WebGLUtils.js +86 -28
- package/src/renderers/webxr/WebXRManager.js +77 -109
- package/src/scenes/Scene.js +1 -1
- package/src/textures/DataTexture.js +0 -2
- package/src/textures/DataTexture2DArray.js +0 -2
- package/src/textures/DataTexture3D.js +0 -2
- package/src/textures/FramebufferTexture.js +25 -0
- package/src/textures/Texture.js +8 -1
- package/src/textures/VideoTexture.js +1 -3
- package/examples/js/WebGL.js +0 -90
- package/examples/js/controls/DeviceOrientationControls.js +0 -147
- package/examples/js/libs/dat.gui.min.js +0 -14
- package/examples/js/utils/RoughnessMipmapper.js +0 -278
- package/examples/jsm/controls/DeviceOrientationControls.js +0 -153
- package/examples/jsm/libs/dat.gui.module.js +0 -3575
- package/examples/jsm/libs/glslang.js +0 -78
- package/examples/jsm/libs/glslang.wasm +0 -0
- package/examples/jsm/renderers/nodes/consts/MathConsts.js +0 -7
- package/examples/jsm/renderers/nodes/core/ConstNode.js +0 -39
- package/examples/jsm/renderers/nodes/core/NodeSlot.js +0 -13
- package/examples/jsm/renderers/nodes/core/StructNode.js +0 -80
- package/examples/jsm/renderers/nodes/core/StructVarNode.js +0 -75
- package/examples/jsm/renderers/nodes/functions/EncodingFunctions.js +0 -99
- package/examples/jsm/renderers/nodes/functions/MathFunctions.js +0 -47
- package/examples/jsm/renderers/webgpu/nodes/ShaderLib.js +0 -152
- package/examples/jsm/utils/RoughnessMipmapper.js +0 -300
- package/src/extras/objects/ImmediateRenderObject.js +0 -31
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EventDispatcher } from '../core/EventDispatcher.js';
|
|
2
|
-
import { FrontSide, FlatShading, NormalBlending, LessEqualDepth, AddEquation, OneMinusSrcAlphaFactor, SrcAlphaFactor, AlwaysStencilFunc, KeepStencilOp
|
|
2
|
+
import { FrontSide, FlatShading, NormalBlending, LessEqualDepth, AddEquation, OneMinusSrcAlphaFactor, SrcAlphaFactor, AlwaysStencilFunc, KeepStencilOp } from '../constants.js';
|
|
3
3
|
import * as MathUtils from '../math/MathUtils.js';
|
|
4
4
|
|
|
5
5
|
let materialId = 0;
|
|
@@ -24,7 +24,6 @@ class Material extends EventDispatcher {
|
|
|
24
24
|
this.vertexColors = false;
|
|
25
25
|
|
|
26
26
|
this.opacity = 1;
|
|
27
|
-
this.format = RGBAFormat;
|
|
28
27
|
this.transparent = false;
|
|
29
28
|
|
|
30
29
|
this.blendSrc = SrcAlphaFactor;
|
|
@@ -54,6 +53,7 @@ class Material extends EventDispatcher {
|
|
|
54
53
|
this.shadowSide = null;
|
|
55
54
|
|
|
56
55
|
this.colorWrite = true;
|
|
56
|
+
this.alphaWrite = true;
|
|
57
57
|
|
|
58
58
|
this.precision = null; // override the renderer's default precision for this material
|
|
59
59
|
|
|
@@ -192,14 +192,14 @@ class Material extends EventDispatcher {
|
|
|
192
192
|
if ( this.metalness !== undefined ) data.metalness = this.metalness;
|
|
193
193
|
|
|
194
194
|
if ( this.sheen !== undefined ) data.sheen = this.sheen;
|
|
195
|
-
if ( this.
|
|
195
|
+
if ( this.sheenColor && this.sheenColor.isColor ) data.sheenColor = this.sheenColor.getHex();
|
|
196
196
|
if ( this.sheenRoughness !== undefined ) data.sheenRoughness = this.sheenRoughness;
|
|
197
197
|
if ( this.emissive && this.emissive.isColor ) data.emissive = this.emissive.getHex();
|
|
198
198
|
if ( this.emissiveIntensity && this.emissiveIntensity !== 1 ) data.emissiveIntensity = this.emissiveIntensity;
|
|
199
199
|
|
|
200
200
|
if ( this.specular && this.specular.isColor ) data.specular = this.specular.getHex();
|
|
201
201
|
if ( this.specularIntensity !== undefined ) data.specularIntensity = this.specularIntensity;
|
|
202
|
-
if ( this.
|
|
202
|
+
if ( this.specularColor && this.specularColor.isColor ) data.specularColor = this.specularColor.getHex();
|
|
203
203
|
if ( this.shininess !== undefined ) data.shininess = this.shininess;
|
|
204
204
|
if ( this.clearcoat !== undefined ) data.clearcoat = this.clearcoat;
|
|
205
205
|
if ( this.clearcoatRoughness !== undefined ) data.clearcoatRoughness = this.clearcoatRoughness;
|
|
@@ -270,7 +270,7 @@ class Material extends EventDispatcher {
|
|
|
270
270
|
if ( this.emissiveMap && this.emissiveMap.isTexture ) data.emissiveMap = this.emissiveMap.toJSON( meta ).uuid;
|
|
271
271
|
if ( this.specularMap && this.specularMap.isTexture ) data.specularMap = this.specularMap.toJSON( meta ).uuid;
|
|
272
272
|
if ( this.specularIntensityMap && this.specularIntensityMap.isTexture ) data.specularIntensityMap = this.specularIntensityMap.toJSON( meta ).uuid;
|
|
273
|
-
if ( this.
|
|
273
|
+
if ( this.specularColorMap && this.specularColorMap.isTexture ) data.specularColorMap = this.specularColorMap.toJSON( meta ).uuid;
|
|
274
274
|
|
|
275
275
|
if ( this.envMap && this.envMap.isTexture ) {
|
|
276
276
|
|
|
@@ -295,7 +295,7 @@ class Material extends EventDispatcher {
|
|
|
295
295
|
if ( this.thickness !== undefined ) data.thickness = this.thickness;
|
|
296
296
|
if ( this.thicknessMap && this.thicknessMap.isTexture ) data.thicknessMap = this.thicknessMap.toJSON( meta ).uuid;
|
|
297
297
|
if ( this.attenuationDistance !== undefined ) data.attenuationDistance = this.attenuationDistance;
|
|
298
|
-
if ( this.
|
|
298
|
+
if ( this.attenuationColor !== undefined ) data.attenuationColor = this.attenuationColor.getHex();
|
|
299
299
|
|
|
300
300
|
if ( this.size !== undefined ) data.size = this.size;
|
|
301
301
|
if ( this.shadowSide !== null ) data.shadowSide = this.shadowSide;
|
|
@@ -306,13 +306,13 @@ class Material extends EventDispatcher {
|
|
|
306
306
|
if ( this.vertexColors ) data.vertexColors = true;
|
|
307
307
|
|
|
308
308
|
if ( this.opacity < 1 ) data.opacity = this.opacity;
|
|
309
|
-
if ( this.format !== RGBAFormat ) data.format = this.format;
|
|
310
309
|
if ( this.transparent === true ) data.transparent = this.transparent;
|
|
311
310
|
|
|
312
311
|
data.depthFunc = this.depthFunc;
|
|
313
312
|
data.depthTest = this.depthTest;
|
|
314
313
|
data.depthWrite = this.depthWrite;
|
|
315
314
|
data.colorWrite = this.colorWrite;
|
|
315
|
+
data.alphaWrite = this.alphaWrite;
|
|
316
316
|
|
|
317
317
|
data.stencilWrite = this.stencilWrite;
|
|
318
318
|
data.stencilWriteMask = this.stencilWriteMask;
|
|
@@ -403,7 +403,6 @@ class Material extends EventDispatcher {
|
|
|
403
403
|
this.vertexColors = source.vertexColors;
|
|
404
404
|
|
|
405
405
|
this.opacity = source.opacity;
|
|
406
|
-
this.format = source.format;
|
|
407
406
|
this.transparent = source.transparent;
|
|
408
407
|
|
|
409
408
|
this.blendSrc = source.blendSrc;
|
|
@@ -449,6 +448,7 @@ class Material extends EventDispatcher {
|
|
|
449
448
|
this.shadowSide = source.shadowSide;
|
|
450
449
|
|
|
451
450
|
this.colorWrite = source.colorWrite;
|
|
451
|
+
this.alphaWrite = source.alphaWrite;
|
|
452
452
|
|
|
453
453
|
this.precision = source.precision;
|
|
454
454
|
|
|
@@ -16,8 +16,10 @@ import * as MathUtils from '../math/MathUtils.js';
|
|
|
16
16
|
* reflectivity: <float>,
|
|
17
17
|
*
|
|
18
18
|
* sheen: <float>,
|
|
19
|
-
*
|
|
19
|
+
* sheenColor: <Color>,
|
|
20
|
+
* sheenColorMap: new THREE.Texture( <Image> ),
|
|
20
21
|
* sheenRoughness: <float>,
|
|
22
|
+
* sheenRoughnessMap: new THREE.Texture( <Image> ),
|
|
21
23
|
*
|
|
22
24
|
* transmission: <float>,
|
|
23
25
|
* transmissionMap: new THREE.Texture( <Image> ),
|
|
@@ -25,12 +27,12 @@ import * as MathUtils from '../math/MathUtils.js';
|
|
|
25
27
|
* thickness: <float>,
|
|
26
28
|
* thicknessMap: new THREE.Texture( <Image> ),
|
|
27
29
|
* attenuationDistance: <float>,
|
|
28
|
-
*
|
|
30
|
+
* attenuationColor: <Color>,
|
|
29
31
|
*
|
|
30
32
|
* specularIntensity: <float>,
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
33
|
+
* specularIntensityMap: new THREE.Texture( <Image> ),
|
|
34
|
+
* specularColor: <Color>,
|
|
35
|
+
* specularColorMap: new THREE.Texture( <Image> )
|
|
34
36
|
* }
|
|
35
37
|
*/
|
|
36
38
|
|
|
@@ -70,20 +72,22 @@ class MeshPhysicalMaterial extends MeshStandardMaterial {
|
|
|
70
72
|
}
|
|
71
73
|
} );
|
|
72
74
|
|
|
73
|
-
this.
|
|
75
|
+
this.sheenColor = new Color( 0x000000 );
|
|
76
|
+
this.sheenColorMap = null;
|
|
74
77
|
this.sheenRoughness = 1.0;
|
|
78
|
+
this.sheenRoughnessMap = null;
|
|
75
79
|
|
|
76
80
|
this.transmissionMap = null;
|
|
77
81
|
|
|
78
|
-
this.thickness = 0
|
|
82
|
+
this.thickness = 0;
|
|
79
83
|
this.thicknessMap = null;
|
|
80
84
|
this.attenuationDistance = 0.0;
|
|
81
|
-
this.
|
|
85
|
+
this.attenuationColor = new Color( 1, 1, 1 );
|
|
82
86
|
|
|
83
87
|
this.specularIntensity = 1.0;
|
|
84
88
|
this.specularIntensityMap = null;
|
|
85
|
-
this.
|
|
86
|
-
this.
|
|
89
|
+
this.specularColor = new Color( 1, 1, 1 );
|
|
90
|
+
this.specularColorMap = null;
|
|
87
91
|
|
|
88
92
|
this._sheen = 0.0;
|
|
89
93
|
this._clearcoat = 0;
|
|
@@ -168,8 +172,10 @@ class MeshPhysicalMaterial extends MeshStandardMaterial {
|
|
|
168
172
|
this.ior = source.ior;
|
|
169
173
|
|
|
170
174
|
this.sheen = source.sheen;
|
|
171
|
-
this.
|
|
175
|
+
this.sheenColor.copy( source.sheenColor );
|
|
176
|
+
this.sheenColorMap = source.sheenColorMap;
|
|
172
177
|
this.sheenRoughness = source.sheenRoughness;
|
|
178
|
+
this.sheenRoughnessMap = source.sheenRoughnessMap;
|
|
173
179
|
|
|
174
180
|
this.transmission = source.transmission;
|
|
175
181
|
this.transmissionMap = source.transmissionMap;
|
|
@@ -177,12 +183,12 @@ class MeshPhysicalMaterial extends MeshStandardMaterial {
|
|
|
177
183
|
this.thickness = source.thickness;
|
|
178
184
|
this.thicknessMap = source.thicknessMap;
|
|
179
185
|
this.attenuationDistance = source.attenuationDistance;
|
|
180
|
-
this.
|
|
186
|
+
this.attenuationColor.copy( source.attenuationColor );
|
|
181
187
|
|
|
182
188
|
this.specularIntensity = source.specularIntensity;
|
|
183
189
|
this.specularIntensityMap = source.specularIntensityMap;
|
|
184
|
-
this.
|
|
185
|
-
this.
|
|
190
|
+
this.specularColor.copy( source.specularColor );
|
|
191
|
+
this.specularColorMap = source.specularColorMap;
|
|
186
192
|
|
|
187
193
|
return this;
|
|
188
194
|
|
package/src/math/Color.js
CHANGED
|
@@ -298,44 +298,6 @@ class Color {
|
|
|
298
298
|
|
|
299
299
|
}
|
|
300
300
|
|
|
301
|
-
copyGammaToLinear( color, gammaFactor = 2.0 ) {
|
|
302
|
-
|
|
303
|
-
this.r = Math.pow( color.r, gammaFactor );
|
|
304
|
-
this.g = Math.pow( color.g, gammaFactor );
|
|
305
|
-
this.b = Math.pow( color.b, gammaFactor );
|
|
306
|
-
|
|
307
|
-
return this;
|
|
308
|
-
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
copyLinearToGamma( color, gammaFactor = 2.0 ) {
|
|
312
|
-
|
|
313
|
-
const safeInverse = ( gammaFactor > 0 ) ? ( 1.0 / gammaFactor ) : 1.0;
|
|
314
|
-
|
|
315
|
-
this.r = Math.pow( color.r, safeInverse );
|
|
316
|
-
this.g = Math.pow( color.g, safeInverse );
|
|
317
|
-
this.b = Math.pow( color.b, safeInverse );
|
|
318
|
-
|
|
319
|
-
return this;
|
|
320
|
-
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
convertGammaToLinear( gammaFactor ) {
|
|
324
|
-
|
|
325
|
-
this.copyGammaToLinear( this, gammaFactor );
|
|
326
|
-
|
|
327
|
-
return this;
|
|
328
|
-
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
convertLinearToGamma( gammaFactor ) {
|
|
332
|
-
|
|
333
|
-
this.copyLinearToGamma( this, gammaFactor );
|
|
334
|
-
|
|
335
|
-
return this;
|
|
336
|
-
|
|
337
|
-
}
|
|
338
|
-
|
|
339
301
|
copySRGBToLinear( color ) {
|
|
340
302
|
|
|
341
303
|
this.r = SRGBToLinear( color.r );
|
|
@@ -601,4 +563,4 @@ Color.prototype.r = 1;
|
|
|
601
563
|
Color.prototype.g = 1;
|
|
602
564
|
Color.prototype.b = 1;
|
|
603
565
|
|
|
604
|
-
export { Color };
|
|
566
|
+
export { Color, SRGBToLinear };
|
package/src/math/MathUtils.js
CHANGED
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
let _seed = 1234567;
|
|
2
|
-
|
|
3
|
-
const DEG2RAD = Math.PI / 180;
|
|
4
|
-
const RAD2DEG = 180 / Math.PI;
|
|
5
|
-
|
|
6
|
-
//
|
|
7
|
-
|
|
8
1
|
const _lut = [];
|
|
9
2
|
|
|
10
3
|
for ( let i = 0; i < 256; i ++ ) {
|
|
@@ -13,18 +6,14 @@ for ( let i = 0; i < 256; i ++ ) {
|
|
|
13
6
|
|
|
14
7
|
}
|
|
15
8
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
function generateUUID() {
|
|
19
|
-
|
|
20
|
-
if ( hasRandomUUID ) {
|
|
9
|
+
let _seed = 1234567;
|
|
21
10
|
|
|
22
|
-
return crypto.randomUUID().toUpperCase();
|
|
23
11
|
|
|
24
|
-
|
|
12
|
+
const DEG2RAD = Math.PI / 180;
|
|
13
|
+
const RAD2DEG = 180 / Math.PI;
|
|
25
14
|
|
|
26
|
-
|
|
27
|
-
|
|
15
|
+
// http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/21963136#21963136
|
|
16
|
+
function generateUUID() {
|
|
28
17
|
|
|
29
18
|
const d0 = Math.random() * 0xffffffff | 0;
|
|
30
19
|
const d1 = Math.random() * 0xffffffff | 0;
|
package/src/math/Quaternion.js
CHANGED
package/src/math/Ray.js
CHANGED
|
@@ -100,7 +100,7 @@ class Ray {
|
|
|
100
100
|
|
|
101
101
|
distanceSqToSegment( v0, v1, optionalPointOnRay, optionalPointOnSegment ) {
|
|
102
102
|
|
|
103
|
-
// from
|
|
103
|
+
// from https://github.com/pmjoniak/GeometricTools/blob/master/GTEngine/Include/Mathematics/GteDistRaySegment.h
|
|
104
104
|
// It returns the min distance between the ray and the segment
|
|
105
105
|
// defined by v0 and v1
|
|
106
106
|
// It can also set two optional targets :
|
|
@@ -399,7 +399,7 @@ class Ray {
|
|
|
399
399
|
|
|
400
400
|
// Compute the offset origin, edges, and normal.
|
|
401
401
|
|
|
402
|
-
// from
|
|
402
|
+
// from https://github.com/pmjoniak/GeometricTools/blob/master/GTEngine/Include/Mathematics/GteIntrRay3Triangle3.h
|
|
403
403
|
|
|
404
404
|
_edge1.subVectors( b, a );
|
|
405
405
|
_edge2.subVectors( c, a );
|
package/src/math/Sphere.js
CHANGED
|
@@ -193,7 +193,16 @@ class Sphere {
|
|
|
193
193
|
// 1) Enclose the farthest point on the other sphere into this sphere.
|
|
194
194
|
// 2) Enclose the opposite point of the farthest point into this sphere.
|
|
195
195
|
|
|
196
|
-
|
|
196
|
+
if ( this.center.equals( sphere.center ) === true ) {
|
|
197
|
+
|
|
198
|
+
_toFarthestPoint.set( 0, 0, 1 ).multiplyScalar( sphere.radius );
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
} else {
|
|
202
|
+
|
|
203
|
+
_toFarthestPoint.subVectors( sphere.center, this.center ).normalize().multiplyScalar( sphere.radius );
|
|
204
|
+
|
|
205
|
+
}
|
|
197
206
|
|
|
198
207
|
this.expandByPoint( _v1.copy( sphere.center ).add( _toFarthestPoint ) );
|
|
199
208
|
this.expandByPoint( _v1.copy( sphere.center ).sub( _toFarthestPoint ) );
|
package/src/objects/Skeleton.js
CHANGED
|
@@ -178,6 +178,7 @@ class Skeleton {
|
|
|
178
178
|
boneMatrices.set( this.boneMatrices ); // copy current values
|
|
179
179
|
|
|
180
180
|
const boneTexture = new DataTexture( boneMatrices, size, size, RGBAFormat, FloatType );
|
|
181
|
+
boneTexture.needsUpdate = true;
|
|
181
182
|
|
|
182
183
|
this.boneMatrices = boneMatrices;
|
|
183
184
|
this.boneTexture = boneTexture;
|
|
@@ -37,8 +37,6 @@ class WebGLCubeRenderTarget extends WebGLRenderTarget {
|
|
|
37
37
|
this.texture.generateMipmaps = options.generateMipmaps !== undefined ? options.generateMipmaps : false;
|
|
38
38
|
this.texture.minFilter = options.minFilter !== undefined ? options.minFilter : LinearFilter;
|
|
39
39
|
|
|
40
|
-
this.texture._needsFlipEnvMap = false;
|
|
41
|
-
|
|
42
40
|
}
|
|
43
41
|
|
|
44
42
|
fromEquirectangularTexture( renderer, texture ) {
|
|
@@ -2,12 +2,16 @@ import { WebGLRenderTarget } from './WebGLRenderTarget.js';
|
|
|
2
2
|
|
|
3
3
|
class WebGLMultisampleRenderTarget extends WebGLRenderTarget {
|
|
4
4
|
|
|
5
|
-
constructor( width, height, options ) {
|
|
5
|
+
constructor( width, height, options = {} ) {
|
|
6
6
|
|
|
7
7
|
super( width, height, options );
|
|
8
8
|
|
|
9
9
|
this.samples = 4;
|
|
10
10
|
|
|
11
|
+
this.ignoreDepthForMultisampleCopy = options.ignoreDepth !== undefined ? options.ignoreDepth : true;
|
|
12
|
+
this.useRenderToTexture = ( options.useRenderToTexture !== undefined ) ? options.useRenderToTexture : false;
|
|
13
|
+
this.useRenderbuffer = this.useRenderToTexture === false;
|
|
14
|
+
|
|
11
15
|
}
|
|
12
16
|
|
|
13
17
|
copy( source ) {
|
|
@@ -15,6 +19,8 @@ class WebGLMultisampleRenderTarget extends WebGLRenderTarget {
|
|
|
15
19
|
super.copy.call( this, source );
|
|
16
20
|
|
|
17
21
|
this.samples = source.samples;
|
|
22
|
+
this.useRenderToTexture = source.useRenderToTexture;
|
|
23
|
+
this.useRenderbuffer = source.useRenderbuffer;
|
|
18
24
|
|
|
19
25
|
return this;
|
|
20
26
|
|