super-three 0.179.0 → 0.184.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/LICENSE +1 -1
- package/README.md +3 -4
- package/build/three.cjs +14522 -12207
- package/build/three.core.js +12005 -10954
- package/build/three.core.min.js +2 -2
- package/build/three.module.js +2270 -1005
- package/build/three.module.min.js +2 -2
- package/build/three.tsl.js +63 -18
- package/build/three.tsl.min.js +2 -2
- package/build/three.webgpu.js +16573 -7890
- package/build/three.webgpu.min.js +2 -2
- package/build/three.webgpu.nodes.js +16533 -7888
- package/build/three.webgpu.nodes.min.js +2 -2
- package/examples/fonts/MPLUSRounded1c/MPLUSRounded1c-Regular.typeface.json.zip +0 -0
- package/examples/fonts/MPLUSRounded1c/OFL.txt +91 -0
- package/examples/jsm/Addons.js +12 -4
- package/examples/jsm/animation/CCDIKSolver.js +8 -4
- package/examples/jsm/controls/ArcballControls.js +15 -12
- package/examples/jsm/controls/DragControls.js +9 -59
- package/examples/jsm/controls/FirstPersonControls.js +61 -57
- package/examples/jsm/controls/FlyControls.js +5 -1
- package/examples/jsm/controls/MapControls.js +55 -1
- package/examples/jsm/controls/OrbitControls.js +113 -10
- package/examples/jsm/controls/PointerLockControls.js +2 -10
- package/examples/jsm/controls/TrackballControls.js +9 -9
- package/examples/jsm/controls/TransformControls.js +35 -3
- package/examples/jsm/csm/CSM.js +2 -1
- package/examples/jsm/csm/CSMShadowNode.js +6 -2
- package/examples/jsm/effects/AnaglyphEffect.js +102 -7
- package/examples/jsm/effects/AsciiEffect.js +8 -8
- package/examples/jsm/environments/ColorEnvironment.js +59 -0
- package/examples/jsm/environments/RoomEnvironment.js +3 -0
- package/examples/jsm/exporters/DRACOExporter.js +2 -2
- package/examples/jsm/exporters/EXRExporter.js +2 -2
- package/examples/jsm/exporters/GLTFExporter.js +185 -34
- package/examples/jsm/exporters/KTX2Exporter.js +4 -2
- package/examples/jsm/exporters/PLYExporter.js +1 -1
- package/examples/jsm/exporters/USDZExporter.js +31 -5
- package/examples/jsm/geometries/DecalGeometry.js +3 -3
- package/examples/jsm/geometries/ParametricGeometry.js +1 -1
- package/examples/jsm/geometries/TeapotGeometry.js +2 -2
- package/examples/jsm/geometries/TextGeometry.js +21 -2
- package/examples/jsm/gpgpu/BitonicSort.js +715 -0
- package/examples/jsm/helpers/AnimationPathHelper.js +302 -0
- package/examples/jsm/helpers/LightProbeGridHelper.js +221 -0
- package/examples/jsm/helpers/LightProbeHelperGPU.js +1 -1
- package/examples/jsm/helpers/TextureHelperGPU.js +1 -1
- package/examples/jsm/helpers/ViewHelper.js +110 -13
- package/examples/jsm/inspector/Extension.js +13 -0
- package/examples/jsm/inspector/Inspector.js +542 -0
- package/examples/jsm/inspector/RendererInspector.js +425 -0
- package/examples/jsm/inspector/extensions/extensions.json +6 -0
- package/examples/jsm/inspector/extensions/tsl-graph/TSLGraphEditor.js +916 -0
- package/examples/jsm/inspector/extensions/tsl-graph/TSLGraphLoader.js +281 -0
- package/examples/jsm/inspector/tabs/Console.js +238 -0
- package/examples/jsm/inspector/tabs/Memory.js +128 -0
- package/examples/jsm/inspector/tabs/Parameters.js +380 -0
- package/examples/jsm/inspector/tabs/Performance.js +268 -0
- package/examples/jsm/inspector/tabs/Settings.js +264 -0
- package/examples/jsm/inspector/tabs/Timeline.js +1611 -0
- package/examples/jsm/inspector/tabs/Viewer.js +268 -0
- package/examples/jsm/inspector/ui/Graph.js +95 -0
- package/examples/jsm/inspector/ui/Item.js +170 -0
- package/examples/jsm/inspector/ui/List.js +75 -0
- package/examples/jsm/inspector/ui/Profiler.js +2072 -0
- package/examples/jsm/inspector/ui/Style.js +1667 -0
- package/examples/jsm/inspector/ui/Tab.js +265 -0
- package/examples/jsm/inspector/ui/Values.js +476 -0
- package/examples/jsm/inspector/ui/utils.js +69 -0
- package/examples/jsm/interaction/InteractionManager.js +226 -0
- package/examples/jsm/interactive/HTMLMesh.js +6 -10
- package/examples/jsm/interactive/InteractiveGroup.js +1 -1
- package/examples/jsm/interactive/SelectionBox.js +30 -0
- package/examples/jsm/libs/ktx-parse.module.js +1 -1
- package/examples/jsm/libs/meshopt_decoder.module.js +9 -8
- package/examples/jsm/lighting/DynamicLighting.js +82 -0
- package/examples/jsm/lighting/LightProbeGrid.js +651 -0
- package/examples/jsm/lights/RectAreaLightTexturesLib.js +1 -1
- package/examples/jsm/lines/Line2.js +3 -3
- package/examples/jsm/lines/LineGeometry.js +1 -1
- package/examples/jsm/lines/LineMaterial.js +7 -1
- package/examples/jsm/lines/LineSegments2.js +2 -2
- package/examples/jsm/lines/Wireframe.js +2 -2
- package/examples/jsm/lines/WireframeGeometry2.js +1 -1
- package/examples/jsm/lines/webgpu/LineSegments2.js +1 -1
- package/examples/jsm/lines/webgpu/Wireframe.js +1 -1
- package/examples/jsm/loaders/3DMLoader.js +5 -4
- package/examples/jsm/loaders/3MFLoader.js +3 -3
- package/examples/jsm/loaders/AMFLoader.js +2 -2
- package/examples/jsm/loaders/ColladaLoader.js +27 -4029
- package/examples/jsm/loaders/DDSLoader.js +1 -1
- package/examples/jsm/loaders/DRACOLoader.js +73 -22
- package/examples/jsm/loaders/EXRLoader.js +692 -53
- package/examples/jsm/loaders/FBXLoader.js +237 -39
- package/examples/jsm/loaders/FontLoader.js +23 -5
- package/examples/jsm/loaders/GCodeLoader.js +34 -8
- package/examples/jsm/loaders/GLTFLoader.js +159 -185
- package/examples/jsm/loaders/HDRCubeTextureLoader.js +5 -5
- package/examples/jsm/loaders/HDRLoader.js +485 -0
- package/examples/jsm/loaders/KMZLoader.js +5 -5
- package/examples/jsm/loaders/KTX2Loader.js +162 -53
- package/examples/jsm/loaders/KTXLoader.js +2 -2
- package/examples/jsm/loaders/LDrawLoader.js +41 -50
- package/examples/jsm/loaders/LUT3dlLoader.js +2 -2
- package/examples/jsm/loaders/LUTCubeLoader.js +1 -1
- package/examples/jsm/loaders/LWOLoader.js +9 -41
- package/examples/jsm/loaders/MaterialXLoader.js +22 -5
- package/examples/jsm/loaders/NRRDLoader.js +2 -2
- package/examples/jsm/loaders/OBJLoader.js +1 -1
- package/examples/jsm/loaders/PCDLoader.js +4 -2
- package/examples/jsm/loaders/PDBLoader.js +1 -1
- package/examples/jsm/loaders/RGBELoader.js +7 -473
- package/examples/jsm/loaders/SVGLoader.js +4 -4
- package/examples/jsm/loaders/TDSLoader.js +0 -2
- package/examples/jsm/loaders/TGALoader.js +0 -2
- package/examples/jsm/loaders/TTFLoader.js +4 -4
- package/examples/jsm/loaders/USDLoader.js +100 -40
- package/examples/jsm/loaders/UltraHDRLoader.js +287 -162
- package/examples/jsm/loaders/VOXLoader.js +660 -117
- package/examples/jsm/loaders/VRMLLoader.js +79 -2
- package/examples/jsm/loaders/VTKLoader.js +42 -25
- package/examples/jsm/loaders/collada/ColladaComposer.js +3044 -0
- package/examples/jsm/loaders/collada/ColladaParser.js +1977 -0
- package/examples/jsm/loaders/lwo/IFFParser.js +1 -1
- package/examples/jsm/loaders/usd/USDAParser.js +450 -363
- package/examples/jsm/loaders/usd/USDCParser.js +1867 -6
- package/examples/jsm/loaders/usd/USDComposer.js +4594 -0
- package/examples/jsm/materials/LDrawConditionalLineNodeMaterial.js +2 -2
- package/examples/jsm/materials/WoodNodeMaterial.js +533 -0
- package/examples/jsm/math/ColorSpaces.js +19 -1
- package/examples/jsm/math/ConvexHull.js +3 -3
- package/examples/jsm/math/ImprovedNoise.js +1 -1
- package/examples/jsm/math/Lut.js +2 -2
- package/examples/jsm/math/Octree.js +131 -1
- package/examples/jsm/math/SimplexNoise.js +1 -1
- package/examples/jsm/misc/GPUComputationRenderer.js +2 -0
- package/examples/jsm/misc/MD2CharacterComplex.js +1 -1
- package/examples/jsm/misc/ProgressiveLightMap.js +9 -3
- package/examples/jsm/misc/ProgressiveLightMapGPU.js +7 -1
- package/examples/jsm/misc/RollerCoaster.js +42 -4
- package/examples/jsm/misc/TubePainter.js +383 -40
- package/examples/jsm/misc/Volume.js +1 -2
- package/examples/jsm/misc/VolumeSlice.js +0 -1
- package/examples/jsm/modifiers/SimplifyModifier.js +1 -1
- package/examples/jsm/modifiers/TessellateModifier.js +1 -1
- package/examples/jsm/objects/LensflareMesh.js +1 -1
- package/examples/jsm/objects/Reflector.js +73 -25
- package/examples/jsm/objects/ReflectorForSSRPass.js +1 -0
- package/examples/jsm/objects/Sky.js +91 -7
- package/examples/jsm/objects/SkyMesh.js +151 -17
- package/examples/jsm/objects/Water.js +7 -6
- package/examples/jsm/objects/Water2.js +5 -3
- package/examples/jsm/objects/WaterMesh.js +11 -13
- package/examples/jsm/physics/AmmoPhysics.js +12 -7
- package/examples/jsm/physics/JoltPhysics.js +10 -6
- package/examples/jsm/physics/RapierPhysics.js +9 -5
- package/examples/jsm/postprocessing/EffectComposer.js +7 -5
- package/examples/jsm/postprocessing/GlitchPass.js +2 -2
- package/examples/jsm/postprocessing/OutlinePass.js +1 -1
- package/examples/jsm/postprocessing/OutputPass.js +9 -0
- package/examples/jsm/postprocessing/RenderPass.js +10 -0
- package/examples/jsm/postprocessing/RenderTransitionPass.js +1 -1
- package/examples/jsm/postprocessing/SSRPass.js +37 -8
- package/examples/jsm/postprocessing/UnrealBloomPass.js +56 -24
- package/examples/jsm/renderers/CSS2DRenderer.js +16 -5
- package/examples/jsm/renderers/CSS3DRenderer.js +8 -7
- package/examples/jsm/renderers/Projector.js +246 -28
- package/examples/jsm/renderers/SVGRenderer.js +175 -61
- package/examples/jsm/shaders/ACESFilmicToneMappingShader.js +1 -1
- package/examples/jsm/shaders/AfterimageShader.js +1 -1
- package/examples/jsm/shaders/BleachBypassShader.js +1 -1
- package/examples/jsm/shaders/BokehShader.js +1 -1
- package/examples/jsm/shaders/BokehShader2.js +1 -1
- package/examples/jsm/shaders/DotScreenShader.js +1 -1
- package/examples/jsm/shaders/FocusShader.js +1 -1
- package/examples/jsm/shaders/GTAOShader.js +21 -8
- package/examples/jsm/shaders/HalftoneShader.js +12 -1
- package/examples/jsm/shaders/KaleidoShader.js +1 -1
- package/examples/jsm/shaders/PoissonDenoiseShader.js +8 -4
- package/examples/jsm/shaders/SAOShader.js +17 -4
- package/examples/jsm/shaders/SSAOShader.js +11 -1
- package/examples/jsm/shaders/SSRShader.js +7 -6
- package/examples/jsm/shaders/SepiaShader.js +1 -1
- package/examples/jsm/shaders/SubsurfaceScatteringShader.js +1 -1
- package/examples/jsm/shaders/TriangleBlurShader.js +1 -1
- package/examples/jsm/shaders/UnpackDepthRGBAShader.js +3 -5
- package/examples/jsm/shaders/VignetteShader.js +1 -1
- package/examples/jsm/transpiler/AST.js +44 -0
- package/examples/jsm/transpiler/GLSLDecoder.js +85 -25
- package/examples/jsm/transpiler/ShaderToyDecoder.js +2 -0
- package/examples/jsm/transpiler/TSLEncoder.js +52 -10
- package/examples/jsm/transpiler/TranspilerUtils.js +3 -3
- package/examples/jsm/transpiler/WGSLEncoder.js +51 -0
- package/examples/jsm/tsl/WebGLNodesHandler.js +605 -0
- package/examples/jsm/tsl/display/AfterImageNode.js +36 -24
- package/examples/jsm/tsl/display/AnaglyphPassNode.js +458 -16
- package/examples/jsm/tsl/display/AnamorphicNode.js +40 -5
- package/examples/jsm/tsl/display/BilateralBlurNode.js +374 -0
- package/examples/jsm/tsl/display/BloomNode.js +23 -9
- package/examples/jsm/tsl/display/CRT.js +150 -0
- package/examples/jsm/tsl/display/ChromaticAberrationNode.js +5 -37
- package/examples/jsm/tsl/display/DenoiseNode.js +3 -1
- package/examples/jsm/tsl/display/DepthOfFieldNode.js +446 -90
- package/examples/jsm/tsl/display/DotScreenNode.js +1 -1
- package/examples/jsm/tsl/display/FSR1Node.js +477 -0
- package/examples/jsm/tsl/display/FXAANode.js +2 -2
- package/examples/jsm/tsl/display/GTAONode.js +59 -9
- package/examples/jsm/tsl/display/GaussianBlurNode.js +68 -35
- package/examples/jsm/tsl/display/GodraysNode.js +615 -0
- package/examples/jsm/tsl/display/LensflareNode.js +1 -1
- package/examples/jsm/tsl/display/Lut3DNode.js +1 -1
- package/examples/jsm/tsl/display/OutlineNode.js +81 -20
- package/examples/jsm/tsl/display/ParallaxBarrierPassNode.js +2 -2
- package/examples/jsm/tsl/display/PixelationPassNode.js +7 -6
- package/examples/jsm/tsl/display/RGBShiftNode.js +2 -2
- package/examples/jsm/tsl/display/RetroPassNode.js +263 -0
- package/examples/jsm/tsl/display/SMAANode.js +2 -2
- package/examples/jsm/tsl/display/SSAAPassNode.js +2 -2
- package/examples/jsm/tsl/display/SSGINode.js +638 -0
- package/examples/jsm/tsl/display/SSRNode.js +186 -69
- package/examples/jsm/tsl/display/SSSNode.js +490 -0
- package/examples/jsm/tsl/display/Shape.js +29 -0
- package/examples/jsm/tsl/display/SharpenNode.js +283 -0
- package/examples/jsm/tsl/display/SobelOperatorNode.js +2 -2
- package/examples/jsm/tsl/display/StereoCompositePassNode.js +8 -1
- package/examples/jsm/tsl/display/StereoPassNode.js +1 -2
- package/examples/jsm/tsl/display/TAAUNode.js +835 -0
- package/examples/jsm/tsl/display/TRAANode.js +381 -75
- package/examples/jsm/tsl/display/TransitionNode.js +1 -1
- package/examples/jsm/tsl/display/boxBlur.js +65 -0
- package/examples/jsm/tsl/display/depthAwareBlend.js +80 -0
- package/examples/jsm/tsl/display/hashBlur.js +16 -18
- package/examples/jsm/tsl/display/radialBlur.js +68 -0
- package/examples/jsm/tsl/lighting/DynamicLightsNode.js +300 -0
- package/examples/jsm/tsl/lighting/TiledLightsNode.js +21 -1
- package/examples/jsm/tsl/lighting/data/AmbientLightDataNode.js +61 -0
- package/examples/jsm/tsl/lighting/data/DirectionalLightDataNode.js +111 -0
- package/examples/jsm/tsl/lighting/data/HemisphereLightDataNode.js +99 -0
- package/examples/jsm/tsl/lighting/data/PointLightDataNode.js +134 -0
- package/examples/jsm/tsl/lighting/data/SpotLightDataNode.js +161 -0
- package/examples/jsm/tsl/math/Bayer.js +53 -3
- package/examples/jsm/utils/BufferGeometryUtils.js +3 -4
- package/examples/jsm/utils/ColorUtils.js +76 -0
- package/examples/jsm/utils/LDrawUtils.js +1 -1
- package/examples/jsm/utils/ShadowMapViewer.js +24 -10
- package/examples/jsm/utils/ShadowMapViewerGPU.js +13 -6
- package/examples/jsm/utils/SkeletonUtils.js +14 -8
- package/examples/jsm/utils/WebGPUTextureUtils.js +1 -1
- package/examples/jsm/webxr/OculusHandModel.js +1 -1
- package/examples/jsm/webxr/XRControllerModelFactory.js +1 -1
- package/examples/jsm/webxr/XRHandMeshModel.js +36 -10
- package/examples/jsm/webxr/XRHandModelFactory.js +4 -7
- package/package.json +27 -38
- package/src/Three.Core.js +7 -3
- package/src/Three.TSL.js +61 -16
- package/src/Three.WebGPU.Nodes.js +7 -0
- package/src/Three.WebGPU.js +11 -0
- package/src/Three.js +1 -0
- package/src/animation/AnimationAction.js +12 -2
- package/src/animation/AnimationClip.js +21 -5
- package/src/animation/AnimationMixer.js +9 -3
- package/src/animation/AnimationObjectGroup.js +2 -1
- package/src/animation/AnimationUtils.js +1 -12
- package/src/animation/KeyframeTrack.js +54 -14
- package/src/animation/PropertyBinding.js +12 -11
- package/src/animation/PropertyMixer.js +4 -4
- package/src/animation/tracks/BooleanKeyframeTrack.js +1 -1
- package/src/animation/tracks/ColorKeyframeTrack.js +1 -1
- package/src/animation/tracks/NumberKeyframeTrack.js +1 -1
- package/src/animation/tracks/QuaternionKeyframeTrack.js +1 -1
- package/src/animation/tracks/StringKeyframeTrack.js +1 -1
- package/src/animation/tracks/VectorKeyframeTrack.js +1 -1
- package/src/audio/Audio.js +11 -10
- package/src/audio/AudioContext.js +2 -2
- package/src/audio/AudioListener.js +5 -3
- package/src/audio/PositionalAudio.js +1 -1
- package/src/cameras/Camera.js +32 -2
- package/src/cameras/CubeCamera.js +20 -0
- package/src/cameras/OrthographicCamera.js +1 -1
- package/src/cameras/PerspectiveCamera.js +1 -1
- package/src/cameras/StereoCamera.js +2 -2
- package/src/constants.js +100 -7
- package/src/core/BufferAttribute.js +13 -1
- package/src/core/BufferGeometry.js +24 -12
- package/src/core/Clock.js +7 -0
- package/src/core/EventDispatcher.js +1 -1
- package/src/core/InterleavedBuffer.js +1 -1
- package/src/core/InterleavedBufferAttribute.js +3 -2
- package/src/core/Object3D.js +55 -6
- package/src/core/Raycaster.js +4 -3
- package/src/core/RenderTarget.js +14 -5
- package/src/extras/Controls.js +5 -4
- package/src/extras/DataUtils.js +2 -1
- package/src/extras/Earcut.js +6 -0
- package/src/extras/ImageUtils.js +2 -2
- package/src/extras/PMREMGenerator.js +259 -57
- package/src/extras/TextureUtils.js +6 -1
- package/src/extras/core/Curve.js +2 -1
- package/src/extras/core/Interpolations.js +7 -1
- package/src/extras/core/ShapePath.js +4 -4
- package/src/extras/curves/CatmullRomCurve3.js +3 -2
- package/src/extras/lib/earcut.js +8 -8
- package/src/geometries/BoxGeometry.js +1 -0
- package/src/geometries/CapsuleGeometry.js +1 -0
- package/src/geometries/CircleGeometry.js +1 -0
- package/src/geometries/ConeGeometry.js +1 -0
- package/src/geometries/CylinderGeometry.js +1 -0
- package/src/geometries/DodecahedronGeometry.js +1 -0
- package/src/geometries/ExtrudeGeometry.js +10 -8
- package/src/geometries/IcosahedronGeometry.js +1 -0
- package/src/geometries/LatheGeometry.js +1 -0
- package/src/geometries/OctahedronGeometry.js +1 -0
- package/src/geometries/PlaneGeometry.js +1 -0
- package/src/geometries/PolyhedronGeometry.js +1 -1
- package/src/geometries/RingGeometry.js +1 -0
- package/src/geometries/ShapeGeometry.js +1 -0
- package/src/geometries/SphereGeometry.js +1 -0
- package/src/geometries/TetrahedronGeometry.js +1 -0
- package/src/geometries/TorusGeometry.js +9 -3
- package/src/geometries/TorusKnotGeometry.js +1 -0
- package/src/geometries/TubeGeometry.js +1 -0
- package/src/helpers/CameraHelper.js +4 -1
- package/src/helpers/DirectionalLightHelper.js +4 -1
- package/src/helpers/HemisphereLightHelper.js +3 -0
- package/src/helpers/PointLightHelper.js +1 -25
- package/src/helpers/SpotLightHelper.js +3 -0
- package/src/lights/DirectionalLight.js +13 -0
- package/src/lights/HemisphereLight.js +10 -0
- package/src/lights/Light.js +1 -11
- package/src/lights/LightProbe.js +0 -15
- package/src/lights/LightShadow.js +15 -6
- package/src/lights/PointLight.js +15 -0
- package/src/lights/PointLightShadow.js +0 -86
- package/src/lights/SpotLight.js +22 -1
- package/src/lights/webgpu/IESSpotLight.js +2 -1
- package/src/lights/webgpu/ProjectorLight.js +1 -1
- package/src/loaders/AnimationLoader.js +2 -1
- package/src/loaders/AudioLoader.js +13 -2
- package/src/loaders/BufferGeometryLoader.js +2 -2
- package/src/loaders/Cache.js +30 -2
- package/src/loaders/DataTextureLoader.js +6 -4
- package/src/loaders/FileLoader.js +4 -4
- package/src/loaders/ImageBitmapLoader.js +17 -13
- package/src/loaders/ImageLoader.js +1 -1
- package/src/loaders/Loader.js +9 -3
- package/src/loaders/LoadingManager.js +25 -3
- package/src/loaders/MaterialLoader.js +6 -4
- package/src/loaders/ObjectLoader.js +57 -17
- package/src/loaders/TextureLoader.js +1 -1
- package/src/loaders/nodes/NodeLoader.js +5 -4
- package/src/loaders/nodes/NodeObjectLoader.js +18 -0
- package/src/materials/Material.js +18 -3
- package/src/materials/MeshBasicMaterial.js +1 -0
- package/src/materials/MeshDepthMaterial.js +1 -0
- package/src/materials/MeshDistanceMaterial.js +1 -1
- package/src/materials/MeshLambertMaterial.js +11 -1
- package/src/materials/MeshMatcapMaterial.js +22 -0
- package/src/materials/MeshNormalMaterial.js +1 -0
- package/src/materials/MeshPhongMaterial.js +11 -1
- package/src/materials/MeshPhysicalMaterial.js +2 -1
- package/src/materials/MeshStandardMaterial.js +8 -7
- package/src/materials/MeshToonMaterial.js +2 -1
- package/src/materials/PointsMaterial.js +1 -1
- package/src/materials/ShaderMaterial.js +22 -3
- package/src/materials/nodes/Line2NodeMaterial.js +36 -9
- package/src/materials/nodes/MeshPhysicalNodeMaterial.js +5 -2
- package/src/materials/nodes/MeshSSSNodeMaterial.js +1 -1
- package/src/materials/nodes/MeshStandardNodeMaterial.js +5 -4
- package/src/materials/nodes/NodeMaterial.js +95 -35
- package/src/materials/nodes/PointsNodeMaterial.js +81 -28
- package/src/materials/nodes/SpriteNodeMaterial.js +3 -15
- package/src/materials/nodes/manager/NodeMaterialObserver.js +194 -88
- package/src/math/Color.js +6 -5
- package/src/math/ColorManagement.js +9 -3
- package/src/math/Cylindrical.js +1 -1
- package/src/math/Euler.js +2 -1
- package/src/math/Line3.js +6 -5
- package/src/math/MathUtils.js +23 -21
- package/src/math/Matrix2.js +14 -10
- package/src/math/Matrix3.js +15 -11
- package/src/math/Matrix4.js +94 -81
- package/src/math/Plane.js +5 -4
- package/src/math/Quaternion.js +60 -84
- package/src/math/Sphere.js +1 -1
- package/src/math/Spherical.js +1 -1
- package/src/math/Triangle.js +1 -1
- package/src/math/Vector2.js +11 -7
- package/src/math/Vector3.js +15 -13
- package/src/math/Vector4.js +13 -9
- package/src/math/interpolants/BezierInterpolant.js +108 -0
- package/src/nodes/Nodes.js +86 -65
- package/src/nodes/TSL.js +11 -8
- package/src/nodes/accessors/Arrays.js +1 -1
- package/src/nodes/accessors/BatchNode.js +10 -10
- package/src/nodes/accessors/Bitangent.js +5 -5
- package/src/nodes/accessors/BufferAttributeNode.js +107 -15
- package/src/nodes/accessors/BufferNode.js +30 -3
- package/src/nodes/accessors/Camera.js +260 -13
- package/src/nodes/accessors/ClippingNode.js +10 -9
- package/src/nodes/accessors/CubeTextureNode.js +32 -6
- package/src/nodes/accessors/InstanceNode.js +164 -39
- package/src/nodes/accessors/Lights.js +10 -0
- package/src/nodes/accessors/MaterialNode.js +9 -1
- package/src/nodes/accessors/MaterialProperties.js +2 -5
- package/src/nodes/accessors/MaterialReferenceNode.js +1 -2
- package/src/nodes/accessors/ModelNode.js +1 -1
- package/src/nodes/accessors/Normal.js +16 -15
- package/src/nodes/accessors/Object3DNode.js +2 -2
- package/src/nodes/accessors/Position.js +51 -3
- package/src/nodes/accessors/ReferenceBaseNode.js +7 -7
- package/src/nodes/accessors/ReferenceNode.js +11 -10
- package/src/nodes/accessors/RendererReferenceNode.js +1 -2
- package/src/nodes/accessors/SceneProperties.js +47 -0
- package/src/nodes/accessors/SkinningNode.js +27 -26
- package/src/nodes/accessors/StorageBufferNode.js +14 -24
- package/src/nodes/accessors/StorageTextureNode.js +62 -9
- package/src/nodes/accessors/Tangent.js +4 -14
- package/src/nodes/accessors/Texture3DNode.js +41 -31
- package/src/nodes/accessors/TextureNode.js +193 -63
- package/src/nodes/accessors/UniformArrayNode.js +6 -4
- package/src/nodes/accessors/UserDataNode.js +1 -2
- package/src/nodes/accessors/VertexColorNode.js +1 -2
- package/src/nodes/code/FunctionCallNode.js +25 -5
- package/src/nodes/code/FunctionNode.js +25 -3
- package/src/nodes/core/ArrayNode.js +22 -2
- package/src/nodes/core/AssignNode.js +6 -5
- package/src/nodes/core/AttributeNode.js +5 -4
- package/src/nodes/core/BypassNode.js +1 -1
- package/src/nodes/core/ContextNode.js +133 -15
- package/src/nodes/core/IndexNode.js +4 -3
- package/src/nodes/core/InputNode.js +3 -2
- package/src/nodes/core/InspectorNode.js +128 -0
- package/src/nodes/core/{CacheNode.js → IsolateNode.js} +41 -8
- package/src/nodes/core/MRTNode.js +48 -2
- package/src/nodes/core/Node.js +264 -46
- package/src/nodes/core/NodeBuilder.js +453 -87
- package/src/nodes/core/NodeError.js +28 -0
- package/src/nodes/core/NodeFrame.js +31 -23
- package/src/nodes/core/NodeFunction.js +2 -1
- package/src/nodes/core/NodeParser.js +2 -1
- package/src/nodes/core/NodeUniform.js +1 -1
- package/src/nodes/core/NodeUtils.js +25 -97
- package/src/nodes/core/OutputStructNode.js +12 -10
- package/src/nodes/core/ParameterNode.js +34 -3
- package/src/nodes/core/PropertyNode.js +26 -3
- package/src/nodes/core/StackNode.js +99 -23
- package/src/nodes/core/StackTrace.js +139 -0
- package/src/nodes/core/StructNode.js +22 -8
- package/src/nodes/core/StructTypeNode.js +13 -18
- package/src/nodes/core/SubBuildNode.js +4 -4
- package/src/nodes/core/UniformGroupNode.js +36 -6
- package/src/nodes/core/UniformNode.js +37 -13
- package/src/nodes/core/VarNode.js +96 -34
- package/src/nodes/core/VaryingNode.js +2 -18
- package/src/nodes/display/BlendModes.js +0 -63
- package/src/nodes/display/BumpMapNode.js +1 -1
- package/src/nodes/display/ColorAdjustment.js +18 -1
- package/src/nodes/display/ColorSpaceNode.js +3 -3
- package/src/nodes/display/FrontFacingNode.js +4 -8
- package/src/nodes/display/NormalMapNode.js +41 -5
- package/src/nodes/display/PassNode.js +175 -25
- package/src/nodes/display/RenderOutputNode.js +35 -9
- package/src/nodes/display/ScreenNode.js +47 -15
- package/src/nodes/display/ToneMappingNode.js +32 -5
- package/src/nodes/display/ToonOutlinePassNode.js +10 -2
- package/src/nodes/display/ViewportDepthNode.js +52 -4
- package/src/nodes/display/ViewportDepthTextureNode.js +14 -6
- package/src/nodes/display/ViewportSharedTextureNode.js +12 -0
- package/src/nodes/display/ViewportTextureNode.js +72 -14
- package/src/nodes/fog/Fog.js +18 -34
- package/src/nodes/functions/BSDF/BRDF_GGX_Multiscatter.js +52 -0
- package/src/nodes/functions/BSDF/DFGLUT.js +56 -0
- package/src/nodes/functions/BSDF/EnvironmentBRDF.js +2 -2
- package/src/nodes/functions/BSDF/V_GGX_SmithCorrelated_Anisotropic.js +2 -2
- package/src/nodes/functions/BasicLightingModel.js +2 -1
- package/src/nodes/functions/PhysicalLightingModel.js +128 -46
- package/src/nodes/functions/VolumetricLightingModel.js +5 -5
- package/src/nodes/geometry/RangeNode.js +44 -6
- package/src/nodes/gpgpu/AtomicFunctionNode.js +1 -1
- package/src/nodes/gpgpu/BarrierNode.js +9 -0
- package/src/nodes/gpgpu/ComputeBuiltinNode.js +4 -4
- package/src/nodes/gpgpu/ComputeNode.js +76 -38
- package/src/nodes/gpgpu/SubgroupFunctionNode.js +455 -0
- package/src/nodes/gpgpu/WorkgroupInfoNode.js +5 -4
- package/src/nodes/lighting/AnalyticLightNode.js +53 -0
- package/src/nodes/lighting/EnvironmentNode.js +34 -9
- package/src/nodes/lighting/LightsNode.js +10 -32
- package/src/nodes/lighting/PointShadowNode.js +167 -148
- package/src/nodes/lighting/ShadowFilterNode.js +55 -65
- package/src/nodes/lighting/ShadowNode.js +189 -44
- package/src/nodes/math/BitcastNode.js +156 -0
- package/src/nodes/math/BitcountNode.js +433 -0
- package/src/nodes/math/ConditionalNode.js +25 -8
- package/src/nodes/math/MathNode.js +98 -57
- package/src/nodes/math/OperatorNode.js +8 -5
- package/src/nodes/math/PackFloatNode.js +98 -0
- package/src/nodes/math/UnpackFloatNode.js +96 -0
- package/src/nodes/pmrem/PMREMNode.js +1 -1
- package/src/nodes/pmrem/PMREMUtils.js +111 -2
- package/src/nodes/shapes/Shapes.js +1 -1
- package/src/nodes/tsl/TSLBase.js +6 -3
- package/src/nodes/tsl/TSLCore.js +488 -166
- package/src/nodes/utils/ArrayElementNode.js +14 -1
- package/src/nodes/utils/ConvertNode.js +1 -1
- package/src/nodes/utils/DebugNode.js +14 -13
- package/src/nodes/utils/EventNode.js +67 -2
- package/src/nodes/utils/FlipNode.js +1 -1
- package/src/nodes/utils/FunctionOverloadingNode.js +37 -19
- package/src/nodes/utils/JoinNode.js +7 -4
- package/src/nodes/utils/LoopNode.js +20 -24
- package/src/nodes/utils/MemberNode.js +60 -8
- package/src/nodes/utils/Packing.js +13 -1
- package/src/nodes/utils/PostProcessingUtils.js +60 -1
- package/src/nodes/utils/RTTNode.js +14 -4
- package/src/nodes/utils/ReflectorNode.js +61 -11
- package/src/nodes/utils/Remap.js +48 -0
- package/src/nodes/utils/RotateNode.js +1 -1
- package/src/nodes/utils/SampleNode.js +12 -2
- package/src/nodes/utils/SetNode.js +1 -1
- package/src/nodes/utils/SplitNode.js +12 -1
- package/src/nodes/utils/SpriteSheetUV.js +35 -0
- package/src/nodes/utils/Timer.js +0 -47
- package/src/nodes/utils/UVUtils.js +28 -0
- package/src/objects/BatchedMesh.js +46 -18
- package/src/objects/InstancedMesh.js +30 -3
- package/src/objects/LOD.js +1 -1
- package/src/objects/Line.js +3 -2
- package/src/objects/LineSegments.js +2 -1
- package/src/objects/Mesh.js +1 -1
- package/src/objects/Points.js +1 -1
- package/src/objects/Skeleton.js +12 -2
- package/src/objects/SkinnedMesh.js +29 -10
- package/src/objects/Sprite.js +4 -3
- package/src/renderers/WebGLRenderer.js +372 -179
- package/src/renderers/common/Animation.js +16 -4
- package/src/renderers/common/Attributes.js +16 -2
- package/src/renderers/common/Backend.js +137 -35
- package/src/renderers/common/Background.js +28 -14
- package/src/renderers/common/BindGroup.js +1 -16
- package/src/renderers/common/Binding.js +11 -0
- package/src/renderers/common/Bindings.js +83 -12
- package/src/renderers/common/BlendMode.js +143 -0
- package/src/renderers/common/Buffer.js +40 -0
- package/src/renderers/common/BundleGroup.js +1 -1
- package/src/renderers/common/CanvasTarget.js +341 -0
- package/src/renderers/common/ChainMap.js +30 -6
- package/src/renderers/common/ComputePipeline.js +1 -1
- package/src/renderers/common/CubeRenderTarget.js +51 -7
- package/src/renderers/common/DataMap.js +1 -1
- package/src/renderers/common/Geometries.js +55 -3
- package/src/renderers/common/Info.js +337 -6
- package/src/renderers/common/InspectorBase.js +151 -0
- package/src/renderers/common/Lighting.js +5 -21
- package/src/renderers/common/Pipelines.js +41 -8
- package/src/renderers/common/PostProcessing.js +9 -226
- package/src/renderers/common/QuadMesh.js +7 -1
- package/src/renderers/common/ReadbackBuffer.js +78 -0
- package/src/renderers/common/RenderBundle.js +3 -1
- package/src/renderers/common/RenderBundles.js +7 -3
- package/src/renderers/common/RenderContext.js +18 -2
- package/src/renderers/common/RenderContexts.js +33 -49
- package/src/renderers/common/RenderList.js +7 -3
- package/src/renderers/common/RenderLists.js +2 -1
- package/src/renderers/common/RenderObject.js +32 -6
- package/src/renderers/common/RenderObjectPipeline.js +40 -0
- package/src/renderers/common/RenderObjects.js +22 -6
- package/src/renderers/common/RenderPipeline.js +232 -17
- package/src/renderers/common/Renderer.js +927 -335
- package/src/renderers/common/RendererUtils.js +9 -0
- package/src/renderers/common/SampledTexture.js +9 -1
- package/src/renderers/common/Sampler.js +52 -14
- package/src/renderers/common/StorageBuffer.js +13 -1
- package/src/renderers/common/StorageTexture.js +9 -1
- package/src/renderers/common/Textures.js +208 -47
- package/src/renderers/common/TimestampQueryPool.js +70 -6
- package/src/renderers/common/Uniform.js +8 -0
- package/src/renderers/common/UniformsGroup.js +64 -2
- package/src/renderers/common/XRManager.js +79 -51
- package/src/renderers/common/extras/PMREMGenerator.js +176 -79
- package/src/renderers/common/nodes/NodeBuilderState.js +1 -1
- package/src/renderers/common/nodes/NodeLibrary.js +9 -7
- package/src/renderers/common/nodes/{Nodes.js → NodeManager.js} +260 -95
- package/src/renderers/common/nodes/NodeSampler.js +13 -1
- package/src/renderers/common/nodes/NodeStorageBuffer.js +13 -2
- package/src/renderers/common/nodes/NodeUniformBuffer.js +52 -0
- package/src/renderers/shaders/DFGLUTData.js +49 -0
- package/src/renderers/shaders/ShaderChunk/batching_pars_vertex.glsl.js +2 -2
- package/src/renderers/shaders/ShaderChunk/color_fragment.glsl.js +1 -5
- package/src/renderers/shaders/ShaderChunk/color_pars_fragment.glsl.js +1 -5
- package/src/renderers/shaders/ShaderChunk/color_pars_vertex.glsl.js +1 -5
- package/src/renderers/shaders/ShaderChunk/color_vertex.glsl.js +8 -10
- package/src/renderers/shaders/ShaderChunk/common.glsl.js +0 -12
- package/src/renderers/shaders/ShaderChunk/envmap_common_pars_fragment.glsl.js +1 -2
- package/src/renderers/shaders/ShaderChunk/envmap_fragment.glsl.js +8 -12
- package/src/renderers/shaders/ShaderChunk/envmap_physical_pars_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/lightprobes_pars_fragment.glsl.js +80 -0
- package/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js +13 -2
- package/src/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js +6 -0
- package/src/renderers/shaders/ShaderChunk/lights_fragment_maps.glsl.js +6 -2
- package/src/renderers/shaders/ShaderChunk/lights_pars_begin.glsl.js +2 -0
- package/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js +8 -4
- package/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js +152 -59
- package/src/renderers/shaders/ShaderChunk/logdepthbuf_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/logdepthbuf_pars_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/logdepthbuf_pars_vertex.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/logdepthbuf_vertex.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/normal_fragment_maps.glsl.js +7 -0
- package/src/renderers/shaders/ShaderChunk/packing.glsl.js +20 -4
- package/src/renderers/shaders/ShaderChunk/premultiplied_alpha_fragment.glsl.js +0 -1
- package/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js +221 -190
- package/src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js +12 -2
- package/src/renderers/shaders/ShaderChunk/shadowmask_pars_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderChunk.js +5 -3
- package/src/renderers/shaders/ShaderLib/backgroundCube.glsl.js +1 -2
- package/src/renderers/shaders/ShaderLib/depth.glsl.js +4 -1
- package/src/renderers/shaders/ShaderLib/{distanceRGBA.glsl.js → distance.glsl.js} +1 -2
- package/src/renderers/shaders/ShaderLib/meshlambert.glsl.js +2 -1
- package/src/renderers/shaders/ShaderLib/meshnormal.glsl.js +1 -2
- package/src/renderers/shaders/ShaderLib/meshphong.glsl.js +2 -1
- package/src/renderers/shaders/ShaderLib/meshphysical.glsl.js +4 -9
- package/src/renderers/shaders/ShaderLib/meshtoon.glsl.js +0 -1
- package/src/renderers/shaders/ShaderLib/shadow.glsl.js +1 -1
- package/src/renderers/shaders/ShaderLib/vsm.glsl.js +4 -6
- package/src/renderers/shaders/ShaderLib.js +7 -6
- package/src/renderers/shaders/UniformsLib.js +8 -5
- package/src/renderers/shaders/UniformsUtils.js +52 -9
- package/src/renderers/webgl/WebGLAnimation.js +2 -1
- package/src/renderers/webgl/WebGLBackground.js +15 -15
- package/src/renderers/webgl/WebGLBindingStates.js +99 -27
- package/src/renderers/webgl/WebGLBufferRenderer.js +0 -32
- package/src/renderers/webgl/WebGLCapabilities.js +11 -5
- package/src/renderers/webgl/WebGLEnvironments.js +228 -0
- package/src/renderers/webgl/WebGLExtensions.js +2 -25
- package/src/renderers/webgl/WebGLGeometries.js +10 -7
- package/src/renderers/webgl/WebGLIndexedBufferRenderer.js +0 -32
- package/src/renderers/webgl/WebGLInfo.js +3 -1
- package/src/renderers/webgl/WebGLLights.js +18 -1
- package/src/renderers/webgl/WebGLMaterials.js +24 -13
- package/src/renderers/webgl/WebGLObjects.js +3 -1
- package/src/renderers/webgl/WebGLOutput.js +270 -0
- package/src/renderers/webgl/WebGLProgram.js +63 -122
- package/src/renderers/webgl/WebGLPrograms.js +65 -52
- package/src/renderers/webgl/WebGLRenderLists.js +15 -0
- package/src/renderers/webgl/WebGLRenderStates.js +13 -2
- package/src/renderers/webgl/WebGLShadowMap.js +191 -26
- package/src/renderers/webgl/WebGLState.js +79 -40
- package/src/renderers/webgl/WebGLTextures.js +234 -68
- package/src/renderers/webgl/WebGLUniforms.js +40 -3
- package/src/renderers/webgl/WebGLUniformsGroups.js +24 -3
- package/src/renderers/webgl/WebGLUtils.js +8 -3
- package/src/renderers/webgl-fallback/WebGLBackend.js +438 -235
- package/src/renderers/webgl-fallback/WebGLBufferRenderer.js +0 -41
- package/src/renderers/webgl-fallback/nodes/GLSLNodeBuilder.js +339 -84
- package/src/renderers/webgl-fallback/utils/WebGLAttributeUtils.js +53 -19
- package/src/renderers/webgl-fallback/utils/WebGLCapabilities.js +25 -0
- package/src/renderers/webgl-fallback/utils/WebGLConstants.js +2 -3
- package/src/renderers/webgl-fallback/utils/WebGLState.js +229 -11
- package/src/renderers/webgl-fallback/utils/WebGLTextureUtils.js +237 -72
- package/src/renderers/webgl-fallback/utils/WebGLTimestampQueryPool.js +56 -27
- package/src/renderers/webgl-fallback/utils/WebGLUtils.js +8 -3
- package/src/renderers/webgpu/WebGPUBackend.js +403 -253
- package/src/renderers/webgpu/WebGPURenderer.Nodes.js +2 -1
- package/src/renderers/webgpu/WebGPURenderer.js +5 -3
- package/src/renderers/webgpu/nodes/WGSLNodeBuilder.js +491 -123
- package/src/renderers/webgpu/utils/WebGPUAttributeUtils.js +108 -34
- package/src/renderers/webgpu/utils/WebGPUBindingUtils.js +360 -201
- package/src/renderers/webgpu/utils/WebGPUCapabilities.js +48 -0
- package/src/renderers/webgpu/utils/WebGPUConstants.js +17 -2
- package/src/renderers/webgpu/utils/WebGPUPipelineUtils.js +111 -54
- package/src/renderers/webgpu/utils/WebGPUTexturePassUtils.js +155 -205
- package/src/renderers/webgpu/utils/WebGPUTextureUtils.js +407 -149
- package/src/renderers/webgpu/utils/WebGPUTimestampQueryPool.js +36 -13
- package/src/renderers/webgpu/utils/WebGPUUtils.js +55 -13
- package/src/renderers/webxr/WebXRController.js +12 -0
- package/src/renderers/webxr/WebXRManager.js +45 -29
- package/src/textures/CubeDepthTexture.js +76 -0
- package/src/textures/ExternalTexture.js +15 -4
- package/src/textures/HTMLTexture.js +74 -0
- package/src/textures/Source.js +5 -4
- package/src/textures/Texture.js +19 -7
- package/src/textures/VideoTexture.js +2 -3
- package/src/utils.js +344 -3
- package/examples/jsm/loaders/RGBMLoader.js +0 -1148
- package/examples/jsm/materials/MeshGouraudMaterial.js +0 -434
- package/examples/jsm/materials/MeshPostProcessingMaterial.js +0 -167
- package/examples/jsm/shaders/GodRaysShader.js +0 -333
- package/src/nodes/accessors/SceneNode.js +0 -144
- package/src/nodes/code/ScriptableNode.js +0 -726
- package/src/nodes/code/ScriptableValueNode.js +0 -253
- package/src/nodes/display/PosterizeNode.js +0 -65
- package/src/nodes/functions/BSDF/DFGApprox.js +0 -30
- package/src/nodes/utils/RemapNode.js +0 -125
- package/src/nodes/utils/SpriteSheetUVNode.js +0 -90
- package/src/renderers/webgl/WebGLCubeMaps.js +0 -99
- package/src/renderers/webgl/WebGLCubeUVMaps.js +0 -134
package/src/Three.TSL.js
CHANGED
|
@@ -7,7 +7,7 @@ export const BasicShadowFilter = TSL.BasicShadowFilter;
|
|
|
7
7
|
export const Break = TSL.Break;
|
|
8
8
|
export const Const = TSL.Const;
|
|
9
9
|
export const Continue = TSL.Continue;
|
|
10
|
-
export const
|
|
10
|
+
export const DFGLUT = TSL.DFGLUT;
|
|
11
11
|
export const D_GGX = TSL.D_GGX;
|
|
12
12
|
export const Discard = TSL.Discard;
|
|
13
13
|
export const EPSILON = TSL.EPSILON;
|
|
@@ -24,10 +24,11 @@ export const PCFShadowFilter = TSL.PCFShadowFilter;
|
|
|
24
24
|
export const PCFSoftShadowFilter = TSL.PCFSoftShadowFilter;
|
|
25
25
|
export const PI = TSL.PI;
|
|
26
26
|
export const PI2 = TSL.PI2;
|
|
27
|
+
export const TWO_PI = TSL.TWO_PI;
|
|
28
|
+
export const HALF_PI = TSL.HALF_PI;
|
|
27
29
|
export const PointShadowFilter = TSL.PointShadowFilter;
|
|
28
30
|
export const Return = TSL.Return;
|
|
29
31
|
export const Schlick_to_F0 = TSL.Schlick_to_F0;
|
|
30
|
-
export const ScriptableNodeResources = TSL.ScriptableNodeResources;
|
|
31
32
|
export const ShaderNode = TSL.ShaderNode;
|
|
32
33
|
export const Stack = TSL.Stack;
|
|
33
34
|
export const Switch = TSL.Switch;
|
|
@@ -39,6 +40,7 @@ export const VarIntent = TSL.VarIntent;
|
|
|
39
40
|
export const abs = TSL.abs;
|
|
40
41
|
export const acesFilmicToneMapping = TSL.acesFilmicToneMapping;
|
|
41
42
|
export const acos = TSL.acos;
|
|
43
|
+
export const acosh = TSL.acosh;
|
|
42
44
|
export const add = TSL.add;
|
|
43
45
|
export const addMethodChaining = TSL.addMethodChaining;
|
|
44
46
|
export const addNodeElement = TSL.addNodeElement;
|
|
@@ -54,9 +56,10 @@ export const append = TSL.append;
|
|
|
54
56
|
export const array = TSL.array;
|
|
55
57
|
export const arrayBuffer = TSL.arrayBuffer;
|
|
56
58
|
export const asin = TSL.asin;
|
|
59
|
+
export const asinh = TSL.asinh;
|
|
57
60
|
export const assign = TSL.assign;
|
|
58
61
|
export const atan = TSL.atan;
|
|
59
|
-
export const
|
|
62
|
+
export const atanh = TSL.atanh;
|
|
60
63
|
export const atomicAdd = TSL.atomicAdd;
|
|
61
64
|
export const atomicAnd = TSL.atomicAnd;
|
|
62
65
|
export const atomicFunc = TSL.atomicFunc;
|
|
@@ -96,7 +99,9 @@ export const bool = TSL.bool;
|
|
|
96
99
|
export const buffer = TSL.buffer;
|
|
97
100
|
export const bufferAttribute = TSL.bufferAttribute;
|
|
98
101
|
export const bumpMap = TSL.bumpMap;
|
|
99
|
-
export const
|
|
102
|
+
export const builtin = TSL.builtin;
|
|
103
|
+
export const builtinAOContext = TSL.builtinAOContext;
|
|
104
|
+
export const builtinShadowContext = TSL.builtinShadowContext;
|
|
100
105
|
export const bvec2 = TSL.bvec2;
|
|
101
106
|
export const bvec3 = TSL.bvec3;
|
|
102
107
|
export const bvec4 = TSL.bvec4;
|
|
@@ -111,6 +116,7 @@ export const cameraPosition = TSL.cameraPosition;
|
|
|
111
116
|
export const cameraProjectionMatrix = TSL.cameraProjectionMatrix;
|
|
112
117
|
export const cameraProjectionMatrixInverse = TSL.cameraProjectionMatrixInverse;
|
|
113
118
|
export const cameraViewMatrix = TSL.cameraViewMatrix;
|
|
119
|
+
export const cameraViewport = TSL.cameraViewport;
|
|
114
120
|
export const cameraWorldMatrix = TSL.cameraWorldMatrix;
|
|
115
121
|
export const cbrt = TSL.cbrt;
|
|
116
122
|
export const cdl = TSL.cdl;
|
|
@@ -121,6 +127,7 @@ export const clamp = TSL.clamp;
|
|
|
121
127
|
export const clearcoat = TSL.clearcoat;
|
|
122
128
|
export const clearcoatNormalView = TSL.clearcoatNormalView;
|
|
123
129
|
export const clearcoatRoughness = TSL.clearcoatRoughness;
|
|
130
|
+
export const clipSpace = TSL.clipSpace;
|
|
124
131
|
export const code = TSL.code;
|
|
125
132
|
export const color = TSL.color;
|
|
126
133
|
export const colorSpaceToWorking = TSL.colorSpaceToWorking;
|
|
@@ -132,11 +139,14 @@ export const context = TSL.context;
|
|
|
132
139
|
export const convert = TSL.convert;
|
|
133
140
|
export const convertColorSpace = TSL.convertColorSpace;
|
|
134
141
|
export const convertToTexture = TSL.convertToTexture;
|
|
142
|
+
export const countLeadingZeros = TSL.countLeadingZeros;
|
|
143
|
+
export const countOneBits = TSL.countOneBits;
|
|
144
|
+
export const countTrailingZeros = TSL.countTrailingZeros;
|
|
135
145
|
export const cos = TSL.cos;
|
|
146
|
+
export const cosh = TSL.cosh;
|
|
136
147
|
export const cross = TSL.cross;
|
|
137
148
|
export const cubeTexture = TSL.cubeTexture;
|
|
138
149
|
export const cubeTextureBase = TSL.cubeTextureBase;
|
|
139
|
-
export const cubeToUV = TSL.cubeToUV;
|
|
140
150
|
export const dFdx = TSL.dFdx;
|
|
141
151
|
export const dFdy = TSL.dFdy;
|
|
142
152
|
export const dashSize = TSL.dashSize;
|
|
@@ -161,22 +171,23 @@ export const directionToFaceDirection = TSL.directionToFaceDirection;
|
|
|
161
171
|
export const dispersion = TSL.dispersion;
|
|
162
172
|
export const distance = TSL.distance;
|
|
163
173
|
export const div = TSL.div;
|
|
164
|
-
export const dodge = TSL.dodge;
|
|
165
174
|
export const dot = TSL.dot;
|
|
166
175
|
export const drawIndex = TSL.drawIndex;
|
|
167
176
|
export const dynamicBufferAttribute = TSL.dynamicBufferAttribute;
|
|
168
177
|
export const element = TSL.element;
|
|
169
178
|
export const emissive = TSL.emissive;
|
|
170
179
|
export const equal = TSL.equal;
|
|
171
|
-
export const equals = TSL.equals;
|
|
172
180
|
export const equirectUV = TSL.equirectUV;
|
|
173
181
|
export const exp = TSL.exp;
|
|
174
182
|
export const exp2 = TSL.exp2;
|
|
183
|
+
export const exponentialHeightFogFactor = TSL.exponentialHeightFogFactor;
|
|
175
184
|
export const expression = TSL.expression;
|
|
176
185
|
export const faceDirection = TSL.faceDirection;
|
|
177
186
|
export const faceForward = TSL.faceForward;
|
|
178
187
|
export const faceforward = TSL.faceforward;
|
|
179
188
|
export const float = TSL.float;
|
|
189
|
+
export const floatBitsToInt = TSL.floatBitsToInt;
|
|
190
|
+
export const floatBitsToUint = TSL.floatBitsToUint;
|
|
180
191
|
export const floor = TSL.floor;
|
|
181
192
|
export const fog = TSL.fog;
|
|
182
193
|
export const fract = TSL.fract;
|
|
@@ -192,6 +203,8 @@ export const getDirection = TSL.getDirection;
|
|
|
192
203
|
export const getDistanceAttenuation = TSL.getDistanceAttenuation;
|
|
193
204
|
export const getGeometryRoughness = TSL.getGeometryRoughness;
|
|
194
205
|
export const getNormalFromDepth = TSL.getNormalFromDepth;
|
|
206
|
+
export const interleavedGradientNoise = TSL.interleavedGradientNoise;
|
|
207
|
+
export const vogelDiskSample = TSL.vogelDiskSample;
|
|
195
208
|
export const getParallaxCorrectNormal = TSL.getParallaxCorrectNormal;
|
|
196
209
|
export const getRoughness = TSL.getRoughness;
|
|
197
210
|
export const getScreenPosition = TSL.getScreenPosition;
|
|
@@ -219,6 +232,7 @@ export const instancedBufferAttribute = TSL.instancedBufferAttribute;
|
|
|
219
232
|
export const instancedDynamicBufferAttribute = TSL.instancedDynamicBufferAttribute;
|
|
220
233
|
export const instancedMesh = TSL.instancedMesh;
|
|
221
234
|
export const int = TSL.int;
|
|
235
|
+
export const intBitsToFloat = TSL.intBitsToFloat;
|
|
222
236
|
export const inverse = TSL.inverse;
|
|
223
237
|
export const inverseSqrt = TSL.inverseSqrt;
|
|
224
238
|
export const inversesqrt = TSL.inversesqrt;
|
|
@@ -391,6 +405,8 @@ export const objectRadius = TSL.objectRadius;
|
|
|
391
405
|
export const objectScale = TSL.objectScale;
|
|
392
406
|
export const objectViewPosition = TSL.objectViewPosition;
|
|
393
407
|
export const objectWorldMatrix = TSL.objectWorldMatrix;
|
|
408
|
+
export const OnBeforeObjectUpdate = TSL.OnBeforeObjectUpdate;
|
|
409
|
+
export const OnBeforeMaterialUpdate = TSL.OnBeforeMaterialUpdate;
|
|
394
410
|
export const OnObjectUpdate = TSL.OnObjectUpdate;
|
|
395
411
|
export const OnMaterialUpdate = TSL.OnMaterialUpdate;
|
|
396
412
|
export const oneMinus = TSL.oneMinus;
|
|
@@ -402,8 +418,10 @@ export const oscSquare = TSL.oscSquare;
|
|
|
402
418
|
export const oscTriangle = TSL.oscTriangle;
|
|
403
419
|
export const output = TSL.output;
|
|
404
420
|
export const outputStruct = TSL.outputStruct;
|
|
405
|
-
export const overlay = TSL.overlay;
|
|
406
421
|
export const overloadingFn = TSL.overloadingFn;
|
|
422
|
+
export const packHalf2x16 = TSL.packHalf2x16;
|
|
423
|
+
export const packSnorm2x16 = TSL.packSnorm2x16;
|
|
424
|
+
export const packUnorm2x16 = TSL.packUnorm2x16;
|
|
407
425
|
export const parabola = TSL.parabola;
|
|
408
426
|
export const parallaxDirection = TSL.parallaxDirection;
|
|
409
427
|
export const parallaxUV = TSL.parallaxUV;
|
|
@@ -451,6 +469,7 @@ export const remapClamp = TSL.remapClamp;
|
|
|
451
469
|
export const renderGroup = TSL.renderGroup;
|
|
452
470
|
export const renderOutput = TSL.renderOutput;
|
|
453
471
|
export const rendererReference = TSL.rendererReference;
|
|
472
|
+
export const replaceDefaultUV = TSL.replaceDefaultUV;
|
|
454
473
|
export const rotate = TSL.rotate;
|
|
455
474
|
export const rotateUV = TSL.rotateUV;
|
|
456
475
|
export const roughness = TSL.roughness;
|
|
@@ -465,10 +484,9 @@ export const saturate = TSL.saturate;
|
|
|
465
484
|
export const saturation = TSL.saturation;
|
|
466
485
|
export const screen = TSL.screen;
|
|
467
486
|
export const screenCoordinate = TSL.screenCoordinate;
|
|
487
|
+
export const screenDPR = TSL.screenDPR;
|
|
468
488
|
export const screenSize = TSL.screenSize;
|
|
469
489
|
export const screenUV = TSL.screenUV;
|
|
470
|
-
export const scriptable = TSL.scriptable;
|
|
471
|
-
export const scriptableValue = TSL.scriptableValue;
|
|
472
490
|
export const select = TSL.select;
|
|
473
491
|
export const setCurrentStack = TSL.setCurrentStack;
|
|
474
492
|
export const setName = TSL.setName;
|
|
@@ -484,6 +502,7 @@ export const shiftRight = TSL.shiftRight;
|
|
|
484
502
|
export const shininess = TSL.shininess;
|
|
485
503
|
export const sign = TSL.sign;
|
|
486
504
|
export const sin = TSL.sin;
|
|
505
|
+
export const sinh = TSL.sinh;
|
|
487
506
|
export const sinc = TSL.sinc;
|
|
488
507
|
export const skinning = TSL.skinning;
|
|
489
508
|
export const smoothstep = TSL.smoothstep;
|
|
@@ -499,20 +518,40 @@ export const step = TSL.step;
|
|
|
499
518
|
export const stepElement = TSL.stepElement;
|
|
500
519
|
export const storage = TSL.storage;
|
|
501
520
|
export const storageBarrier = TSL.storageBarrier;
|
|
502
|
-
export const storageObject = TSL.storageObject;
|
|
503
521
|
export const storageTexture = TSL.storageTexture;
|
|
504
522
|
export const string = TSL.string;
|
|
505
523
|
export const struct = TSL.struct;
|
|
506
524
|
export const sub = TSL.sub;
|
|
525
|
+
export const subgroupAdd = TSL.subgroupAdd;
|
|
526
|
+
export const subgroupAll = TSL.subgroupAll;
|
|
527
|
+
export const subgroupAnd = TSL.subgroupAnd;
|
|
528
|
+
export const subgroupAny = TSL.subgroupAny;
|
|
529
|
+
export const subgroupBallot = TSL.subgroupBallot;
|
|
530
|
+
export const subgroupBroadcast = TSL.subgroupBroadcast;
|
|
531
|
+
export const subgroupBroadcastFirst = TSL.subgroupBroadcastFirst;
|
|
507
532
|
export const subBuild = TSL.subBuild;
|
|
533
|
+
export const subgroupElect = TSL.subgroupElect;
|
|
534
|
+
export const subgroupExclusiveAdd = TSL.subgroupExclusiveAdd;
|
|
535
|
+
export const subgroupExclusiveMul = TSL.subgroupExclusiveMul;
|
|
536
|
+
export const subgroupInclusiveAdd = TSL.subgroupInclusiveAdd;
|
|
537
|
+
export const subgroupInclusiveMul = TSL.subgroupInclusiveMul;
|
|
508
538
|
export const subgroupIndex = TSL.subgroupIndex;
|
|
539
|
+
export const subgroupMax = TSL.subgroupMax;
|
|
540
|
+
export const subgroupMin = TSL.subgroupMin;
|
|
541
|
+
export const subgroupMul = TSL.subgroupMul;
|
|
542
|
+
export const subgroupOr = TSL.subgroupOr;
|
|
543
|
+
export const subgroupShuffle = TSL.subgroupShuffle;
|
|
544
|
+
export const subgroupShuffleDown = TSL.subgroupShuffleDown;
|
|
545
|
+
export const subgroupShuffleUp = TSL.subgroupShuffleUp;
|
|
546
|
+
export const subgroupShuffleXor = TSL.subgroupShuffleXor;
|
|
509
547
|
export const subgroupSize = TSL.subgroupSize;
|
|
548
|
+
export const subgroupXor = TSL.subgroupXor;
|
|
510
549
|
export const tan = TSL.tan;
|
|
550
|
+
export const tanh = TSL.tanh;
|
|
511
551
|
export const tangentGeometry = TSL.tangentGeometry;
|
|
512
552
|
export const tangentLocal = TSL.tangentLocal;
|
|
513
553
|
export const tangentView = TSL.tangentView;
|
|
514
554
|
export const tangentWorld = TSL.tangentWorld;
|
|
515
|
-
export const temp = TSL.temp;
|
|
516
555
|
export const texture = TSL.texture;
|
|
517
556
|
export const texture3D = TSL.texture3D;
|
|
518
557
|
export const textureBarrier = TSL.textureBarrier;
|
|
@@ -521,12 +560,10 @@ export const textureBicubicLevel = TSL.textureBicubicLevel;
|
|
|
521
560
|
export const textureCubeUV = TSL.textureCubeUV;
|
|
522
561
|
export const textureLoad = TSL.textureLoad;
|
|
523
562
|
export const textureSize = TSL.textureSize;
|
|
563
|
+
export const textureLevel = TSL.textureLevel;
|
|
524
564
|
export const textureStore = TSL.textureStore;
|
|
525
565
|
export const thickness = TSL.thickness;
|
|
526
566
|
export const time = TSL.time;
|
|
527
|
-
export const timerDelta = TSL.timerDelta;
|
|
528
|
-
export const timerGlobal = TSL.timerGlobal;
|
|
529
|
-
export const timerLocal = TSL.timerLocal;
|
|
530
567
|
export const toneMapping = TSL.toneMapping;
|
|
531
568
|
export const toneMappingExposure = TSL.toneMappingExposure;
|
|
532
569
|
export const toonOutlinePass = TSL.toonOutlinePass;
|
|
@@ -543,11 +580,16 @@ export const triplanarTexture = TSL.triplanarTexture;
|
|
|
543
580
|
export const triplanarTextures = TSL.triplanarTextures;
|
|
544
581
|
export const trunc = TSL.trunc;
|
|
545
582
|
export const uint = TSL.uint;
|
|
583
|
+
export const uintBitsToFloat = TSL.uintBitsToFloat;
|
|
546
584
|
export const uniform = TSL.uniform;
|
|
547
585
|
export const uniformArray = TSL.uniformArray;
|
|
548
586
|
export const uniformCubeTexture = TSL.uniformCubeTexture;
|
|
549
587
|
export const uniformGroup = TSL.uniformGroup;
|
|
588
|
+
export const uniformFlow = TSL.uniformFlow;
|
|
550
589
|
export const uniformTexture = TSL.uniformTexture;
|
|
590
|
+
export const unpackHalf2x16 = TSL.unpackHalf2x16;
|
|
591
|
+
export const unpackSnorm2x16 = TSL.unpackSnorm2x16;
|
|
592
|
+
export const unpackUnorm2x16 = TSL.unpackUnorm2x16;
|
|
551
593
|
export const unpremultiplyAlpha = TSL.unpremultiplyAlpha;
|
|
552
594
|
export const userData = TSL.userData;
|
|
553
595
|
export const uv = TSL.uv;
|
|
@@ -568,11 +610,14 @@ export const vibrance = TSL.vibrance;
|
|
|
568
610
|
export const viewZToLogarithmicDepth = TSL.viewZToLogarithmicDepth;
|
|
569
611
|
export const viewZToOrthographicDepth = TSL.viewZToOrthographicDepth;
|
|
570
612
|
export const viewZToPerspectiveDepth = TSL.viewZToPerspectiveDepth;
|
|
613
|
+
export const viewZToReversedOrthographicDepth = TSL.viewZToReversedOrthographicDepth;
|
|
614
|
+
export const viewZToReversedPerspectiveDepth = TSL.viewZToReversedPerspectiveDepth;
|
|
571
615
|
export const viewport = TSL.viewport;
|
|
572
616
|
export const viewportCoordinate = TSL.viewportCoordinate;
|
|
573
617
|
export const viewportDepthTexture = TSL.viewportDepthTexture;
|
|
574
618
|
export const viewportLinearDepth = TSL.viewportLinearDepth;
|
|
575
619
|
export const viewportMipTexture = TSL.viewportMipTexture;
|
|
620
|
+
export const viewportOpaqueMipTexture = TSL.viewportOpaqueMipTexture;
|
|
576
621
|
export const viewportResolution = TSL.viewportResolution;
|
|
577
622
|
export const viewportSafeUV = TSL.viewportSafeUV;
|
|
578
623
|
export const viewportSharedTexture = TSL.viewportSharedTexture;
|
|
@@ -598,5 +643,5 @@ for ( const key of Object.keys( THREE.TSL ) ) {
|
|
|
598
643
|
|
|
599
644
|
}
|
|
600
645
|
|
|
601
|
-
|
|
646
|
+
log( code );
|
|
602
647
|
//*/
|
|
@@ -2,11 +2,15 @@ export * from './Three.Core.js';
|
|
|
2
2
|
|
|
3
3
|
export * from './materials/nodes/NodeMaterials.js';
|
|
4
4
|
export { default as WebGPURenderer } from './renderers/webgpu/WebGPURenderer.Nodes.js';
|
|
5
|
+
export { default as WebGPUBackend } from './renderers/webgpu/WebGPUBackend.js';
|
|
6
|
+
export { default as WebGLBackend } from './renderers/webgl-fallback/WebGLBackend.js';
|
|
5
7
|
export { default as Lighting } from './renderers/common/Lighting.js';
|
|
6
8
|
export { default as BundleGroup } from './renderers/common/BundleGroup.js';
|
|
7
9
|
export { default as QuadMesh } from './renderers/common/QuadMesh.js';
|
|
8
10
|
export { default as PMREMGenerator } from './renderers/common/extras/PMREMGenerator.js';
|
|
11
|
+
export { default as RenderPipeline } from './renderers/common/RenderPipeline.js';
|
|
9
12
|
export { default as PostProcessing } from './renderers/common/PostProcessing.js';
|
|
13
|
+
export { default as ReadbackBuffer } from './renderers/common/ReadbackBuffer.js';
|
|
10
14
|
import * as RendererUtils from './renderers/common/RendererUtils.js';
|
|
11
15
|
export { RendererUtils };
|
|
12
16
|
export { default as StorageTexture } from './renderers/common/StorageTexture.js';
|
|
@@ -18,6 +22,9 @@ export { default as ProjectorLight } from './lights/webgpu/ProjectorLight.js';
|
|
|
18
22
|
export { default as NodeLoader } from './loaders/nodes/NodeLoader.js';
|
|
19
23
|
export { default as NodeObjectLoader } from './loaders/nodes/NodeObjectLoader.js';
|
|
20
24
|
export { default as NodeMaterialLoader } from './loaders/nodes/NodeMaterialLoader.js';
|
|
25
|
+
export { default as InspectorBase } from './renderers/common/InspectorBase.js';
|
|
26
|
+
export { default as CanvasTarget } from './renderers/common/CanvasTarget.js';
|
|
27
|
+
export { default as BlendMode } from './renderers/common/BlendMode.js';
|
|
21
28
|
export { ClippingGroup } from './objects/ClippingGroup.js';
|
|
22
29
|
export * from './nodes/Nodes.js';
|
|
23
30
|
import * as TSL from './nodes/TSL.js';
|
package/src/Three.WebGPU.js
CHANGED
|
@@ -2,13 +2,19 @@ export * from './Three.Core.js';
|
|
|
2
2
|
|
|
3
3
|
export * from './materials/nodes/NodeMaterials.js';
|
|
4
4
|
export { default as WebGPURenderer } from './renderers/webgpu/WebGPURenderer.js';
|
|
5
|
+
export { default as WebGPUBackend } from './renderers/webgpu/WebGPUBackend.js';
|
|
6
|
+
export { default as WebGLBackend } from './renderers/webgl-fallback/WebGLBackend.js';
|
|
7
|
+
export { default as WebGLCapabilities } from './renderers/webgl-fallback/utils/WebGLCapabilities.js';
|
|
5
8
|
export { default as Lighting } from './renderers/common/Lighting.js';
|
|
6
9
|
export { default as BundleGroup } from './renderers/common/BundleGroup.js';
|
|
7
10
|
export { default as QuadMesh } from './renderers/common/QuadMesh.js';
|
|
8
11
|
export { default as PMREMGenerator } from './renderers/common/extras/PMREMGenerator.js';
|
|
12
|
+
export { default as RenderPipeline } from './renderers/common/RenderPipeline.js';
|
|
9
13
|
export { default as PostProcessing } from './renderers/common/PostProcessing.js';
|
|
14
|
+
export { default as ReadbackBuffer } from './renderers/common/ReadbackBuffer.js';
|
|
10
15
|
import * as RendererUtils from './renderers/common/RendererUtils.js';
|
|
11
16
|
export { RendererUtils };
|
|
17
|
+
export { default as CubeRenderTarget } from './renderers/common/CubeRenderTarget.js';
|
|
12
18
|
export { default as StorageTexture } from './renderers/common/StorageTexture.js';
|
|
13
19
|
export { default as Storage3DTexture } from './renderers/common/Storage3DTexture.js';
|
|
14
20
|
export { default as StorageArrayTexture } from './renderers/common/StorageArrayTexture.js';
|
|
@@ -20,6 +26,11 @@ export { default as ProjectorLight } from './lights/webgpu/ProjectorLight.js';
|
|
|
20
26
|
export { default as NodeLoader } from './loaders/nodes/NodeLoader.js';
|
|
21
27
|
export { default as NodeObjectLoader } from './loaders/nodes/NodeObjectLoader.js';
|
|
22
28
|
export { default as NodeMaterialLoader } from './loaders/nodes/NodeMaterialLoader.js';
|
|
29
|
+
export { default as InspectorBase } from './renderers/common/InspectorBase.js';
|
|
30
|
+
export { default as CanvasTarget } from './renderers/common/CanvasTarget.js';
|
|
31
|
+
export { default as BlendMode } from './renderers/common/BlendMode.js';
|
|
32
|
+
export { default as GLSLNodeBuilder } from './renderers/webgl-fallback/nodes/GLSLNodeBuilder.js';
|
|
33
|
+
export { default as BasicNodeLibrary } from './renderers/webgpu/nodes/BasicNodeLibrary.js';
|
|
23
34
|
export { ClippingGroup } from './objects/ClippingGroup.js';
|
|
24
35
|
export * from './nodes/Nodes.js';
|
|
25
36
|
import * as TSL from './nodes/TSL.js';
|
package/src/Three.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './Three.Core.js';
|
|
2
2
|
|
|
3
3
|
export { WebGLRenderer } from './renderers/WebGLRenderer.js';
|
|
4
|
+
export { WebGLCubeRenderTarget } from './renderers/WebGLCubeRenderTarget.js';
|
|
4
5
|
export { ShaderLib } from './renderers/shaders/ShaderLib.js';
|
|
5
6
|
export { UniformsLib } from './renderers/shaders/UniformsLib.js';
|
|
6
7
|
export { UniformsUtils } from './renderers/shaders/UniformsUtils.js';
|
|
@@ -41,6 +41,15 @@ class AnimationAction {
|
|
|
41
41
|
|
|
42
42
|
const interpolant = tracks[ i ].createInterpolant( null );
|
|
43
43
|
interpolants[ i ] = interpolant;
|
|
44
|
+
|
|
45
|
+
// preserve interpolant settings (like tangent data from BezierInterpolant)
|
|
46
|
+
|
|
47
|
+
if ( interpolant.settings ) {
|
|
48
|
+
|
|
49
|
+
Object.assign( interpolantSettings, interpolant.settings );
|
|
50
|
+
|
|
51
|
+
}
|
|
52
|
+
|
|
44
53
|
interpolant.settings = interpolantSettings;
|
|
45
54
|
|
|
46
55
|
}
|
|
@@ -548,7 +557,7 @@ class AnimationAction {
|
|
|
548
557
|
|
|
549
558
|
}
|
|
550
559
|
|
|
551
|
-
//
|
|
560
|
+
// Internal
|
|
552
561
|
|
|
553
562
|
_update( time, deltaTime, timeDirection, accuIndex ) {
|
|
554
563
|
|
|
@@ -847,6 +856,7 @@ class AnimationAction {
|
|
|
847
856
|
|
|
848
857
|
} else {
|
|
849
858
|
|
|
859
|
+
this._loopCount = loopCount;
|
|
850
860
|
this.time = time;
|
|
851
861
|
|
|
852
862
|
}
|
|
@@ -894,7 +904,7 @@ class AnimationAction {
|
|
|
894
904
|
|
|
895
905
|
} else {
|
|
896
906
|
|
|
897
|
-
settings.endingEnd
|
|
907
|
+
settings.endingEnd = WrapAroundEnding;
|
|
898
908
|
|
|
899
909
|
}
|
|
900
910
|
|
|
@@ -8,6 +8,7 @@ import { StringKeyframeTrack } from './tracks/StringKeyframeTrack.js';
|
|
|
8
8
|
import { VectorKeyframeTrack } from './tracks/VectorKeyframeTrack.js';
|
|
9
9
|
import { generateUUID } from '../math/MathUtils.js';
|
|
10
10
|
import { NormalAnimationBlendMode } from '../constants.js';
|
|
11
|
+
import { warn, error } from '../utils.js';
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* A reusable set of keyframe tracks which represent an animation.
|
|
@@ -67,6 +68,14 @@ class AnimationClip {
|
|
|
67
68
|
*/
|
|
68
69
|
this.uuid = generateUUID();
|
|
69
70
|
|
|
71
|
+
/**
|
|
72
|
+
* An object that can be used to store custom data about the animation clip.
|
|
73
|
+
* It should not hold references to functions as these will not be cloned.
|
|
74
|
+
*
|
|
75
|
+
* @type {Object}
|
|
76
|
+
*/
|
|
77
|
+
this.userData = {};
|
|
78
|
+
|
|
70
79
|
// this means it should figure out its duration by scanning the tracks
|
|
71
80
|
if ( this.duration < 0 ) {
|
|
72
81
|
|
|
@@ -98,6 +107,8 @@ class AnimationClip {
|
|
|
98
107
|
const clip = new this( json.name, json.duration, tracks, json.blendMode );
|
|
99
108
|
clip.uuid = json.uuid;
|
|
100
109
|
|
|
110
|
+
clip.userData = JSON.parse( json.userData || '{}' );
|
|
111
|
+
|
|
101
112
|
return clip;
|
|
102
113
|
|
|
103
114
|
}
|
|
@@ -120,7 +131,8 @@ class AnimationClip {
|
|
|
120
131
|
'duration': clip.duration,
|
|
121
132
|
'tracks': tracks,
|
|
122
133
|
'uuid': clip.uuid,
|
|
123
|
-
'blendMode': clip.blendMode
|
|
134
|
+
'blendMode': clip.blendMode,
|
|
135
|
+
'userData': JSON.stringify( clip.userData ),
|
|
124
136
|
|
|
125
137
|
};
|
|
126
138
|
|
|
@@ -289,16 +301,16 @@ class AnimationClip {
|
|
|
289
301
|
* @static
|
|
290
302
|
* @deprecated since r175.
|
|
291
303
|
* @param {Object} animation - A serialized animation clip as JSON.
|
|
292
|
-
* @param {Array<
|
|
304
|
+
* @param {Array<Bone>} bones - An array of bones.
|
|
293
305
|
* @return {?AnimationClip} The new animation clip.
|
|
294
306
|
*/
|
|
295
307
|
static parseAnimation( animation, bones ) {
|
|
296
308
|
|
|
297
|
-
|
|
309
|
+
warn( 'AnimationClip: parseAnimation() is deprecated and will be removed with r185' );
|
|
298
310
|
|
|
299
311
|
if ( ! animation ) {
|
|
300
312
|
|
|
301
|
-
|
|
313
|
+
error( 'AnimationClip: No animation in JSONLoader data.' );
|
|
302
314
|
return null;
|
|
303
315
|
|
|
304
316
|
}
|
|
@@ -515,7 +527,11 @@ class AnimationClip {
|
|
|
515
527
|
|
|
516
528
|
}
|
|
517
529
|
|
|
518
|
-
|
|
530
|
+
const clip = new this.constructor( this.name, this.duration, tracks, this.blendMode );
|
|
531
|
+
|
|
532
|
+
clip.userData = JSON.parse( JSON.stringify( this.userData ) );
|
|
533
|
+
|
|
534
|
+
return clip;
|
|
519
535
|
|
|
520
536
|
}
|
|
521
537
|
|
|
@@ -48,6 +48,12 @@ class AnimationMixer extends EventDispatcher {
|
|
|
48
48
|
*/
|
|
49
49
|
this.timeScale = 1.0;
|
|
50
50
|
|
|
51
|
+
if ( typeof __THREE_DEVTOOLS__ !== 'undefined' ) {
|
|
52
|
+
|
|
53
|
+
__THREE_DEVTOOLS__.dispatchEvent( new CustomEvent( 'observe', { detail: this } ) );
|
|
54
|
+
|
|
55
|
+
}
|
|
56
|
+
|
|
51
57
|
}
|
|
52
58
|
|
|
53
59
|
_bindAction( action, prototypeAction ) {
|
|
@@ -641,7 +647,7 @@ class AnimationMixer extends EventDispatcher {
|
|
|
641
647
|
/**
|
|
642
648
|
* Deactivates all previously scheduled actions on this mixer.
|
|
643
649
|
*
|
|
644
|
-
* @return {AnimationMixer} A reference to
|
|
650
|
+
* @return {AnimationMixer} A reference to this animation mixer.
|
|
645
651
|
*/
|
|
646
652
|
stopAllAction() {
|
|
647
653
|
|
|
@@ -665,7 +671,7 @@ class AnimationMixer extends EventDispatcher {
|
|
|
665
671
|
* time from {@link Clock} or {@link Timer}.
|
|
666
672
|
*
|
|
667
673
|
* @param {number} deltaTime - The delta time in seconds.
|
|
668
|
-
* @return {AnimationMixer} A reference to
|
|
674
|
+
* @return {AnimationMixer} A reference to this animation mixer.
|
|
669
675
|
*/
|
|
670
676
|
update( deltaTime ) {
|
|
671
677
|
|
|
@@ -711,7 +717,7 @@ class AnimationMixer extends EventDispatcher {
|
|
|
711
717
|
* input parameter will be scaled by {@link AnimationMixer#timeScale}
|
|
712
718
|
*
|
|
713
719
|
* @param {number} time - The time to set in seconds.
|
|
714
|
-
* @return {AnimationMixer} A reference to
|
|
720
|
+
* @return {AnimationMixer} A reference to this animation mixer.
|
|
715
721
|
*/
|
|
716
722
|
setTime( time ) {
|
|
717
723
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { PropertyBinding } from './PropertyBinding.js';
|
|
2
2
|
import { generateUUID } from '../math/MathUtils.js';
|
|
3
|
+
import { error } from '../utils.js';
|
|
3
4
|
|
|
4
5
|
/**
|
|
5
6
|
* A group of objects that receives a shared animation state.
|
|
@@ -175,7 +176,7 @@ class AnimationObjectGroup {
|
|
|
175
176
|
|
|
176
177
|
} else if ( objects[ index ] !== knownObject ) {
|
|
177
178
|
|
|
178
|
-
|
|
179
|
+
error( 'AnimationObjectGroup: Different objects with the same UUID ' +
|
|
179
180
|
'detected. Clean the caches or recreate your infrastructure when reloading scenes.' );
|
|
180
181
|
|
|
181
182
|
} // else the object is already where we want it to be
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Quaternion } from '../math/Quaternion.js';
|
|
2
2
|
import { AdditiveAnimationBlendMode } from '../constants.js';
|
|
3
|
+
import { isTypedArray } from '../utils.js';
|
|
3
4
|
|
|
4
5
|
/**
|
|
5
6
|
* Converts an array to a specific type.
|
|
@@ -22,18 +23,6 @@ function convertArray( array, type ) {
|
|
|
22
23
|
|
|
23
24
|
}
|
|
24
25
|
|
|
25
|
-
/**
|
|
26
|
-
* Returns `true` if the given object is a typed array.
|
|
27
|
-
*
|
|
28
|
-
* @param {any} object - The object to check.
|
|
29
|
-
* @return {boolean} Whether the given object is a typed array.
|
|
30
|
-
*/
|
|
31
|
-
function isTypedArray( object ) {
|
|
32
|
-
|
|
33
|
-
return ArrayBuffer.isView( object ) && ! ( object instanceof DataView );
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
|
|
37
26
|
/**
|
|
38
27
|
* Returns an array by which times and values can be sorted.
|
|
39
28
|
*
|