super-three 0.175.0 → 0.177.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/build/three.cjs +7631 -6743
- package/build/three.core.js +7496 -6758
- package/build/three.core.min.js +1 -1
- package/build/three.module.js +172 -22
- package/build/three.module.min.js +1 -1
- package/build/three.tsl.js +14 -6
- package/build/three.tsl.min.js +1 -1
- package/build/three.webgpu.js +3948 -1678
- package/build/three.webgpu.min.js +1 -1
- package/build/three.webgpu.nodes.js +3941 -1678
- package/build/three.webgpu.nodes.min.js +1 -1
- package/examples/jsm/Addons.js +0 -1
- package/examples/jsm/animation/AnimationClipCreator.js +1 -0
- package/examples/jsm/animation/CCDIKSolver.js +6 -3
- package/examples/jsm/capabilities/WebGL.js +1 -0
- package/examples/jsm/capabilities/WebGPU.js +1 -0
- package/examples/jsm/controls/ArcballControls.js +14 -3
- package/examples/jsm/controls/DragControls.js +1 -0
- package/examples/jsm/controls/FirstPersonControls.js +1 -0
- package/examples/jsm/controls/FlyControls.js +1 -0
- package/examples/jsm/controls/MapControls.js +1 -0
- package/examples/jsm/controls/OrbitControls.js +1 -0
- package/examples/jsm/controls/PointerLockControls.js +5 -3
- package/examples/jsm/controls/TrackballControls.js +1 -0
- package/examples/jsm/controls/TransformControls.js +1 -0
- package/examples/jsm/csm/CSM.js +2 -0
- package/examples/jsm/csm/CSMFrustum.js +2 -0
- package/examples/jsm/csm/CSMHelper.js +1 -0
- package/examples/jsm/csm/CSMShader.js +4 -1
- package/examples/jsm/csm/CSMShadowNode.js +18 -4
- package/examples/jsm/curves/CurveExtras.js +14 -0
- package/examples/jsm/curves/NURBSCurve.js +1 -0
- package/examples/jsm/curves/NURBSSurface.js +2 -0
- package/examples/jsm/curves/NURBSUtils.js +4 -1
- package/examples/jsm/curves/NURBSVolume.js +2 -0
- package/examples/jsm/effects/AnaglyphEffect.js +2 -0
- package/examples/jsm/effects/AsciiEffect.js +2 -0
- package/examples/jsm/effects/OutlineEffect.js +2 -0
- package/examples/jsm/effects/ParallaxBarrierEffect.js +2 -0
- package/examples/jsm/effects/StereoEffect.js +2 -0
- package/examples/jsm/environments/DebugEnvironment.js +1 -0
- package/examples/jsm/environments/RoomEnvironment.js +49 -35
- package/examples/jsm/exporters/DRACOExporter.js +4 -2
- package/examples/jsm/exporters/EXRExporter.js +2 -0
- package/examples/jsm/exporters/GLTFExporter.js +7 -4
- package/examples/jsm/exporters/KTX2Exporter.js +2 -0
- package/examples/jsm/exporters/OBJExporter.js +3 -1
- package/examples/jsm/exporters/PLYExporter.js +4 -2
- package/examples/jsm/exporters/STLExporter.js +2 -0
- package/examples/jsm/exporters/USDZExporter.js +12 -10
- package/examples/jsm/geometries/BoxLineGeometry.js +1 -0
- package/examples/jsm/geometries/ConvexGeometry.js +1 -0
- package/examples/jsm/geometries/DecalGeometry.js +1 -0
- package/examples/jsm/geometries/ParametricFunctions.js +4 -1
- package/examples/jsm/geometries/ParametricGeometry.js +1 -0
- package/examples/jsm/geometries/RoundedBoxGeometry.js +1 -0
- package/examples/jsm/geometries/TeapotGeometry.js +1 -0
- package/examples/jsm/geometries/TextGeometry.js +1 -0
- package/examples/jsm/helpers/LightProbeHelper.js +1 -0
- package/examples/jsm/helpers/LightProbeHelperGPU.js +1 -0
- package/examples/jsm/helpers/OctreeHelper.js +1 -0
- package/examples/jsm/helpers/PositionalAudioHelper.js +1 -0
- package/examples/jsm/helpers/RapierHelper.js +59 -0
- package/examples/jsm/helpers/RectAreaLightHelper.js +1 -0
- package/examples/jsm/helpers/TextureHelper.js +1 -0
- package/examples/jsm/helpers/TextureHelperGPU.js +5 -4
- package/examples/jsm/helpers/VertexNormalsHelper.js +1 -0
- package/examples/jsm/helpers/VertexTangentsHelper.js +1 -0
- package/examples/jsm/helpers/ViewHelper.js +1 -0
- package/examples/jsm/interactive/HTMLMesh.js +7 -0
- package/examples/jsm/interactive/InteractiveGroup.js +1 -0
- package/examples/jsm/interactive/SelectionBox.js +2 -0
- package/examples/jsm/interactive/SelectionHelper.js +2 -0
- package/examples/jsm/lighting/TiledLighting.js +1 -0
- package/examples/jsm/lights/LightProbeGenerator.js +1 -0
- package/examples/jsm/lights/RectAreaLightTexturesLib.js +1 -0
- package/examples/jsm/lights/RectAreaLightUniformsLib.js +1 -0
- package/examples/jsm/lines/Line2.js +1 -0
- package/examples/jsm/lines/LineGeometry.js +1 -0
- package/examples/jsm/lines/LineMaterial.js +4 -4
- package/examples/jsm/lines/LineSegments2.js +1 -0
- package/examples/jsm/lines/LineSegmentsGeometry.js +1 -0
- package/examples/jsm/lines/Wireframe.js +1 -0
- package/examples/jsm/lines/WireframeGeometry2.js +1 -0
- package/examples/jsm/lines/webgpu/Line2.js +1 -0
- package/examples/jsm/lines/webgpu/LineSegments2.js +3 -1
- package/examples/jsm/lines/webgpu/Wireframe.js +1 -0
- package/examples/jsm/loaders/3DMLoader.js +1 -0
- package/examples/jsm/loaders/3MFLoader.js +1 -0
- package/examples/jsm/loaders/AMFLoader.js +1 -0
- package/examples/jsm/loaders/BVHLoader.js +1 -0
- package/examples/jsm/loaders/ColladaLoader.js +5 -4
- package/examples/jsm/loaders/DDSLoader.js +1 -0
- package/examples/jsm/loaders/DRACOLoader.js +2 -1
- package/examples/jsm/loaders/EXRLoader.js +1 -0
- package/examples/jsm/loaders/FBXLoader.js +24 -22
- package/examples/jsm/loaders/FontLoader.js +1 -0
- package/examples/jsm/loaders/GCodeLoader.js +1 -0
- package/examples/jsm/loaders/GLTFLoader.js +10 -82
- package/examples/jsm/loaders/HDRCubeTextureLoader.js +1 -0
- package/examples/jsm/loaders/IESLoader.js +1 -0
- package/examples/jsm/loaders/KMZLoader.js +1 -0
- package/examples/jsm/loaders/KTX2Loader.js +67 -26
- package/examples/jsm/loaders/KTXLoader.js +1 -0
- package/examples/jsm/loaders/LDrawLoader.js +55 -3
- package/examples/jsm/loaders/LUT3dlLoader.js +1 -0
- package/examples/jsm/loaders/LUTCubeLoader.js +1 -0
- package/examples/jsm/loaders/LUTImageLoader.js +1 -0
- package/examples/jsm/loaders/LWOLoader.js +1 -13
- package/examples/jsm/loaders/LottieLoader.js +15 -0
- package/examples/jsm/loaders/MD2Loader.js +1 -0
- package/examples/jsm/loaders/MDDLoader.js +1 -0
- package/examples/jsm/loaders/MTLLoader.js +4 -3
- package/examples/jsm/loaders/MaterialXLoader.js +1 -0
- package/examples/jsm/loaders/NRRDLoader.js +1 -0
- package/examples/jsm/loaders/OBJLoader.js +1 -0
- package/examples/jsm/loaders/PCDLoader.js +122 -19
- package/examples/jsm/loaders/PDBLoader.js +1 -0
- package/examples/jsm/loaders/PLYLoader.js +1 -0
- package/examples/jsm/loaders/PVRLoader.js +1 -0
- package/examples/jsm/loaders/RGBELoader.js +1 -0
- package/examples/jsm/loaders/RGBMLoader.js +1 -0
- package/examples/jsm/loaders/STLLoader.js +1 -0
- package/examples/jsm/loaders/SVGLoader.js +1 -0
- package/examples/jsm/loaders/TDSLoader.js +1 -0
- package/examples/jsm/loaders/TGALoader.js +1 -0
- package/examples/jsm/loaders/TIFFLoader.js +1 -0
- package/examples/jsm/loaders/TTFLoader.js +1 -0
- package/examples/jsm/loaders/USDZLoader.js +1 -0
- package/examples/jsm/loaders/UltraHDRLoader.js +1 -0
- package/examples/jsm/loaders/VOXLoader.js +1 -0
- package/examples/jsm/loaders/VRMLLoader.js +3 -2
- package/examples/jsm/loaders/VTKLoader.js +1 -0
- package/examples/jsm/loaders/XYZLoader.js +1 -0
- package/examples/jsm/loaders/lwo/IFFParser.js +74 -74
- package/examples/jsm/materials/LDrawConditionalLineMaterial.js +1 -0
- package/examples/jsm/materials/LDrawConditionalLineNodeMaterial.js +1 -0
- package/examples/jsm/materials/MeshPostProcessingMaterial.js +1 -0
- package/examples/jsm/math/Capsule.js +2 -0
- package/examples/jsm/math/ColorConverter.js +1 -0
- package/examples/jsm/math/ConvexHull.js +2 -0
- package/examples/jsm/math/ImprovedNoise.js +19 -14
- package/examples/jsm/math/Lut.js +2 -0
- package/examples/jsm/math/MeshSurfaceSampler.js +2 -0
- package/examples/jsm/math/OBB.js +2 -0
- package/examples/jsm/math/Octree.js +20 -1
- package/examples/jsm/math/SimplexNoise.js +2 -0
- package/examples/jsm/misc/ConvexObjectBreaker.js +3 -1
- package/examples/jsm/misc/GPUComputationRenderer.js +2 -0
- package/examples/jsm/misc/Gyroscope.js +1 -0
- package/examples/jsm/misc/MD2Character.js +2 -0
- package/examples/jsm/misc/MD2CharacterComplex.js +5 -3
- package/examples/jsm/misc/MorphAnimMesh.js +1 -0
- package/examples/jsm/misc/MorphBlendMesh.js +1 -0
- package/examples/jsm/misc/ProgressiveLightMap.js +2 -0
- package/examples/jsm/misc/ProgressiveLightMapGPU.js +2 -0
- package/examples/jsm/misc/RollerCoaster.js +5 -0
- package/examples/jsm/misc/Timer.js +2 -0
- package/examples/jsm/misc/TubePainter.js +1 -0
- package/examples/jsm/misc/Volume.js +2 -0
- package/examples/jsm/misc/VolumeSlice.js +1 -0
- package/examples/jsm/modifiers/CurveModifier.js +3 -0
- package/examples/jsm/modifiers/CurveModifierGPU.js +2 -0
- package/examples/jsm/modifiers/EdgeSplitModifier.js +2 -0
- package/examples/jsm/modifiers/SimplifyModifier.js +2 -0
- package/examples/jsm/modifiers/TessellateModifier.js +2 -0
- package/examples/jsm/objects/GroundedSkybox.js +1 -0
- package/examples/jsm/objects/Lensflare.js +3 -0
- package/examples/jsm/objects/LensflareMesh.js +1 -0
- package/examples/jsm/objects/MarchingCubes.js +2 -0
- package/examples/jsm/objects/Reflector.js +1 -0
- package/examples/jsm/objects/ReflectorForSSRPass.js +1 -0
- package/examples/jsm/objects/Refractor.js +1 -0
- package/examples/jsm/objects/ShadowMesh.js +1 -0
- package/examples/jsm/objects/Sky.js +2 -1
- package/examples/jsm/objects/SkyMesh.js +20 -17
- package/examples/jsm/objects/Water.js +1 -0
- package/examples/jsm/objects/Water2.js +1 -0
- package/examples/jsm/objects/Water2Mesh.js +3 -1
- package/examples/jsm/objects/WaterMesh.js +2 -1
- package/examples/jsm/physics/AmmoPhysics.js +1 -0
- package/examples/jsm/physics/JoltPhysics.js +1 -0
- package/examples/jsm/physics/RapierPhysics.js +58 -1
- package/examples/jsm/postprocessing/AfterimagePass.js +20 -2
- package/examples/jsm/postprocessing/BloomPass.js +2 -1
- package/examples/jsm/postprocessing/BokehPass.js +2 -1
- package/examples/jsm/postprocessing/ClearPass.js +1 -0
- package/examples/jsm/postprocessing/CubeTexturePass.js +1 -0
- package/examples/jsm/postprocessing/DotScreenPass.js +1 -0
- package/examples/jsm/postprocessing/EffectComposer.js +5 -6
- package/examples/jsm/postprocessing/FXAAPass.js +40 -0
- package/examples/jsm/postprocessing/FilmPass.js +1 -0
- package/examples/jsm/postprocessing/GTAOPass.js +4 -3
- package/examples/jsm/postprocessing/GlitchPass.js +2 -1
- package/examples/jsm/postprocessing/HalftonePass.js +2 -1
- package/examples/jsm/postprocessing/LUTPass.js +1 -0
- package/examples/jsm/postprocessing/MaskPass.js +1 -0
- package/examples/jsm/postprocessing/OutlinePass.js +5 -2
- package/examples/jsm/postprocessing/OutputPass.js +1 -0
- package/examples/jsm/postprocessing/Pass.js +3 -1
- package/examples/jsm/postprocessing/RenderPass.js +1 -0
- package/examples/jsm/postprocessing/RenderPixelatedPass.js +2 -1
- package/examples/jsm/postprocessing/RenderTransitionPass.js +4 -3
- package/examples/jsm/postprocessing/SAOPass.js +3 -2
- package/examples/jsm/postprocessing/SMAAPass.js +3 -2
- package/examples/jsm/postprocessing/SSAARenderPass.js +2 -1
- package/examples/jsm/postprocessing/SSAOPass.js +2 -1
- package/examples/jsm/postprocessing/SSRPass.js +4 -3
- package/examples/jsm/postprocessing/SavePass.js +2 -1
- package/examples/jsm/postprocessing/ShaderPass.js +1 -0
- package/examples/jsm/postprocessing/TAARenderPass.js +1 -0
- package/examples/jsm/postprocessing/TexturePass.js +1 -0
- package/examples/jsm/postprocessing/UnrealBloomPass.js +2 -1
- package/examples/jsm/renderers/CSS2DRenderer.js +3 -0
- package/examples/jsm/renderers/CSS3DRenderer.js +4 -0
- package/examples/jsm/renderers/Projector.js +2 -0
- package/examples/jsm/renderers/SVGRenderer.js +3 -0
- package/examples/jsm/shaders/ACESFilmicToneMappingShader.js +4 -1
- package/examples/jsm/shaders/AfterimageShader.js +4 -1
- package/examples/jsm/shaders/BasicShader.js +4 -1
- package/examples/jsm/shaders/BleachBypassShader.js +4 -1
- package/examples/jsm/shaders/BlendShader.js +4 -1
- package/examples/jsm/shaders/BokehShader.js +4 -1
- package/examples/jsm/shaders/BokehShader2.js +4 -1
- package/examples/jsm/shaders/BrightnessContrastShader.js +4 -1
- package/examples/jsm/shaders/ColorCorrectionShader.js +4 -1
- package/examples/jsm/shaders/ColorifyShader.js +4 -1
- package/examples/jsm/shaders/ConvolutionShader.js +4 -1
- package/examples/jsm/shaders/CopyShader.js +4 -1
- package/examples/jsm/shaders/DOFMipMapShader.js +4 -1
- package/examples/jsm/shaders/DepthLimitedBlurShader.js +4 -1
- package/examples/jsm/shaders/DigitalGlitch.js +4 -1
- package/examples/jsm/shaders/DotScreenShader.js +4 -1
- package/examples/jsm/shaders/ExposureShader.js +4 -1
- package/examples/jsm/shaders/FXAAShader.js +4 -1
- package/examples/jsm/shaders/FilmShader.js +4 -1
- package/examples/jsm/shaders/FocusShader.js +4 -1
- package/examples/jsm/shaders/FreiChenShader.js +4 -1
- package/examples/jsm/shaders/GTAOShader.js +4 -1
- package/examples/jsm/shaders/GammaCorrectionShader.js +4 -1
- package/examples/jsm/shaders/GodRaysShader.js +4 -1
- package/examples/jsm/shaders/HalftoneShader.js +4 -1
- package/examples/jsm/shaders/HorizontalBlurShader.js +4 -1
- package/examples/jsm/shaders/HorizontalTiltShiftShader.js +4 -1
- package/examples/jsm/shaders/HueSaturationShader.js +4 -1
- package/examples/jsm/shaders/KaleidoShader.js +4 -1
- package/examples/jsm/shaders/LuminosityHighPassShader.js +4 -1
- package/examples/jsm/shaders/LuminosityShader.js +4 -1
- package/examples/jsm/shaders/MirrorShader.js +4 -1
- package/examples/jsm/shaders/NormalMapShader.js +4 -1
- package/examples/jsm/shaders/OutputShader.js +4 -1
- package/examples/jsm/shaders/PoissonDenoiseShader.js +4 -1
- package/examples/jsm/shaders/RGBShiftShader.js +4 -1
- package/examples/jsm/shaders/SAOShader.js +4 -1
- package/examples/jsm/shaders/SMAAShader.js +1 -0
- package/examples/jsm/shaders/SSAOShader.js +4 -1
- package/examples/jsm/shaders/SSRShader.js +1 -0
- package/examples/jsm/shaders/SepiaShader.js +4 -1
- package/examples/jsm/shaders/SobelOperatorShader.js +4 -1
- package/examples/jsm/shaders/SubsurfaceScatteringShader.js +4 -1
- package/examples/jsm/shaders/TechnicolorShader.js +4 -1
- package/examples/jsm/shaders/ToonShader.js +2 -1
- package/examples/jsm/shaders/TriangleBlurShader.js +4 -1
- package/examples/jsm/shaders/UnpackDepthRGBAShader.js +4 -1
- package/examples/jsm/shaders/VelocityShader.js +4 -1
- package/examples/jsm/shaders/VerticalBlurShader.js +4 -1
- package/examples/jsm/shaders/VerticalTiltShiftShader.js +4 -1
- package/examples/jsm/shaders/VignetteShader.js +4 -1
- package/examples/jsm/shaders/VolumeShader.js +5 -2
- package/examples/jsm/shaders/WaterRefractionShader.js +4 -1
- package/examples/jsm/textures/FlakesTexture.js +2 -0
- package/examples/jsm/transpiler/GLSLDecoder.js +1 -2
- package/examples/jsm/transpiler/TSLEncoder.js +52 -8
- package/examples/jsm/transpiler/Transpiler.js +2 -0
- package/examples/jsm/tsl/display/AfterImageNode.js +2 -3
- package/examples/jsm/tsl/display/AnaglyphPassNode.js +1 -0
- package/examples/jsm/tsl/display/AnamorphicNode.js +5 -4
- package/examples/jsm/tsl/display/BloomNode.js +1 -0
- package/examples/jsm/tsl/display/DenoiseNode.js +33 -33
- package/examples/jsm/tsl/display/DepthOfFieldNode.js +1 -0
- package/examples/jsm/tsl/display/DotScreenNode.js +1 -0
- package/examples/jsm/tsl/display/FXAANode.js +3 -2
- package/examples/jsm/tsl/display/FilmNode.js +1 -0
- package/examples/jsm/tsl/display/GTAONode.js +1 -0
- package/examples/jsm/tsl/display/GaussianBlurNode.js +2 -27
- package/examples/jsm/tsl/display/LensflareNode.js +1 -0
- package/examples/jsm/tsl/display/Lut3DNode.js +1 -0
- package/examples/jsm/tsl/display/OutlineNode.js +1 -0
- package/examples/jsm/tsl/display/ParallaxBarrierPassNode.js +1 -0
- package/examples/jsm/tsl/display/PixelationPassNode.js +1 -0
- package/examples/jsm/tsl/display/RGBShiftNode.js +1 -0
- package/examples/jsm/tsl/display/SMAANode.js +9 -8
- package/examples/jsm/tsl/display/SSAAPassNode.js +3 -2
- package/examples/jsm/tsl/display/SSRNode.js +1 -0
- package/examples/jsm/tsl/display/SobelOperatorNode.js +1 -0
- package/examples/jsm/tsl/display/StereoCompositePassNode.js +1 -0
- package/examples/jsm/tsl/display/StereoPassNode.js +1 -0
- package/examples/jsm/tsl/display/TRAAPassNode.js +5 -4
- package/examples/jsm/tsl/display/TransitionNode.js +1 -0
- package/examples/jsm/tsl/display/hashBlur.js +28 -6
- package/examples/jsm/tsl/lighting/TiledLightsNode.js +4 -3
- package/examples/jsm/tsl/math/Bayer.js +4 -1
- package/examples/jsm/tsl/shadows/TileShadowNode.js +456 -0
- package/examples/jsm/tsl/shadows/TileShadowNodeHelper.js +212 -0
- package/examples/jsm/tsl/utils/Raymarching.js +6 -3
- package/examples/jsm/utils/BufferGeometryUtils.js +4 -1
- package/examples/jsm/utils/CameraUtils.js +4 -1
- package/examples/jsm/utils/GeometryCompressionUtils.js +4 -1
- package/examples/jsm/utils/GeometryUtils.js +4 -1
- package/examples/jsm/utils/LDrawUtils.js +2 -0
- package/examples/jsm/utils/SceneOptimizer.js +2 -0
- package/examples/jsm/utils/SceneUtils.js +4 -1
- package/examples/jsm/utils/ShadowMapViewer.js +2 -0
- package/examples/jsm/utils/ShadowMapViewerGPU.js +2 -0
- package/examples/jsm/utils/SkeletonUtils.js +4 -1
- package/examples/jsm/utils/SortUtils.js +4 -1
- package/examples/jsm/utils/UVsDebug.js +4 -1
- package/examples/jsm/utils/WebGLTextureUtils.js +4 -1
- package/examples/jsm/utils/WebGPUTextureUtils.js +4 -1
- package/examples/jsm/utils/WorkerPool.js +2 -0
- package/examples/jsm/webxr/ARButton.js +1 -0
- package/examples/jsm/webxr/OculusHandModel.js +1 -0
- package/examples/jsm/webxr/OculusHandPointerModel.js +1 -0
- package/examples/jsm/webxr/Text2D.js +4 -1
- package/examples/jsm/webxr/VRButton.js +1 -0
- package/examples/jsm/webxr/XRButton.js +1 -0
- package/examples/jsm/webxr/XRControllerModelFactory.js +2 -0
- package/examples/jsm/webxr/XREstimatedLight.js +1 -0
- package/examples/jsm/webxr/XRHandMeshModel.js +2 -0
- package/examples/jsm/webxr/XRHandModelFactory.js +2 -0
- package/examples/jsm/webxr/XRHandPrimitiveModel.js +2 -0
- package/examples/jsm/webxr/XRPlanes.js +1 -0
- package/package.json +6 -4
- package/src/Three.Core.js +1 -1
- package/src/Three.TSL.js +13 -5
- package/src/Three.WebGPU.Nodes.js +1 -0
- package/src/Three.WebGPU.js +1 -0
- package/src/audio/AudioListener.js +13 -10
- package/src/cameras/ArrayCamera.js +9 -1
- package/src/constants.js +47 -20
- package/src/core/BufferAttribute.js +1 -1
- package/src/core/BufferGeometry.js +2 -5
- package/src/core/Object3D.js +22 -21
- package/src/core/RenderTarget.js +65 -21
- package/src/core/RenderTarget3D.js +1 -0
- package/src/extras/TextureUtils.js +1 -5
- package/src/extras/core/Curve.js +1 -1
- package/src/geometries/CapsuleGeometry.js +167 -17
- package/src/geometries/ExtrudeGeometry.js +39 -29
- package/src/helpers/ArrowHelper.js +2 -2
- package/src/helpers/SkeletonHelper.js +1 -1
- package/src/lights/LightShadow.js +14 -0
- package/src/lights/SpotLightShadow.js +9 -1
- package/src/lights/webgpu/ProjectorLight.js +46 -0
- package/src/loaders/BufferGeometryLoader.js +1 -10
- package/src/loaders/ImageBitmapLoader.js +21 -5
- package/src/loaders/ObjectLoader.js +44 -16
- package/src/loaders/nodes/NodeObjectLoader.js +2 -2
- package/src/materials/Material.js +1 -7
- package/src/materials/nodes/NodeMaterial.js +81 -18
- package/src/materials/nodes/manager/NodeMaterialObserver.js +20 -2
- package/src/math/Box3.js +28 -0
- package/src/math/Color.js +7 -7
- package/src/math/ColorManagement.js +22 -3
- package/src/math/FrustumArray.js +253 -0
- package/src/math/Ray.js +2 -0
- package/src/math/Sphere.js +28 -0
- package/src/nodes/Nodes.js +1 -0
- package/src/nodes/TSL.js +1 -0
- package/src/nodes/accessors/Bitangent.js +31 -9
- package/src/nodes/accessors/Camera.js +31 -4
- package/src/nodes/accessors/CubeTextureNode.js +50 -2
- package/src/nodes/accessors/InstanceNode.js +5 -4
- package/src/nodes/accessors/Lights.js +2 -2
- package/src/nodes/accessors/MaterialNode.js +4 -0
- package/src/nodes/accessors/ModelNode.js +1 -1
- package/src/nodes/accessors/Normal.js +26 -6
- package/src/nodes/accessors/Object3DNode.js +6 -7
- package/src/nodes/accessors/Position.js +14 -4
- package/src/nodes/accessors/ReferenceBaseNode.js +1 -1
- package/src/nodes/accessors/ReferenceNode.js +1 -1
- package/src/nodes/accessors/SkinningNode.js +3 -2
- package/src/nodes/accessors/StorageBufferNode.js +25 -0
- package/src/nodes/accessors/StorageTextureNode.js +14 -3
- package/src/nodes/accessors/TextureNode.js +59 -8
- package/src/nodes/accessors/VelocityNode.js +1 -0
- package/src/nodes/accessors/VertexColorNode.js +4 -4
- package/src/nodes/code/CodeNode.js +8 -11
- package/src/nodes/core/AssignNode.js +27 -5
- package/src/nodes/core/AttributeNode.js +2 -2
- package/src/nodes/core/CacheNode.js +14 -0
- package/src/nodes/core/ContextNode.js +7 -3
- package/src/nodes/core/Node.js +68 -19
- package/src/nodes/core/NodeBuilder.js +100 -12
- package/src/nodes/core/NodeUtils.js +42 -0
- package/src/nodes/core/NodeVarying.js +19 -1
- package/src/nodes/core/PropertyNode.js +8 -12
- package/src/nodes/core/StackNode.js +127 -2
- package/src/nodes/core/StructTypeNode.js +26 -4
- package/src/nodes/core/VarNode.js +11 -2
- package/src/nodes/core/VaryingNode.js +40 -21
- package/src/nodes/display/BlendModes.js +42 -1
- package/src/nodes/display/ColorSpaceNode.js +4 -27
- package/src/nodes/display/PassNode.js +8 -11
- package/src/nodes/functions/ShadowMaskModel.js +5 -1
- package/src/nodes/functions/material/getParallaxCorrectNormal.js +1 -1
- package/src/nodes/gpgpu/AtomicFunctionNode.js +28 -10
- package/src/nodes/gpgpu/BarrierNode.js +3 -3
- package/src/nodes/gpgpu/ComputeNode.js +1 -1
- package/src/nodes/lighting/AnalyticLightNode.js +7 -13
- package/src/nodes/lighting/HemisphereLightNode.js +2 -2
- package/src/nodes/lighting/IESSpotLightNode.js +2 -1
- package/src/nodes/lighting/LightsNode.js +25 -7
- package/src/nodes/lighting/ProjectorLightNode.js +78 -0
- package/src/nodes/lighting/ShadowBaseNode.js +1 -12
- package/src/nodes/lighting/ShadowFilterNode.js +274 -0
- package/src/nodes/lighting/ShadowNode.js +172 -240
- package/src/nodes/lighting/SpotLightNode.js +44 -7
- package/src/nodes/materialx/lib/mx_noise.js +1 -1
- package/src/nodes/math/MathNode.js +56 -20
- package/src/nodes/math/OperatorNode.js +109 -82
- package/src/nodes/shapes/Shapes.js +5 -4
- package/src/nodes/tsl/TSLCore.js +140 -49
- package/src/nodes/utils/DebugNode.js +15 -3
- package/src/nodes/utils/Discard.js +2 -2
- package/src/nodes/utils/LoopNode.js +64 -17
- package/src/nodes/utils/ReflectorNode.js +67 -4
- package/src/objects/BatchedMesh.js +16 -4
- package/src/objects/Mesh.js +9 -0
- package/src/objects/Skeleton.js +1 -1
- package/src/objects/Sprite.js +9 -0
- package/src/renderers/WebGL3DRenderTarget.js +1 -0
- package/src/renderers/WebGLArrayRenderTarget.js +1 -0
- package/src/renderers/WebGLCubeRenderTarget.js +2 -4
- package/src/renderers/WebGLRenderer.js +21 -10
- package/src/renderers/common/Animation.js +2 -2
- package/src/renderers/common/Background.js +11 -0
- package/src/renderers/common/RenderList.js +0 -4
- package/src/renderers/common/RenderObject.js +12 -1
- package/src/renderers/common/Renderer.js +116 -8
- package/src/renderers/common/Textures.js +15 -21
- package/src/renderers/common/TimestampQueryPool.js +1 -0
- package/src/renderers/common/Uniform.js +1 -1
- package/src/renderers/common/UniformsGroup.js +14 -18
- package/src/renderers/common/XRManager.js +154 -25
- package/src/renderers/common/extras/PMREMGenerator.js +29 -22
- package/src/renderers/common/nodes/Nodes.js +13 -3
- package/src/renderers/shaders/ShaderChunk/premultiplied_alpha_fragment.glsl.js +1 -1
- package/src/renderers/shaders/ShaderLib/background.glsl.js +1 -1
- package/src/renderers/webgl/WebGLShadowMap.js +3 -2
- package/src/renderers/webgl/WebGLTextures.js +143 -4
- package/src/renderers/webgl/WebGLUtils.js +1 -3
- package/src/renderers/webgl-fallback/WebGLBackend.js +170 -34
- package/src/renderers/webgl-fallback/nodes/GLSLNodeBuilder.js +75 -7
- package/src/renderers/webgl-fallback/utils/WebGLConstants.js +1 -0
- package/src/renderers/webgl-fallback/utils/WebGLTextureUtils.js +42 -29
- package/src/renderers/webgl-fallback/utils/WebGLUtils.js +22 -21
- package/src/renderers/webgpu/WebGPUBackend.js +442 -127
- package/src/renderers/webgpu/WebGPURenderer.js +7 -0
- package/src/renderers/webgpu/nodes/BasicNodeLibrary.js +4 -1
- package/src/renderers/webgpu/nodes/StandardNodeLibrary.js +4 -1
- package/src/renderers/webgpu/nodes/WGSLNodeBuilder.js +75 -27
- package/src/renderers/webgpu/nodes/WGSLNodeFunction.js +3 -0
- package/src/renderers/webgpu/utils/WebGPUAttributeUtils.js +3 -1
- package/src/renderers/webgpu/utils/WebGPUBindingUtils.js +18 -5
- package/src/renderers/webgpu/utils/WebGPUConstants.js +1 -1
- package/src/renderers/webgpu/utils/WebGPUPipelineUtils.js +34 -4
- package/src/renderers/webgpu/utils/WebGPUTextureUtils.js +44 -49
- package/src/renderers/webxr/WebXRController.js +1 -1
- package/src/renderers/webxr/WebXRManager.js +2 -1
- package/src/textures/DepthTexture.js +6 -10
- package/src/textures/Source.js +22 -0
- package/src/textures/Texture.js +118 -1
- package/src/textures/VideoTexture.js +1 -1
- package/examples/jsm/effects/PeppersGhostEffect.js +0 -172
- package/src/core/RenderTargetArray.js +0 -40
|
@@ -9,7 +9,6 @@ import { CopyShader } from '../shaders/CopyShader.js';
|
|
|
9
9
|
import { ShaderPass } from './ShaderPass.js';
|
|
10
10
|
import { ClearMaskPass, MaskPass } from './MaskPass.js';
|
|
11
11
|
|
|
12
|
-
<<<<<<< HEAD
|
|
13
12
|
/**
|
|
14
13
|
* Used to implement post-processing effects in three.js.
|
|
15
14
|
* The class manages a chain of post-processing passes to produce the final visual result.
|
|
@@ -37,11 +36,11 @@ import { ClearMaskPass, MaskPass } from './MaskPass.js';
|
|
|
37
36
|
*
|
|
38
37
|
* }
|
|
39
38
|
* ```
|
|
39
|
+
*
|
|
40
|
+
* @three_import import { EffectComposer } from 'three/addons/postprocessing/EffectComposer.js';
|
|
40
41
|
*/
|
|
41
|
-
=======
|
|
42
42
|
const size = /* @__PURE__ */ new Vector2();
|
|
43
43
|
|
|
44
|
-
>>>>>>> d575277f70 (Enable post-processing in VR (#20))
|
|
45
44
|
class EffectComposer {
|
|
46
45
|
|
|
47
46
|
/**
|
|
@@ -124,13 +123,13 @@ class EffectComposer {
|
|
|
124
123
|
this.copyPass.material.blending = NoBlending;
|
|
125
124
|
|
|
126
125
|
/**
|
|
127
|
-
* The
|
|
126
|
+
* The internal clock for managing time data.
|
|
128
127
|
*
|
|
129
128
|
* @private
|
|
130
129
|
* @type {Clock}
|
|
131
130
|
*/
|
|
132
131
|
this.clock = new Clock();
|
|
133
|
-
|
|
132
|
+
|
|
134
133
|
this.onSessionStateChange = this.onSessionStateChange.bind( this );
|
|
135
134
|
this.renderer.xr.addEventListener( 'sessionstart', this.onSessionStateChange );
|
|
136
135
|
this.renderer.xr.addEventListener( 'sessionend', this.onSessionStateChange );
|
|
@@ -206,7 +205,7 @@ class EffectComposer {
|
|
|
206
205
|
* Returns `true` if the pass for the given index is the last enabled pass in the pass chain.
|
|
207
206
|
*
|
|
208
207
|
* @param {number} passIndex - The pass index.
|
|
209
|
-
* @return {boolean} Whether the
|
|
208
|
+
* @return {boolean} Whether the pass for the given index is the last pass in the pass chain.
|
|
210
209
|
*/
|
|
211
210
|
isLastEnabledPass( passIndex ) {
|
|
212
211
|
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { FXAAShader } from '../shaders/FXAAShader.js';
|
|
2
|
+
import { ShaderPass } from './ShaderPass.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* A pass for applying FXAA.
|
|
6
|
+
*
|
|
7
|
+
* ```js
|
|
8
|
+
* const fxaaPass = new FXAAPass();
|
|
9
|
+
* composer.addPass( fxaaPass );
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* @augments ShaderPass
|
|
13
|
+
* @three_import import { FXAAPass } from 'three/addons/postprocessing/FXAAPass.js';
|
|
14
|
+
*/
|
|
15
|
+
class FXAAPass extends ShaderPass {
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Constructs a new FXAA pass.
|
|
19
|
+
*/
|
|
20
|
+
constructor() {
|
|
21
|
+
|
|
22
|
+
super( FXAAShader );
|
|
23
|
+
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Sets the size of the pass.
|
|
28
|
+
*
|
|
29
|
+
* @param {number} width - The width to set.
|
|
30
|
+
* @param {number} height - The height to set.
|
|
31
|
+
*/
|
|
32
|
+
setSize( width, height ) {
|
|
33
|
+
|
|
34
|
+
this.material.uniforms[ 'resolution' ].value.set( 1 / width, 1 / height );
|
|
35
|
+
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export { FXAAPass };
|
|
@@ -38,6 +38,7 @@ import { SimplexNoise } from '../math/SimplexNoise.js';
|
|
|
38
38
|
* ```
|
|
39
39
|
*
|
|
40
40
|
* @augments Pass
|
|
41
|
+
* @three_import import { GTAOPass } from 'three/addons/postprocessing/GTAOPass.js';
|
|
41
42
|
*/
|
|
42
43
|
class GTAOPass extends Pass {
|
|
43
44
|
|
|
@@ -241,7 +242,7 @@ class GTAOPass extends Pass {
|
|
|
241
242
|
* Sets the size of the pass.
|
|
242
243
|
*
|
|
243
244
|
* @param {number} width - The width to set.
|
|
244
|
-
* @param {number} height - The
|
|
245
|
+
* @param {number} height - The height to set.
|
|
245
246
|
*/
|
|
246
247
|
setSize( width, height ) {
|
|
247
248
|
|
|
@@ -366,7 +367,7 @@ class GTAOPass extends Pass {
|
|
|
366
367
|
}
|
|
367
368
|
|
|
368
369
|
/**
|
|
369
|
-
* Updates the GTAO material from the given
|
|
370
|
+
* Updates the GTAO material from the given parameter object.
|
|
370
371
|
*
|
|
371
372
|
* @param {Object} parameters - The GTAO material parameters.
|
|
372
373
|
*/
|
|
@@ -420,7 +421,7 @@ class GTAOPass extends Pass {
|
|
|
420
421
|
}
|
|
421
422
|
|
|
422
423
|
/**
|
|
423
|
-
* Updates the Denoise material from the given
|
|
424
|
+
* Updates the Denoise material from the given parameter object.
|
|
424
425
|
*
|
|
425
426
|
* @param {Object} parameters - The denoise parameters.
|
|
426
427
|
*/
|
|
@@ -18,6 +18,7 @@ import { DigitalGlitch } from '../shaders/DigitalGlitch.js';
|
|
|
18
18
|
* ```
|
|
19
19
|
*
|
|
20
20
|
* @augments Pass
|
|
21
|
+
* @three_import import { GlitchPass } from 'three/addons/postprocessing/GlitchPass.js';
|
|
21
22
|
*/
|
|
22
23
|
class GlitchPass extends Pass {
|
|
23
24
|
|
|
@@ -50,7 +51,7 @@ class GlitchPass extends Pass {
|
|
|
50
51
|
} );
|
|
51
52
|
|
|
52
53
|
/**
|
|
53
|
-
* Whether to noticeably increase the effect
|
|
54
|
+
* Whether to noticeably increase the effect intensity or not.
|
|
54
55
|
*
|
|
55
56
|
* @type {boolean}
|
|
56
57
|
* @default false
|
|
@@ -26,6 +26,7 @@ import { HalftoneShader } from '../shaders/HalftoneShader.js';
|
|
|
26
26
|
* ```
|
|
27
27
|
*
|
|
28
28
|
* @augments Pass
|
|
29
|
+
* @three_import import { HalftonePass } from 'three/addons/postprocessing/HalftonePass.js';
|
|
29
30
|
*/
|
|
30
31
|
class HalftonePass extends Pass {
|
|
31
32
|
|
|
@@ -107,7 +108,7 @@ class HalftonePass extends Pass {
|
|
|
107
108
|
* Sets the size of the pass.
|
|
108
109
|
*
|
|
109
110
|
* @param {number} width - The width to set.
|
|
110
|
-
* @param {number} height - The
|
|
111
|
+
* @param {number} height - The height to set.
|
|
111
112
|
*/
|
|
112
113
|
setSize( width, height ) {
|
|
113
114
|
|
|
@@ -26,6 +26,7 @@ import { CopyShader } from '../shaders/CopyShader.js';
|
|
|
26
26
|
* ```
|
|
27
27
|
*
|
|
28
28
|
* @augments Pass
|
|
29
|
+
* @three_import import { OutlinePass } from 'three/addons/postprocessing/OutlinePass.js';
|
|
29
30
|
*/
|
|
30
31
|
class OutlinePass extends Pass {
|
|
31
32
|
|
|
@@ -268,7 +269,7 @@ class OutlinePass extends Pass {
|
|
|
268
269
|
* Sets the size of the pass.
|
|
269
270
|
*
|
|
270
271
|
* @param {number} width - The width to set.
|
|
271
|
-
* @param {number} height - The
|
|
272
|
+
* @param {number} height - The height to set.
|
|
272
273
|
*/
|
|
273
274
|
setSize( width, height ) {
|
|
274
275
|
|
|
@@ -557,7 +558,8 @@ class OutlinePass extends Pass {
|
|
|
557
558
|
},
|
|
558
559
|
|
|
559
560
|
vertexShader:
|
|
560
|
-
`#include <
|
|
561
|
+
`#include <batching_pars_vertex>
|
|
562
|
+
#include <morphtarget_pars_vertex>
|
|
561
563
|
#include <skinning_pars_vertex>
|
|
562
564
|
|
|
563
565
|
varying vec4 projTexCoord;
|
|
@@ -566,6 +568,7 @@ class OutlinePass extends Pass {
|
|
|
566
568
|
|
|
567
569
|
void main() {
|
|
568
570
|
|
|
571
|
+
#include <batching_vertex>
|
|
569
572
|
#include <skinbase_vertex>
|
|
570
573
|
#include <begin_vertex>
|
|
571
574
|
#include <morphtarget_vertex>
|
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
* This module is only relevant for post processing with {@link WebGLRenderer}.
|
|
12
12
|
*
|
|
13
13
|
* @abstract
|
|
14
|
+
* @three_import import { Pass } from 'three/addons/postprocessing/Pass.js';
|
|
14
15
|
*/
|
|
15
16
|
class Pass {
|
|
16
17
|
|
|
@@ -68,7 +69,7 @@ class Pass {
|
|
|
68
69
|
*
|
|
69
70
|
* @abstract
|
|
70
71
|
* @param {number} width - The width to set.
|
|
71
|
-
* @param {number} height - The
|
|
72
|
+
* @param {number} height - The height to set.
|
|
72
73
|
*/
|
|
73
74
|
setSize( /* width, height */ ) {}
|
|
74
75
|
|
|
@@ -132,6 +133,7 @@ const _geometry = new FullscreenTriangleGeometry();
|
|
|
132
133
|
* This module can only be used with {@link WebGLRenderer}.
|
|
133
134
|
*
|
|
134
135
|
* @augments Mesh
|
|
136
|
+
* @three_import import { FullScreenQuad } from 'three/addons/postprocessing/Pass.js';
|
|
135
137
|
*/
|
|
136
138
|
class FullScreenQuad {
|
|
137
139
|
|
|
@@ -19,6 +19,7 @@ import { Pass, FullScreenQuad } from './Pass.js';
|
|
|
19
19
|
* ```
|
|
20
20
|
*
|
|
21
21
|
* @augments Pass
|
|
22
|
+
* @three_import import { RenderPixelatedPass } from 'three/addons/postprocessing/RenderPixelatedPass.js';
|
|
22
23
|
*/
|
|
23
24
|
class RenderPixelatedPass extends Pass {
|
|
24
25
|
|
|
@@ -120,7 +121,7 @@ class RenderPixelatedPass extends Pass {
|
|
|
120
121
|
* Sets the size of the pass.
|
|
121
122
|
*
|
|
122
123
|
* @param {number} width - The width to set.
|
|
123
|
-
* @param {number} height - The
|
|
124
|
+
* @param {number} height - The height to set.
|
|
124
125
|
*/
|
|
125
126
|
setSize( width, height ) {
|
|
126
127
|
|
|
@@ -16,6 +16,7 @@ import { FullScreenQuad, Pass } from './Pass.js';
|
|
|
16
16
|
* ```
|
|
17
17
|
*
|
|
18
18
|
* @augments Pass
|
|
19
|
+
* @three_import import { RenderTransitionPass } from 'three/addons/postprocessing/RenderTransitionPass.js';
|
|
19
20
|
*/
|
|
20
21
|
class RenderTransitionPass extends Pass {
|
|
21
22
|
|
|
@@ -82,7 +83,7 @@ class RenderTransitionPass extends Pass {
|
|
|
82
83
|
* Sets the transition factor. Must be in the range `[0,1]`.
|
|
83
84
|
* This value determines to what degree both scenes are mixed.
|
|
84
85
|
*
|
|
85
|
-
* @param {
|
|
86
|
+
* @param {boolean|number} value - The transition factor.
|
|
86
87
|
*/
|
|
87
88
|
setTransition( value ) {
|
|
88
89
|
|
|
@@ -116,7 +117,7 @@ class RenderTransitionPass extends Pass {
|
|
|
116
117
|
* Sets the texture threshold. This value defined how strong the texture effects
|
|
117
118
|
* the transition. Must be in the range `[0,1]` (0 means full effect, 1 means no effect).
|
|
118
119
|
*
|
|
119
|
-
* @param {
|
|
120
|
+
* @param {boolean|number} value - The threshold value.
|
|
120
121
|
*/
|
|
121
122
|
setTextureThreshold( value ) {
|
|
122
123
|
|
|
@@ -128,7 +129,7 @@ class RenderTransitionPass extends Pass {
|
|
|
128
129
|
* Sets the size of the pass.
|
|
129
130
|
*
|
|
130
131
|
* @param {number} width - The width to set.
|
|
131
|
-
* @param {number} height - The
|
|
132
|
+
* @param {number} height - The height to set.
|
|
132
133
|
*/
|
|
133
134
|
setSize( width, height ) {
|
|
134
135
|
|
|
@@ -33,6 +33,7 @@ import { CopyShader } from '../shaders/CopyShader.js';
|
|
|
33
33
|
* ```
|
|
34
34
|
*
|
|
35
35
|
* @augments Pass
|
|
36
|
+
* @three_import import { SAOPass } from 'three/addons/postprocessing/SAOPass.js';
|
|
36
37
|
*/
|
|
37
38
|
class SAOPass extends Pass {
|
|
38
39
|
|
|
@@ -82,7 +83,7 @@ class SAOPass extends Pass {
|
|
|
82
83
|
this._oldClearAlpha = 1;
|
|
83
84
|
|
|
84
85
|
/**
|
|
85
|
-
* The SAO
|
|
86
|
+
* The SAO parameter.
|
|
86
87
|
*
|
|
87
88
|
* @type {Object}
|
|
88
89
|
*/
|
|
@@ -293,7 +294,7 @@ class SAOPass extends Pass {
|
|
|
293
294
|
* Sets the size of the pass.
|
|
294
295
|
*
|
|
295
296
|
* @param {number} width - The width to set.
|
|
296
|
-
* @param {number} height - The
|
|
297
|
+
* @param {number} height - The height to set.
|
|
297
298
|
*/
|
|
298
299
|
setSize( width, height ) {
|
|
299
300
|
|
|
@@ -12,7 +12,7 @@ import { SMAABlendShader, SMAAEdgesShader, SMAAWeightsShader } from '../shaders/
|
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* A pass for applying SMAA. Unlike {@link FXAAPass}, `SMAAPass` operates in
|
|
15
|
-
* `
|
|
15
|
+
* `linear-srgb` so this pass must be executed before {@link OutputPass}.
|
|
16
16
|
*
|
|
17
17
|
* ```js
|
|
18
18
|
* const smaaPass = new SMAAPass();
|
|
@@ -20,6 +20,7 @@ import { SMAABlendShader, SMAAEdgesShader, SMAAWeightsShader } from '../shaders/
|
|
|
20
20
|
* ```
|
|
21
21
|
*
|
|
22
22
|
* @augments Pass
|
|
23
|
+
* @three_import import { SMAAPass } from 'three/addons/postprocessing/SMAAPass.js';
|
|
23
24
|
*/
|
|
24
25
|
class SMAAPass extends Pass {
|
|
25
26
|
|
|
@@ -177,7 +178,7 @@ class SMAAPass extends Pass {
|
|
|
177
178
|
* Sets the size of the pass.
|
|
178
179
|
*
|
|
179
180
|
* @param {number} width - The width to set.
|
|
180
|
-
* @param {number} height - The
|
|
181
|
+
* @param {number} height - The height to set.
|
|
181
182
|
*/
|
|
182
183
|
setSize( width, height ) {
|
|
183
184
|
|
|
@@ -21,6 +21,7 @@ import { CopyShader } from '../shaders/CopyShader.js';
|
|
|
21
21
|
* ```
|
|
22
22
|
*
|
|
23
23
|
* @augments Pass
|
|
24
|
+
* @three_import import { SSAARenderPass } from 'three/addons/postprocessing/SSAARenderPass.js';
|
|
24
25
|
*/
|
|
25
26
|
class SSAARenderPass extends Pass {
|
|
26
27
|
|
|
@@ -140,7 +141,7 @@ class SSAARenderPass extends Pass {
|
|
|
140
141
|
* Sets the size of the pass.
|
|
141
142
|
*
|
|
142
143
|
* @param {number} width - The width to set.
|
|
143
|
-
* @param {number} height - The
|
|
144
|
+
* @param {number} height - The height to set.
|
|
144
145
|
*/
|
|
145
146
|
setSize( width, height ) {
|
|
146
147
|
|
|
@@ -39,6 +39,7 @@ import { CopyShader } from '../shaders/CopyShader.js';
|
|
|
39
39
|
* ```
|
|
40
40
|
*
|
|
41
41
|
* @augments Pass
|
|
42
|
+
* @three_import import { SSAOPass } from 'three/addons/postprocessing/SSAOPass.js';
|
|
42
43
|
*/
|
|
43
44
|
class SSAOPass extends Pass {
|
|
44
45
|
|
|
@@ -350,7 +351,7 @@ class SSAOPass extends Pass {
|
|
|
350
351
|
* Sets the size of the pass.
|
|
351
352
|
*
|
|
352
353
|
* @param {number} width - The width to set.
|
|
353
|
-
* @param {number} height - The
|
|
354
|
+
* @param {number} height - The height to set.
|
|
354
355
|
*/
|
|
355
356
|
setSize( width, height ) {
|
|
356
357
|
|
|
@@ -34,6 +34,7 @@ import { CopyShader } from '../shaders/CopyShader.js';
|
|
|
34
34
|
* ```
|
|
35
35
|
*
|
|
36
36
|
* @augments Pass
|
|
37
|
+
* @three_import import { SSRPass } from 'three/addons/postprocessing/SSRPass.js';
|
|
37
38
|
*/
|
|
38
39
|
class SSRPass extends Pass {
|
|
39
40
|
|
|
@@ -100,7 +101,7 @@ class SSRPass extends Pass {
|
|
|
100
101
|
this.groundReflector = groundReflector;
|
|
101
102
|
|
|
102
103
|
/**
|
|
103
|
-
* The
|
|
104
|
+
* The opacity.
|
|
104
105
|
*
|
|
105
106
|
* @type {number}
|
|
106
107
|
* @default 0.5
|
|
@@ -221,7 +222,7 @@ class SSRPass extends Pass {
|
|
|
221
222
|
this._distanceAttenuation = SSRShader.defines.DISTANCE_ATTENUATION;
|
|
222
223
|
|
|
223
224
|
/**
|
|
224
|
-
* Whether to use distance
|
|
225
|
+
* Whether to use distance attenuation or not.
|
|
225
226
|
*
|
|
226
227
|
* @name SSRPass#distanceAttenuation
|
|
227
228
|
* @type {boolean}
|
|
@@ -653,7 +654,7 @@ class SSRPass extends Pass {
|
|
|
653
654
|
* Sets the size of the pass.
|
|
654
655
|
*
|
|
655
656
|
* @param {number} width - The width to set.
|
|
656
|
-
* @param {number} height - The
|
|
657
|
+
* @param {number} height - The height to set.
|
|
657
658
|
*/
|
|
658
659
|
setSize( width, height ) {
|
|
659
660
|
|
|
@@ -17,6 +17,7 @@ import { CopyShader } from '../shaders/CopyShader.js';
|
|
|
17
17
|
* ```
|
|
18
18
|
*
|
|
19
19
|
* @augments Pass
|
|
20
|
+
* @three_import import { SavePass } from 'three/addons/postprocessing/SavePass.js';
|
|
20
21
|
*/
|
|
21
22
|
class SavePass extends Pass {
|
|
22
23
|
|
|
@@ -104,7 +105,7 @@ class SavePass extends Pass {
|
|
|
104
105
|
* Sets the size of the pass.
|
|
105
106
|
*
|
|
106
107
|
* @param {number} width - The width to set.
|
|
107
|
-
* @param {number} height - The
|
|
108
|
+
* @param {number} height - The height to set.
|
|
108
109
|
*/
|
|
109
110
|
setSize( width, height ) {
|
|
110
111
|
|
|
@@ -31,6 +31,7 @@ import { LuminosityHighPassShader } from '../shaders/LuminosityHighPassShader.js
|
|
|
31
31
|
* ```
|
|
32
32
|
*
|
|
33
33
|
* @augments Pass
|
|
34
|
+
* @three_import import { UnrealBloomPass } from 'three/addons/postprocessing/UnrealBloomPass.js';
|
|
34
35
|
*/
|
|
35
36
|
class UnrealBloomPass extends Pass {
|
|
36
37
|
|
|
@@ -241,7 +242,7 @@ class UnrealBloomPass extends Pass {
|
|
|
241
242
|
* Sets the size of the pass.
|
|
242
243
|
*
|
|
243
244
|
* @param {number} width - The width to set.
|
|
244
|
-
* @param {number} height - The
|
|
245
|
+
* @param {number} height - The height to set.
|
|
245
246
|
*/
|
|
246
247
|
setSize( width, height ) {
|
|
247
248
|
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
* The only type of 3D object that is supported by {@link CSS2DRenderer}.
|
|
10
10
|
*
|
|
11
11
|
* @augments Object3D
|
|
12
|
+
* @three_import import { CSS2DObject } from 'three/addons/renderers/CSS2DRenderer.js';
|
|
12
13
|
*/
|
|
13
14
|
class CSS2DObject extends Object3D {
|
|
14
15
|
|
|
@@ -103,6 +104,8 @@ const _b = new Vector3();
|
|
|
103
104
|
* scene graph. All other types of renderable 3D objects (like meshes or point clouds) are ignored.
|
|
104
105
|
*
|
|
105
106
|
* `CSS2DRenderer` only supports 100% browser and display zoom.
|
|
107
|
+
*
|
|
108
|
+
* @three_import import { CSS2DRenderer } from 'three/addons/renderers/CSS2DRenderer.js';
|
|
106
109
|
*/
|
|
107
110
|
class CSS2DRenderer {
|
|
108
111
|
|
|
@@ -15,6 +15,7 @@ const _scale = new Vector3();
|
|
|
15
15
|
* The base 3D object that is supported by {@link CSS3DRenderer}.
|
|
16
16
|
*
|
|
17
17
|
* @augments Object3D
|
|
18
|
+
* @three_import import { CSS3DObject } from 'three/addons/renderers/CSS3DRenderer.js';
|
|
18
19
|
*/
|
|
19
20
|
class CSS3DObject extends Object3D {
|
|
20
21
|
|
|
@@ -86,6 +87,7 @@ class CSS3DObject extends Object3D {
|
|
|
86
87
|
* DOM elements as sprites.
|
|
87
88
|
*
|
|
88
89
|
* @augments CSS3DObject
|
|
90
|
+
* @three_import import { CSS3DSprite } from 'three/addons/renderers/CSS3DRenderer.js';
|
|
89
91
|
*/
|
|
90
92
|
class CSS3DSprite extends CSS3DObject {
|
|
91
93
|
|
|
@@ -148,6 +150,8 @@ const _matrix2 = new Matrix4();
|
|
|
148
150
|
*
|
|
149
151
|
* So `CSS3DRenderer` is just focused on ordinary DOM elements. These elements are wrapped into special
|
|
150
152
|
* 3D objects ({@link CSS3DObject} or {@link CSS3DSprite}) and then added to the scene graph.
|
|
153
|
+
*
|
|
154
|
+
* @three_import import { CSS3DRenderer } from 'three/addons/renderers/CSS3DRenderer.js';
|
|
151
155
|
*/
|
|
152
156
|
class CSS3DRenderer {
|
|
153
157
|
|
|
@@ -124,6 +124,8 @@ class RenderableSprite {
|
|
|
124
124
|
* This class can project a given scene in 3D space into a 2D representation
|
|
125
125
|
* used for rendering with a 2D API. `Projector` is currently used by {@link SVGRenderer}
|
|
126
126
|
* and was previously used by the legacy `CanvasRenderer`.
|
|
127
|
+
*
|
|
128
|
+
* @three_import import { Projector } from 'three/addons/renderers/Projector.js';
|
|
127
129
|
*/
|
|
128
130
|
class Projector {
|
|
129
131
|
|
|
@@ -19,6 +19,7 @@ import {
|
|
|
19
19
|
* Can be used to wrap SVG elements into a 3D object.
|
|
20
20
|
*
|
|
21
21
|
* @augments Object3D
|
|
22
|
+
* @three_import import { SVGObject } from 'three/addons/renderers/SVGRenderer.js';
|
|
22
23
|
*/
|
|
23
24
|
class SVGObject extends Object3D {
|
|
24
25
|
|
|
@@ -69,6 +70,8 @@ class SVGObject extends Object3D {
|
|
|
69
70
|
* - No advanced shading.
|
|
70
71
|
* - No texture support.
|
|
71
72
|
* - No shadow support.
|
|
73
|
+
*
|
|
74
|
+
* @three_import import { SVGRenderer } from 'three/addons/renderers/SVGRenderer.js';
|
|
72
75
|
*/
|
|
73
76
|
class SVGRenderer {
|
|
74
77
|
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/**
|
|
2
|
+
* @module ACESFilmicToneMappingShader
|
|
3
|
+
* @three_import import { ACESFilmicToneMappingShader } from 'three/addons/shaders/ACESFilmicToneMappingShader.js';
|
|
4
|
+
*/
|
|
2
5
|
|
|
3
6
|
/**
|
|
4
7
|
* ACES Filmic Tone Mapping Shader by Stephen Hill.
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/**
|
|
2
|
+
* @module AfterimageShader
|
|
3
|
+
* @three_import import { AfterimageShader } from 'three/addons/shaders/AfterimageShader.js';
|
|
4
|
+
*/
|
|
2
5
|
|
|
3
6
|
/**
|
|
4
7
|
* Inspired by [Three.js FBO motion trails]{@link https://codepen.io/brunoimbrizi/pen/MoRJaN?page=1&}.
|
|
@@ -2,7 +2,10 @@ import {
|
|
|
2
2
|
Vector2
|
|
3
3
|
} from 'three';
|
|
4
4
|
|
|
5
|
-
/**
|
|
5
|
+
/**
|
|
6
|
+
* @module BokehShader2
|
|
7
|
+
* @three_import import { BokehShader, BokehDepthShader } from 'three/addons/shaders/BokehShader2.js';
|
|
8
|
+
*/
|
|
6
9
|
|
|
7
10
|
/**
|
|
8
11
|
* Depth-of-field shader with bokeh ported from
|