three-stdlib 2.35.6 → 2.35.8
Sign up to get free protection for your applications and to get access to all the features.
- package/_polyfill/constants.d.cts +1 -0
- package/_polyfill/uv1.d.cts +5 -0
- package/animation/AnimationClipCreator.d.cts +12 -0
- package/animation/AnimationClipCreator.d.ts +1 -1
- package/animation/CCDIKSolver.d.cts +30 -0
- package/animation/CCDIKSolver.d.ts +1 -1
- package/animation/MMDAnimationHelper.d.cts +93 -0
- package/animation/MMDAnimationHelper.d.ts +3 -3
- package/animation/MMDPhysics.d.cts +119 -0
- package/animation/MMDPhysics.d.ts +1 -1
- package/cameras/CinematicCamera.d.cts +34 -0
- package/cameras/CinematicCamera.d.ts +2 -2
- package/controls/ArcballControls.d.cts +376 -0
- package/controls/ArcballControls.d.ts +4 -4
- package/controls/DeviceOrientationControls.d.cts +29 -0
- package/controls/DeviceOrientationControls.d.ts +4 -4
- package/controls/DragControls.d.cts +67 -0
- package/controls/DragControls.d.ts +3 -3
- package/controls/EventDispatcher.d.cts +41 -0
- package/controls/FirstPersonControls.d.cts +49 -0
- package/controls/FirstPersonControls.d.ts +2 -2
- package/controls/FlyControls.d.cts +39 -0
- package/controls/FlyControls.d.ts +3 -3
- package/controls/OrbitControls.d.cts +74 -0
- package/controls/OrbitControls.d.ts +4 -4
- package/controls/PointerLockControls.d.cts +39 -0
- package/controls/PointerLockControls.d.ts +3 -3
- package/controls/StandardControlsEventMap.d.cts +14 -0
- package/controls/TrackballControls.d.cts +97 -0
- package/controls/TrackballControls.d.ts +4 -4
- package/controls/TransformControls.d.cts +151 -0
- package/controls/TransformControls.d.ts +2 -2
- package/controls/experimental/CameraControls.d.cts +213 -0
- package/controls/experimental/CameraControls.d.ts +3 -3
- package/csm/CSM.d.cts +61 -0
- package/csm/CSM.d.ts +2 -2
- package/csm/CSMFrustum.d.cts +19 -0
- package/csm/CSMFrustum.d.ts +1 -1
- package/csm/CSMHelper.d.cts +26 -0
- package/csm/CSMHelper.d.ts +2 -2
- package/csm/CSMShader.d.cts +4 -0
- package/curves/CurveExtras.d.cts +68 -0
- package/curves/CurveExtras.d.ts +1 -1
- package/curves/NURBSCurve.d.cts +11 -0
- package/curves/NURBSCurve.d.ts +1 -1
- package/curves/NURBSSurface.d.cts +13 -0
- package/curves/NURBSSurface.d.ts +1 -1
- package/curves/NURBSUtils.d.cts +20 -0
- package/curves/NURBSUtils.d.ts +1 -1
- package/deprecated/Geometry.d.cts +341 -0
- package/deprecated/Geometry.d.ts +1 -1
- package/effects/AnaglyphEffect.d.cts +11 -0
- package/effects/AnaglyphEffect.d.ts +1 -1
- package/effects/AsciiEffect.d.cts +18 -0
- package/effects/AsciiEffect.d.ts +1 -1
- package/effects/OutlineEffect.d.cts +28 -0
- package/effects/OutlineEffect.d.ts +1 -1
- package/effects/ParallaxBarrierEffect.d.cts +8 -0
- package/effects/ParallaxBarrierEffect.d.ts +1 -1
- package/effects/PeppersGhostEffect.d.cts +10 -0
- package/effects/PeppersGhostEffect.d.ts +1 -1
- package/effects/StereoEffect.d.cts +9 -0
- package/effects/StereoEffect.d.ts +1 -1
- package/environments/RoomEnvironment.d.cts +6 -0
- package/environments/RoomEnvironment.d.ts +2 -2
- package/exporters/ColladaExporter.d.cts +50 -0
- package/exporters/ColladaExporter.d.ts +2 -2
- package/exporters/DRACOExporter.d.cts +36 -0
- package/exporters/DRACOExporter.d.ts +2 -2
- package/exporters/GLTFExporter.d.cts +114 -0
- package/exporters/GLTFExporter.d.ts +1 -1
- package/exporters/MMDExporter.d.cts +12 -0
- package/exporters/MMDExporter.d.ts +2 -2
- package/exporters/OBJExporter.d.cts +18 -0
- package/exporters/OBJExporter.d.ts +2 -2
- package/exporters/PLYExporter.d.cts +23 -0
- package/exporters/PLYExporter.d.ts +2 -2
- package/exporters/STLExporter.d.cts +28 -0
- package/exporters/STLExporter.d.ts +1 -1
- package/exporters/USDZExporter.d.cts +27 -0
- package/exporters/USDZExporter.d.ts +2 -2
- package/geometries/BoxLineGeometry.d.cts +12 -0
- package/geometries/BoxLineGeometry.d.ts +1 -1
- package/geometries/ConvexGeometry.d.cts +5 -0
- package/geometries/ConvexGeometry.d.ts +1 -1
- package/geometries/DecalGeometry.d.cts +10 -0
- package/geometries/DecalGeometry.d.ts +1 -1
- package/geometries/LightningStrike.d.cts +108 -0
- package/geometries/LightningStrike.d.ts +1 -1
- package/geometries/ParametricGeometries.d.cts +26 -0
- package/geometries/ParametricGeometries.d.ts +2 -2
- package/geometries/ParametricGeometry.d.cts +18 -0
- package/geometries/ParametricGeometry.d.ts +2 -2
- package/geometries/RoundedBoxGeometry.d.cts +5 -0
- package/geometries/RoundedBoxGeometry.d.ts +1 -1
- package/geometries/TeapotGeometry.d.cts +13 -0
- package/geometries/TeapotGeometry.d.ts +1 -1
- package/geometries/TextGeometry.d.cts +18 -0
- package/geometries/TextGeometry.d.ts +3 -3
- package/helpers/LightProbeHelper.d.cts +10 -0
- package/helpers/LightProbeHelper.d.ts +1 -1
- package/helpers/PositionalAudioHelper.d.cts +13 -0
- package/helpers/PositionalAudioHelper.d.ts +1 -1
- package/helpers/RaycasterHelper.d.cts +33 -0
- package/helpers/RaycasterHelper.d.ts +2 -2
- package/helpers/RectAreaLightHelper.d.cts +11 -0
- package/helpers/RectAreaLightHelper.d.ts +1 -1
- package/helpers/VertexNormalsHelper.d.cts +13 -0
- package/helpers/VertexNormalsHelper.d.ts +1 -1
- package/helpers/VertexTangentsHelper.d.cts +13 -0
- package/helpers/VertexTangentsHelper.d.ts +1 -1
- package/index.d.cts +262 -0
- package/index.d.ts +262 -262
- package/interactive/HTMLMesh.d.cts +6 -0
- package/interactive/HTMLMesh.d.ts +1 -1
- package/interactive/InteractiveGroup.d.cts +5 -0
- package/interactive/InteractiveGroup.d.ts +1 -1
- package/interactive/SelectionBox.d.cts +15 -0
- package/interactive/SelectionBox.d.ts +1 -1
- package/interactive/SelectionHelper.d.cts +17 -0
- package/interactive/SelectionHelper.d.ts +2 -2
- package/libs/MeshoptDecoder.d.cts +12 -0
- package/libs/MeshoptDecoder.d.ts +1 -1
- package/libs/MotionControllers.d.cts +176 -0
- package/libs/MotionControllers.d.ts +1 -1
- package/libs/zstddec.d.cts +8 -0
- package/lights/LightProbeGenerator.d.cts +6 -0
- package/lights/LightProbeGenerator.d.ts +1 -1
- package/lights/RectAreaLightUniformsLib.d.cts +3 -0
- package/lines/Line2.d.cts +11 -0
- package/lines/Line2.d.ts +3 -3
- package/lines/LineGeometry.d.cts +10 -0
- package/lines/LineGeometry.d.ts +2 -2
- package/lines/LineMaterial.d.cts +31 -0
- package/lines/LineMaterial.d.ts +1 -1
- package/lines/LineSegments2.d.cts +14 -0
- package/lines/LineSegments2.d.ts +3 -3
- package/lines/LineSegmentsGeometry.d.cts +16 -0
- package/lines/LineSegmentsGeometry.d.ts +1 -1
- package/lines/Wireframe.d.cts +11 -0
- package/lines/Wireframe.d.ts +3 -3
- package/lines/WireframeGeometry2.d.cts +8 -0
- package/lines/WireframeGeometry2.d.ts +2 -2
- package/loaders/3DMLoader.d.cts +17 -0
- package/loaders/3DMLoader.d.ts +1 -1
- package/loaders/3MFLoader.d.cts +16 -0
- package/loaders/3MFLoader.d.ts +1 -1
- package/loaders/AMFLoader.d.cts +14 -0
- package/loaders/AMFLoader.d.ts +1 -1
- package/loaders/AssimpLoader.d.cts +19 -0
- package/loaders/AssimpLoader.d.ts +1 -1
- package/loaders/BVHLoader.d.cts +21 -0
- package/loaders/BVHLoader.d.ts +1 -1
- package/loaders/BasisTextureLoader.d.cts +32 -0
- package/loaders/BasisTextureLoader.d.ts +1 -1
- package/loaders/ColladaLoader.d.cts +20 -0
- package/loaders/ColladaLoader.d.ts +1 -1
- package/loaders/DDSLoader.d.cts +16 -0
- package/loaders/DDSLoader.d.ts +1 -1
- package/loaders/DRACOLoader.d.cts +18 -0
- package/loaders/DRACOLoader.d.ts +1 -1
- package/loaders/EXRLoader.d.cts +18 -0
- package/loaders/EXRLoader.d.ts +1 -1
- package/loaders/FBXLoader.d.cts +14 -0
- package/loaders/FBXLoader.d.ts +1 -1
- package/loaders/FontLoader.d.cts +37 -0
- package/loaders/FontLoader.d.ts +1 -1
- package/loaders/GCodeLoader.d.cts +15 -0
- package/loaders/GCodeLoader.d.ts +1 -1
- package/loaders/GLTFLoader.d.cts +155 -0
- package/loaders/GLTFLoader.d.ts +3 -3
- package/loaders/HDRCubeTextureLoader.d.cts +18 -0
- package/loaders/HDRCubeTextureLoader.d.ts +2 -2
- package/loaders/KMZLoader.d.cts +16 -0
- package/loaders/KMZLoader.d.ts +2 -2
- package/loaders/KTX2Loader.d.cts +10 -0
- package/loaders/KTX2Loader.d.ts +1 -1
- package/loaders/KTXLoader.d.cts +16 -0
- package/loaders/KTXLoader.d.ts +1 -1
- package/loaders/LDrawLoader.d.cts +26 -0
- package/loaders/LDrawLoader.d.ts +1 -1
- package/loaders/LUT3dlLoader.d.cts +20 -0
- package/loaders/LUT3dlLoader.d.ts +1 -1
- package/loaders/LUTCubeLoader.d.cts +23 -0
- package/loaders/LUTCubeLoader.d.ts +1 -1
- package/loaders/LWOLoader.d.cts +26 -0
- package/loaders/LWOLoader.d.ts +1 -1
- package/loaders/LottieLoader.d.cts +15 -0
- package/loaders/LottieLoader.d.ts +1 -1
- package/loaders/MD2Loader.d.cts +14 -0
- package/loaders/MD2Loader.d.ts +1 -1
- package/loaders/MDDLoader.d.cts +19 -0
- package/loaders/MDDLoader.d.ts +1 -1
- package/loaders/MMDLoader.d.cts +63 -0
- package/loaders/MMDLoader.d.ts +1 -1
- package/loaders/MTLLoader.d.cts +100 -0
- package/loaders/MTLLoader.d.ts +1 -1
- package/loaders/NRRDLoader.d.cts +22 -0
- package/loaders/NRRDLoader.d.ts +2 -2
- package/loaders/OBJLoader.d.cts +17 -0
- package/loaders/OBJLoader.d.ts +2 -2
- package/loaders/PCDLoader.d.cts +15 -0
- package/loaders/PCDLoader.d.ts +1 -1
- package/loaders/PDBLoader.d.cts +22 -0
- package/loaders/PDBLoader.d.ts +1 -1
- package/loaders/PLYLoader.d.cts +16 -0
- package/loaders/PLYLoader.d.ts +1 -1
- package/loaders/PRWMLoader.d.cts +16 -0
- package/loaders/PRWMLoader.d.ts +1 -1
- package/loaders/PVRLoader.d.cts +16 -0
- package/loaders/PVRLoader.d.ts +1 -1
- package/loaders/RGBELoader.d.cts +20 -0
- package/loaders/RGBELoader.d.ts +1 -1
- package/loaders/RGBMLoader.d.cts +32 -0
- package/loaders/RGBMLoader.d.ts +1 -1
- package/loaders/STLLoader.d.cts +14 -0
- package/loaders/STLLoader.d.ts +1 -1
- package/loaders/SVGLoader.d.cts +63 -0
- package/loaders/SVGLoader.d.ts +1 -1
- package/loaders/TDSLoader.d.cts +42 -0
- package/loaders/TDSLoader.d.ts +1 -1
- package/loaders/TGALoader.d.cts +14 -0
- package/loaders/TGALoader.d.ts +1 -1
- package/loaders/TTFLoader.d.cts +15 -0
- package/loaders/TTFLoader.d.ts +1 -1
- package/loaders/TiltLoader.d.cts +14 -0
- package/loaders/TiltLoader.d.ts +1 -1
- package/loaders/VOXLoader.d.cts +29 -0
- package/loaders/VOXLoader.d.ts +1 -1
- package/loaders/VRMLLoader.d.cts +14 -0
- package/loaders/VRMLLoader.d.ts +1 -1
- package/loaders/VRMLoader.d.cts +19 -0
- package/loaders/VRMLoader.d.ts +3 -3
- package/loaders/VTKLoader.d.cts +14 -0
- package/loaders/VTKLoader.d.ts +1 -1
- package/loaders/XLoader.d.cts +19 -0
- package/loaders/XLoader.d.ts +1 -1
- package/loaders/XYZLoader.d.cts +14 -0
- package/loaders/XYZLoader.d.ts +1 -1
- package/math/Capsule.d.cts +27 -0
- package/math/Capsule.d.ts +1 -1
- package/math/ColorConverter.d.cts +21 -0
- package/math/ColorConverter.d.ts +1 -1
- package/math/ConvexHull.d.cts +89 -0
- package/math/ConvexHull.d.ts +1 -1
- package/math/ImprovedNoise.d.cts +4 -0
- package/math/Lut.d.cts +27 -0
- package/math/Lut.d.ts +1 -1
- package/math/MeshSurfaceSampler.d.cts +18 -0
- package/math/MeshSurfaceSampler.d.ts +1 -1
- package/math/OBB.d.cts +24 -0
- package/math/OBB.d.ts +1 -1
- package/math/Octree.d.cts +24 -0
- package/math/Octree.d.ts +2 -2
- package/math/SimplexNoise.d.cts +21 -0
- package/misc/ConvexObjectBreaker.d.cts +25 -0
- package/misc/ConvexObjectBreaker.d.ts +1 -1
- package/misc/GPUComputationRenderer.d.cts +53 -0
- package/misc/GPUComputationRenderer.d.ts +1 -1
- package/misc/Gyroscope.d.cts +5 -0
- package/misc/Gyroscope.d.ts +1 -1
- package/misc/MD2Character.d.cts +33 -0
- package/misc/MD2Character.d.ts +1 -1
- package/misc/MD2CharacterComplex.d.cts +47 -0
- package/misc/MD2CharacterComplex.d.ts +1 -1
- package/misc/MorphAnimMesh.d.cts +13 -0
- package/misc/MorphAnimMesh.d.ts +1 -1
- package/misc/MorphBlendMesh.d.cts +21 -0
- package/misc/MorphBlendMesh.d.ts +1 -1
- package/misc/ProgressiveLightmap.d.cts +60 -0
- package/misc/ProgressiveLightmap.d.ts +1 -1
- package/misc/RollerCoaster.d.cts +21 -0
- package/misc/RollerCoaster.d.ts +1 -1
- package/misc/Timer.d.cts +27 -0
- package/misc/Timer.d.ts +1 -1
- package/misc/TubePainter.d.cts +10 -0
- package/misc/TubePainter.d.ts +1 -1
- package/misc/Volume.d.cts +37 -0
- package/misc/Volume.d.ts +2 -2
- package/misc/VolumeSlice.d.cts +28 -0
- package/misc/VolumeSlice.d.ts +2 -2
- package/misc/WebGL.d.cts +5 -0
- package/modifiers/CurveModifier.d.cts +91 -0
- package/modifiers/CurveModifier.d.ts +1 -1
- package/modifiers/EdgeSplitModifier.d.cts +19 -0
- package/modifiers/EdgeSplitModifier.d.ts +2 -2
- package/modifiers/SimplifyModifier.d.cts +19 -0
- package/modifiers/SimplifyModifier.d.ts +2 -2
- package/modifiers/TessellateModifier.d.cts +11 -0
- package/modifiers/TessellateModifier.d.ts +2 -2
- package/objects/BatchedMesh.d.cts +48 -0
- package/objects/BatchedMesh.d.ts +2 -2
- package/objects/GroundProjectedEnv.d.cts +12 -0
- package/objects/GroundProjectedEnv.d.ts +1 -1
- package/objects/Lensflare.cjs +10 -8
- package/objects/Lensflare.cjs.map +1 -1
- package/objects/Lensflare.d.cts +17 -0
- package/objects/Lensflare.d.ts +1 -1
- package/objects/Lensflare.js +11 -9
- package/objects/Lensflare.js.map +1 -1
- package/objects/LightningStorm.d.cts +32 -0
- package/objects/LightningStorm.d.ts +2 -2
- package/objects/MarchingCubes.d.cts +76 -0
- package/objects/MarchingCubes.d.ts +1 -1
- package/objects/Reflector.d.cts +23 -0
- package/objects/Reflector.d.ts +2 -2
- package/objects/ReflectorForSSRPass.d.cts +48 -0
- package/objects/ReflectorForSSRPass.d.ts +1 -1
- package/objects/ReflectorRTT.d.cts +6 -0
- package/objects/ReflectorRTT.d.ts +3 -3
- package/objects/Refractor.d.cts +23 -0
- package/objects/Refractor.d.ts +2 -2
- package/objects/ShadowMesh.d.cts +10 -0
- package/objects/ShadowMesh.d.ts +1 -1
- package/objects/Sky.d.cts +18 -0
- package/objects/Sky.d.ts +2 -2
- package/objects/Water.d.cts +22 -0
- package/objects/Water.d.ts +1 -1
- package/objects/Water2.d.cts +23 -0
- package/objects/Water2.d.ts +2 -2
- package/package.json +11 -5
- package/physics/AmmoPhysics.d.cts +7 -0
- package/physics/AmmoPhysics.d.ts +1 -1
- package/postprocessing/AdaptiveToneMappingPass.d.cts +29 -0
- package/postprocessing/AdaptiveToneMappingPass.d.ts +2 -2
- package/postprocessing/AfterimagePass.d.cts +15 -0
- package/postprocessing/AfterimagePass.d.ts +3 -3
- package/postprocessing/BloomPass.d.cts +29 -0
- package/postprocessing/BloomPass.d.ts +4 -4
- package/postprocessing/BokehPass.d.cts +26 -0
- package/postprocessing/BokehPass.d.ts +3 -3
- package/postprocessing/ClearPass.d.cts +10 -0
- package/postprocessing/ClearPass.d.ts +3 -3
- package/postprocessing/CubeTexturePass.d.cts +14 -0
- package/postprocessing/CubeTexturePass.d.ts +2 -2
- package/postprocessing/DotScreenPass.d.cts +11 -0
- package/postprocessing/DotScreenPass.d.ts +4 -4
- package/postprocessing/EffectComposer.d.cts +28 -0
- package/postprocessing/EffectComposer.d.ts +3 -3
- package/postprocessing/FilmPass.d.cts +11 -0
- package/postprocessing/FilmPass.d.ts +4 -4
- package/postprocessing/GlitchPass.d.cts +16 -0
- package/postprocessing/GlitchPass.d.ts +4 -4
- package/postprocessing/HalftonePass.d.cts +26 -0
- package/postprocessing/HalftonePass.d.ts +3 -3
- package/postprocessing/LUTPass.d.cts +13 -0
- package/postprocessing/LUTPass.d.ts +2 -2
- package/postprocessing/MaskPass.d.cts +14 -0
- package/postprocessing/MaskPass.d.ts +3 -3
- package/postprocessing/OutlinePass.d.cts +53 -0
- package/postprocessing/OutlinePass.d.ts +3 -3
- package/postprocessing/Pass.d.cts +21 -0
- package/postprocessing/Pass.d.ts +2 -2
- package/postprocessing/RenderPass.d.cts +14 -0
- package/postprocessing/RenderPass.d.ts +3 -3
- package/postprocessing/RenderPixelatedPass.d.cts +34 -0
- package/postprocessing/RenderPixelatedPass.d.ts +2 -2
- package/postprocessing/SAOPass.d.cts +78 -0
- package/postprocessing/SAOPass.d.ts +2 -2
- package/postprocessing/SMAAPass.d.cts +21 -0
- package/postprocessing/SMAAPass.d.ts +2 -2
- package/postprocessing/SSAARenderPass.d.cts +17 -0
- package/postprocessing/SSAARenderPass.d.ts +2 -2
- package/postprocessing/SSAOPass.d.cts +70 -0
- package/postprocessing/SSAOPass.d.ts +2 -2
- package/postprocessing/SSRPass.d.cts +123 -0
- package/postprocessing/SSRPass.d.ts +3 -3
- package/postprocessing/SavePass.d.cts +12 -0
- package/postprocessing/SavePass.d.ts +2 -2
- package/postprocessing/ShaderPass.d.cts +13 -0
- package/postprocessing/ShaderPass.d.ts +4 -4
- package/postprocessing/TAARenderPass.d.cts +8 -0
- package/postprocessing/TAARenderPass.d.ts +2 -2
- package/postprocessing/TexturePass.d.cts +12 -0
- package/postprocessing/TexturePass.d.ts +2 -2
- package/postprocessing/UnrealBloomPass.d.cts +31 -0
- package/postprocessing/UnrealBloomPass.d.ts +2 -2
- package/postprocessing/WaterPass.d.cts +35 -0
- package/postprocessing/WaterPass.d.ts +3 -3
- package/renderers/CSS2DRenderer.d.cts +23 -0
- package/renderers/CSS2DRenderer.d.ts +1 -1
- package/renderers/CSS3DRenderer.d.cts +26 -0
- package/renderers/CSS3DRenderer.d.ts +1 -1
- package/renderers/Projector.d.cts +60 -0
- package/renderers/Projector.d.ts +1 -1
- package/renderers/SVGRenderer.d.cts +25 -0
- package/renderers/SVGRenderer.d.ts +1 -1
- package/shaders/ACESFilmicToneMappingShader.d.cts +16 -0
- package/shaders/ACESFilmicToneMappingShader.d.ts +1 -1
- package/shaders/AfterimageShader.d.cts +15 -0
- package/shaders/AfterimageShader.d.ts +1 -1
- package/shaders/BasicShader.d.cts +8 -0
- package/shaders/BasicShader.d.ts +1 -1
- package/shaders/BleachBypassShader.d.cts +14 -0
- package/shaders/BleachBypassShader.d.ts +1 -1
- package/shaders/BlendShader.d.cts +21 -0
- package/shaders/BokehShader.d.cts +24 -0
- package/shaders/BokehShader.d.ts +1 -1
- package/shaders/BokehShader2.d.cts +50 -0
- package/shaders/BokehShader2.d.ts +1 -1
- package/shaders/BrightnessContrastShader.d.cts +21 -0
- package/shaders/ColorCorrectionShader.d.cts +22 -0
- package/shaders/ColorCorrectionShader.d.ts +1 -1
- package/shaders/ColorifyShader.d.cts +16 -0
- package/shaders/ColorifyShader.d.ts +1 -1
- package/shaders/ConvolutionShader.d.cts +21 -0
- package/shaders/ConvolutionShader.d.ts +2 -2
- package/shaders/CopyShader.d.cts +12 -0
- package/shaders/CopyShader.d.ts +1 -1
- package/shaders/DOFMipMapShader.d.cts +23 -0
- package/shaders/DepthLimitedBlurShader.d.cts +28 -0
- package/shaders/DepthLimitedBlurShader.d.ts +2 -2
- package/shaders/DigitalGlitch.d.cts +39 -0
- package/shaders/DotScreenShader.d.cts +27 -0
- package/shaders/DotScreenShader.d.ts +1 -1
- package/shaders/FXAAShader.d.cts +19 -0
- package/shaders/FXAAShader.d.ts +1 -1
- package/shaders/FilmShader.d.cts +43 -0
- package/shaders/FocusShader.d.cts +26 -0
- package/shaders/FreiChenShader.d.cts +19 -0
- package/shaders/FreiChenShader.d.ts +1 -1
- package/shaders/FresnelShader.d.cts +24 -0
- package/shaders/GammaCorrectionShader.d.cts +12 -0
- package/shaders/GammaCorrectionShader.d.ts +1 -1
- package/shaders/GodRaysShader.d.cts +97 -0
- package/shaders/GodRaysShader.d.ts +1 -1
- package/shaders/HalftoneShader.d.cts +51 -0
- package/shaders/HorizontalBlurShader.d.cts +18 -0
- package/shaders/HorizontalBlurShader.d.ts +1 -1
- package/shaders/HorizontalTiltShiftShader.d.cts +23 -0
- package/shaders/HueSaturationShader.d.cts +21 -0
- package/shaders/KaleidoShader.d.cts +24 -0
- package/shaders/LuminosityHighPassShader.d.cts +27 -0
- package/shaders/LuminosityHighPassShader.d.ts +1 -1
- package/shaders/LuminosityShader.d.cts +13 -0
- package/shaders/MirrorShader.d.cts +18 -0
- package/shaders/NormalMapShader.d.cts +23 -0
- package/shaders/NormalMapShader.d.ts +1 -1
- package/shaders/ParallaxShader.d.cts +28 -0
- package/shaders/PixelShader.d.cts +18 -0
- package/shaders/RGBShiftShader.d.cts +24 -0
- package/shaders/SAOShader.d.cts +25 -0
- package/shaders/SAOShader.d.ts +2 -2
- package/shaders/SMAAShader.d.cts +60 -0
- package/shaders/SMAAShader.d.ts +1 -1
- package/shaders/SSAOShader.d.cts +86 -0
- package/shaders/SSAOShader.d.ts +1 -1
- package/shaders/SSRShader.d.cts +94 -0
- package/shaders/SSRShader.d.ts +1 -1
- package/shaders/SepiaShader.d.cts +17 -0
- package/shaders/SobelOperatorShader.d.cts +19 -0
- package/shaders/SobelOperatorShader.d.ts +1 -1
- package/shaders/SubsurfaceScatteringShader.d.cts +5 -0
- package/shaders/TechnicolorShader.d.cts +15 -0
- package/shaders/ToneMapShader.d.cts +27 -0
- package/shaders/ToonShader.d.cts +108 -0
- package/shaders/ToonShader.d.ts +1 -1
- package/shaders/TriangleBlurShader.d.cts +22 -0
- package/shaders/TriangleBlurShader.d.ts +1 -1
- package/shaders/UnpackDepthRGBAShader.d.cts +16 -0
- package/shaders/VerticalBlurShader.d.cts +18 -0
- package/shaders/VerticalBlurShader.d.ts +1 -1
- package/shaders/VerticalTiltShiftShader.d.cts +23 -0
- package/shaders/VignetteShader.d.cts +20 -0
- package/shaders/VolumeShader.d.cts +30 -0
- package/shaders/VolumeShader.d.ts +1 -1
- package/shaders/WaterRefractionShader.d.cts +21 -0
- package/shaders/types.d.cts +13 -0
- package/textures/FlakesTexture.d.cts +4 -0
- package/textures/FlakesTexture.d.ts +1 -1
- package/types/helpers.d.cts +1 -0
- package/types/shared.d.cts +9 -0
- package/types/utils.d.cts +3 -0
- package/utils/BufferGeometryUtils.d.cts +63 -0
- package/utils/BufferGeometryUtils.d.ts +1 -1
- package/utils/GeometryCompressionUtils.d.cts +7 -0
- package/utils/GeometryCompressionUtils.d.ts +1 -1
- package/utils/GeometryUtils.d.cts +6 -0
- package/utils/GeometryUtils.d.ts +1 -1
- package/utils/LDrawUtils.d.cts +5 -0
- package/utils/LDrawUtils.d.ts +1 -1
- package/utils/RoughnessMipmapper.d.cts +8 -0
- package/utils/RoughnessMipmapper.d.ts +1 -1
- package/utils/SceneUtils.d.cts +9 -0
- package/utils/SceneUtils.d.ts +2 -2
- package/utils/ShadowMapViewer.d.cts +24 -0
- package/utils/ShadowMapViewer.d.ts +1 -1
- package/utils/SkeletonUtils.d.cts +14 -0
- package/utils/SkeletonUtils.d.ts +1 -1
- package/utils/UVsDebug.d.cts +3 -0
- package/utils/UVsDebug.d.ts +1 -1
- package/webxr/ARButton.d.cts +6 -0
- package/webxr/ARButton.d.ts +2 -2
- package/webxr/OculusHandModel.d.cts +23 -0
- package/webxr/OculusHandModel.d.ts +3 -3
- package/webxr/OculusHandPointerModel.d.cts +65 -0
- package/webxr/OculusHandPointerModel.d.ts +1 -1
- package/webxr/Text2D.d.cts +3 -0
- package/webxr/Text2D.d.ts +1 -1
- package/webxr/VRButton.d.cts +11 -0
- package/webxr/VRButton.d.ts +2 -2
- package/webxr/XRControllerModelFactory.d.cts +23 -0
- package/webxr/XRControllerModelFactory.d.ts +4 -4
- package/webxr/XREstimatedLight.d.cts +33 -0
- package/webxr/XREstimatedLight.d.ts +1 -1
- package/webxr/XRHandMeshModel.d.cts +9 -0
- package/webxr/XRHandMeshModel.d.ts +2 -2
- package/webxr/XRHandModelFactory.d.cts +25 -0
- package/webxr/XRHandModelFactory.d.ts +3 -3
- package/webxr/XRHandPrimitiveModel.d.cts +24 -0
- package/webxr/XRHandPrimitiveModel.d.ts +2 -2
package/objects/Lensflare.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { BufferGeometry, InterleavedBuffer, InterleavedBufferAttribute, Mesh, MeshBasicMaterial, Vector3,
|
1
|
+
import { BufferGeometry, InterleavedBuffer, InterleavedBufferAttribute, Mesh, MeshBasicMaterial, Vector3, Texture, NearestFilter, RawShaderMaterial, Color, Vector2, AdditiveBlending, Box2, Vector4 } from "three";
|
2
2
|
const Lensflare = /* @__PURE__ */ (() => {
|
3
3
|
class Lensflare2 extends Mesh {
|
4
4
|
constructor() {
|
@@ -9,16 +9,18 @@ const Lensflare = /* @__PURE__ */ (() => {
|
|
9
9
|
this.renderOrder = Infinity;
|
10
10
|
const positionScreen = new Vector3();
|
11
11
|
const positionView = new Vector3();
|
12
|
-
const tempMap = new
|
13
|
-
tempMap.
|
12
|
+
const tempMap = new Texture({ width: 16, height: 16 });
|
13
|
+
tempMap.isFramebufferTexture = true;
|
14
14
|
tempMap.magFilter = NearestFilter;
|
15
|
-
tempMap.
|
16
|
-
tempMap.
|
17
|
-
|
18
|
-
occlusionMap
|
15
|
+
tempMap.minFilter = NearestFilter;
|
16
|
+
tempMap.generateMipmaps = false;
|
17
|
+
tempMap.needsUpdate = true;
|
18
|
+
const occlusionMap = new Texture({ width: 16, height: 16 });
|
19
|
+
occlusionMap.isFramebufferTexture = true;
|
19
20
|
occlusionMap.magFilter = NearestFilter;
|
20
|
-
occlusionMap.
|
21
|
-
occlusionMap.
|
21
|
+
occlusionMap.minFilter = NearestFilter;
|
22
|
+
occlusionMap.generateMipmaps = false;
|
23
|
+
occlusionMap.needsUpdate = true;
|
22
24
|
const geometry = Lensflare2.Geometry;
|
23
25
|
const material1a = new RawShaderMaterial({
|
24
26
|
uniforms: {
|
package/objects/Lensflare.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Lensflare.js","sources":["../../src/objects/Lensflare.js"],"sourcesContent":["import {\n AdditiveBlending,\n Box2,\n BufferGeometry,\n ClampToEdgeWrapping,\n Color,\n DataTexture,\n InterleavedBuffer,\n InterleavedBufferAttribute,\n Mesh,\n MeshBasicMaterial,\n NearestFilter,\n RGBAFormat,\n RawShaderMaterial,\n Vector2,\n Vector3,\n Vector4,\n} from 'three'\n\nconst Lensflare = /* @__PURE__ */ (() => {\n class Lensflare extends Mesh {\n constructor() {\n super(Lensflare.Geometry, new MeshBasicMaterial({ opacity: 0, transparent: true }))\n\n this.isLensflare = true\n\n this.type = 'Lensflare'\n this.frustumCulled = false\n this.renderOrder = Infinity\n\n //\n\n const positionScreen = new Vector3()\n const positionView = new Vector3()\n\n // textures\n const tempMap = new DataTexture(new Uint8Array(16 * 16 * 3), 16, 16, RGBAFormat)\n tempMap.minFilter = NearestFilter\n tempMap.magFilter = NearestFilter\n tempMap.wrapS = ClampToEdgeWrapping\n tempMap.wrapT = ClampToEdgeWrapping\n\n const occlusionMap = new DataTexture(new Uint8Array(16 * 16 * 3), 16, 16, RGBAFormat)\n occlusionMap.minFilter = NearestFilter\n occlusionMap.magFilter = NearestFilter\n occlusionMap.wrapS = ClampToEdgeWrapping\n occlusionMap.wrapT = ClampToEdgeWrapping\n\n // material\n\n const geometry = Lensflare.Geometry\n\n const material1a = new RawShaderMaterial({\n uniforms: {\n scale: { value: null },\n screenPosition: { value: null },\n },\n vertexShader: /* glsl */ `\n\n\t\t\t\tprecision highp float;\n\n\t\t\t\tuniform vec3 screenPosition;\n\t\t\t\tuniform vec2 scale;\n\n\t\t\t\tattribute vec3 position;\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tgl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 );\n\n\t\t\t\t}`,\n\n fragmentShader: /* glsl */ `\n\n\t\t\t\tprecision highp float;\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tgl_FragColor = vec4( 1.0, 0.0, 1.0, 1.0 );\n\n\t\t\t\t}`,\n depthTest: true,\n depthWrite: false,\n transparent: false,\n })\n\n const material1b = new RawShaderMaterial({\n uniforms: {\n map: { value: tempMap },\n scale: { value: null },\n screenPosition: { value: null },\n },\n vertexShader: /* glsl */ `\n\n\t\t\t\tprecision highp float;\n\n\t\t\t\tuniform vec3 screenPosition;\n\t\t\t\tuniform vec2 scale;\n\n\t\t\t\tattribute vec3 position;\n\t\t\t\tattribute vec2 uv;\n\n\t\t\t\tvarying vec2 vUV;\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvUV = uv;\n\n\t\t\t\t\tgl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 );\n\n\t\t\t\t}`,\n\n fragmentShader: /* glsl */ `\n\n\t\t\t\tprecision highp float;\n\n\t\t\t\tuniform sampler2D map;\n\n\t\t\t\tvarying vec2 vUV;\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tgl_FragColor = texture2D( map, vUV );\n\n\t\t\t\t}`,\n depthTest: false,\n depthWrite: false,\n transparent: false,\n })\n\n // the following object is used for occlusionMap generation\n\n const mesh1 = new Mesh(geometry, material1a)\n\n //\n\n const elements = []\n\n const shader = LensflareElement.Shader\n\n const material2 = new RawShaderMaterial({\n uniforms: {\n map: { value: null },\n occlusionMap: { value: occlusionMap },\n color: { value: new Color(0xffffff) },\n scale: { value: new Vector2() },\n screenPosition: { value: new Vector3() },\n },\n vertexShader: shader.vertexShader,\n fragmentShader: shader.fragmentShader,\n blending: AdditiveBlending,\n transparent: true,\n depthWrite: false,\n })\n\n const mesh2 = new Mesh(geometry, material2)\n\n this.addElement = function (element) {\n elements.push(element)\n }\n\n //\n\n const scale = new Vector2()\n const screenPositionPixels = new Vector2()\n const validArea = new Box2()\n const viewport = new Vector4()\n\n this.onBeforeRender = function (renderer, scene, camera) {\n renderer.getCurrentViewport(viewport)\n\n const invAspect = viewport.w / viewport.z\n const halfViewportWidth = viewport.z / 2.0\n const halfViewportHeight = viewport.w / 2.0\n\n let size = 16 / viewport.w\n scale.set(size * invAspect, size)\n\n validArea.min.set(viewport.x, viewport.y)\n validArea.max.set(viewport.x + (viewport.z - 16), viewport.y + (viewport.w - 16))\n\n // calculate position in screen space\n\n positionView.setFromMatrixPosition(this.matrixWorld)\n positionView.applyMatrix4(camera.matrixWorldInverse)\n\n if (positionView.z > 0) return // lensflare is behind the camera\n\n positionScreen.copy(positionView).applyMatrix4(camera.projectionMatrix)\n\n // horizontal and vertical coordinate of the lower left corner of the pixels to copy\n\n screenPositionPixels.x = viewport.x + positionScreen.x * halfViewportWidth + halfViewportWidth - 8\n screenPositionPixels.y = viewport.y + positionScreen.y * halfViewportHeight + halfViewportHeight - 8\n\n // screen cull\n\n if (validArea.containsPoint(screenPositionPixels)) {\n // save current RGB to temp texture\n\n renderer.copyFramebufferToTexture(screenPositionPixels, tempMap)\n\n // render pink quad\n\n let uniforms = material1a.uniforms\n uniforms['scale'].value = scale\n uniforms['screenPosition'].value = positionScreen\n\n renderer.renderBufferDirect(camera, null, geometry, material1a, mesh1, null)\n\n // copy result to occlusionMap\n\n renderer.copyFramebufferToTexture(screenPositionPixels, occlusionMap)\n\n // restore graphics\n\n uniforms = material1b.uniforms\n uniforms['scale'].value = scale\n uniforms['screenPosition'].value = positionScreen\n\n renderer.renderBufferDirect(camera, null, geometry, material1b, mesh1, null)\n\n // render elements\n\n const vecX = -positionScreen.x * 2\n const vecY = -positionScreen.y * 2\n\n for (let i = 0, l = elements.length; i < l; i++) {\n const element = elements[i]\n\n const uniforms = material2.uniforms\n\n uniforms['color'].value.copy(element.color)\n uniforms['map'].value = element.texture\n uniforms['screenPosition'].value.x = positionScreen.x + vecX * element.distance\n uniforms['screenPosition'].value.y = positionScreen.y + vecY * element.distance\n\n size = element.size / viewport.w\n const invAspect = viewport.w / viewport.z\n\n uniforms['scale'].value.set(size * invAspect, size)\n\n material2.uniformsNeedUpdate = true\n\n renderer.renderBufferDirect(camera, null, geometry, material2, mesh2, null)\n }\n }\n }\n\n this.dispose = function () {\n material1a.dispose()\n material1b.dispose()\n material2.dispose()\n\n tempMap.dispose()\n occlusionMap.dispose()\n\n for (let i = 0, l = elements.length; i < l; i++) {\n elements[i].texture.dispose()\n }\n }\n }\n }\n\n const _geometry = new BufferGeometry()\n const interleavedBuffer = new InterleavedBuffer(\n new Float32Array([-1, -1, 0, 0, 0, 1, -1, 0, 1, 0, 1, 1, 0, 1, 1, -1, 1, 0, 0, 1]),\n 5,\n )\n\n _geometry.setIndex([0, 1, 2, 0, 2, 3])\n _geometry.setAttribute('position', new InterleavedBufferAttribute(interleavedBuffer, 3, 0, false))\n _geometry.setAttribute('uv', new InterleavedBufferAttribute(interleavedBuffer, 2, 3, false))\n\n Lensflare.Geometry = _geometry\n\n return Lensflare\n})()\n\n//\n\nconst LensflareElement = /* @__PURE__ */ (() => {\n class LensflareElement {\n constructor(texture, size = 1, distance = 0, color = new Color(0xffffff)) {\n this.texture = texture\n this.size = size\n this.distance = distance\n this.color = color\n }\n }\n\n LensflareElement.Shader = {\n uniforms: {\n map: { value: null },\n occlusionMap: { value: null },\n color: { value: null },\n scale: { value: null },\n screenPosition: { value: null },\n },\n\n vertexShader: /* glsl */ `\n\n precision highp float;\n\n uniform vec3 screenPosition;\n uniform vec2 scale;\n\n uniform sampler2D occlusionMap;\n\n attribute vec3 position;\n attribute vec2 uv;\n\n varying vec2 vUV;\n varying float vVisibility;\n\n void main() {\n\n vUV = uv;\n\n vec2 pos = position.xy;\n\n vec4 visibility = texture2D( occlusionMap, vec2( 0.1, 0.1 ) );\n visibility += texture2D( occlusionMap, vec2( 0.5, 0.1 ) );\n visibility += texture2D( occlusionMap, vec2( 0.9, 0.1 ) );\n visibility += texture2D( occlusionMap, vec2( 0.9, 0.5 ) );\n visibility += texture2D( occlusionMap, vec2( 0.9, 0.9 ) );\n visibility += texture2D( occlusionMap, vec2( 0.5, 0.9 ) );\n visibility += texture2D( occlusionMap, vec2( 0.1, 0.9 ) );\n visibility += texture2D( occlusionMap, vec2( 0.1, 0.5 ) );\n visibility += texture2D( occlusionMap, vec2( 0.5, 0.5 ) );\n\n vVisibility = visibility.r / 9.0;\n vVisibility *= 1.0 - visibility.g / 9.0;\n vVisibility *= visibility.b / 9.0;\n\n gl_Position = vec4( ( pos * scale + screenPosition.xy ).xy, screenPosition.z, 1.0 );\n\n }\n `,\n\n fragmentShader: /* glsl */ `\n\n precision highp float;\n\n uniform sampler2D map;\n uniform vec3 color;\n\n varying vec2 vUV;\n varying float vVisibility;\n\n void main() {\n\n vec4 texture = texture2D( map, vUV );\n texture.a *= vVisibility;\n gl_FragColor = texture;\n gl_FragColor.rgb *= color;\n\n }\n `,\n }\n\n return LensflareElement\n})()\n\nexport { Lensflare, LensflareElement }\n"],"names":["Lensflare","uniforms","invAspect","LensflareElement"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Lensflare.js","sources":["../../src/objects/Lensflare.js"],"sourcesContent":["import {\n AdditiveBlending,\n Box2,\n BufferGeometry,\n Color,\n Texture,\n NearestFilter,\n InterleavedBuffer,\n InterleavedBufferAttribute,\n Mesh,\n MeshBasicMaterial,\n RawShaderMaterial,\n Vector2,\n Vector3,\n Vector4,\n} from 'three'\n\nconst Lensflare = /* @__PURE__ */ (() => {\n class Lensflare extends Mesh {\n constructor() {\n super(Lensflare.Geometry, new MeshBasicMaterial({ opacity: 0, transparent: true }))\n\n this.isLensflare = true\n\n this.type = 'Lensflare'\n this.frustumCulled = false\n this.renderOrder = Infinity\n\n //\n\n const positionScreen = new Vector3()\n const positionView = new Vector3()\n\n // textures\n const tempMap = new Texture({ width: 16, height: 16 })\n tempMap.isFramebufferTexture = true\n tempMap.magFilter = NearestFilter\n tempMap.minFilter = NearestFilter\n tempMap.generateMipmaps = false\n tempMap.needsUpdate = true\n\n const occlusionMap = new Texture({ width: 16, height: 16 })\n occlusionMap.isFramebufferTexture = true\n occlusionMap.magFilter = NearestFilter\n occlusionMap.minFilter = NearestFilter\n occlusionMap.generateMipmaps = false\n occlusionMap.needsUpdate = true\n\n // material\n\n const geometry = Lensflare.Geometry\n\n const material1a = new RawShaderMaterial({\n uniforms: {\n scale: { value: null },\n screenPosition: { value: null },\n },\n vertexShader: /* glsl */ `\n\n\t\t\t\tprecision highp float;\n\n\t\t\t\tuniform vec3 screenPosition;\n\t\t\t\tuniform vec2 scale;\n\n\t\t\t\tattribute vec3 position;\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tgl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 );\n\n\t\t\t\t}`,\n\n fragmentShader: /* glsl */ `\n\n\t\t\t\tprecision highp float;\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tgl_FragColor = vec4( 1.0, 0.0, 1.0, 1.0 );\n\n\t\t\t\t}`,\n depthTest: true,\n depthWrite: false,\n transparent: false,\n })\n\n const material1b = new RawShaderMaterial({\n uniforms: {\n map: { value: tempMap },\n scale: { value: null },\n screenPosition: { value: null },\n },\n vertexShader: /* glsl */ `\n\n\t\t\t\tprecision highp float;\n\n\t\t\t\tuniform vec3 screenPosition;\n\t\t\t\tuniform vec2 scale;\n\n\t\t\t\tattribute vec3 position;\n\t\t\t\tattribute vec2 uv;\n\n\t\t\t\tvarying vec2 vUV;\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvUV = uv;\n\n\t\t\t\t\tgl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 );\n\n\t\t\t\t}`,\n\n fragmentShader: /* glsl */ `\n\n\t\t\t\tprecision highp float;\n\n\t\t\t\tuniform sampler2D map;\n\n\t\t\t\tvarying vec2 vUV;\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tgl_FragColor = texture2D( map, vUV );\n\n\t\t\t\t}`,\n depthTest: false,\n depthWrite: false,\n transparent: false,\n })\n\n // the following object is used for occlusionMap generation\n\n const mesh1 = new Mesh(geometry, material1a)\n\n //\n\n const elements = []\n\n const shader = LensflareElement.Shader\n\n const material2 = new RawShaderMaterial({\n uniforms: {\n map: { value: null },\n occlusionMap: { value: occlusionMap },\n color: { value: new Color(0xffffff) },\n scale: { value: new Vector2() },\n screenPosition: { value: new Vector3() },\n },\n vertexShader: shader.vertexShader,\n fragmentShader: shader.fragmentShader,\n blending: AdditiveBlending,\n transparent: true,\n depthWrite: false,\n })\n\n const mesh2 = new Mesh(geometry, material2)\n\n this.addElement = function (element) {\n elements.push(element)\n }\n\n //\n\n const scale = new Vector2()\n const screenPositionPixels = new Vector2()\n const validArea = new Box2()\n const viewport = new Vector4()\n\n this.onBeforeRender = function (renderer, scene, camera) {\n renderer.getCurrentViewport(viewport)\n\n const invAspect = viewport.w / viewport.z\n const halfViewportWidth = viewport.z / 2.0\n const halfViewportHeight = viewport.w / 2.0\n\n let size = 16 / viewport.w\n scale.set(size * invAspect, size)\n\n validArea.min.set(viewport.x, viewport.y)\n validArea.max.set(viewport.x + (viewport.z - 16), viewport.y + (viewport.w - 16))\n\n // calculate position in screen space\n\n positionView.setFromMatrixPosition(this.matrixWorld)\n positionView.applyMatrix4(camera.matrixWorldInverse)\n\n if (positionView.z > 0) return // lensflare is behind the camera\n\n positionScreen.copy(positionView).applyMatrix4(camera.projectionMatrix)\n\n // horizontal and vertical coordinate of the lower left corner of the pixels to copy\n\n screenPositionPixels.x = viewport.x + positionScreen.x * halfViewportWidth + halfViewportWidth - 8\n screenPositionPixels.y = viewport.y + positionScreen.y * halfViewportHeight + halfViewportHeight - 8\n\n // screen cull\n\n if (validArea.containsPoint(screenPositionPixels)) {\n // save current RGB to temp texture\n\n renderer.copyFramebufferToTexture(screenPositionPixels, tempMap)\n\n // render pink quad\n\n let uniforms = material1a.uniforms\n uniforms['scale'].value = scale\n uniforms['screenPosition'].value = positionScreen\n\n renderer.renderBufferDirect(camera, null, geometry, material1a, mesh1, null)\n\n // copy result to occlusionMap\n\n renderer.copyFramebufferToTexture(screenPositionPixels, occlusionMap)\n\n // restore graphics\n\n uniforms = material1b.uniforms\n uniforms['scale'].value = scale\n uniforms['screenPosition'].value = positionScreen\n\n renderer.renderBufferDirect(camera, null, geometry, material1b, mesh1, null)\n\n // render elements\n\n const vecX = -positionScreen.x * 2\n const vecY = -positionScreen.y * 2\n\n for (let i = 0, l = elements.length; i < l; i++) {\n const element = elements[i]\n\n const uniforms = material2.uniforms\n\n uniforms['color'].value.copy(element.color)\n uniforms['map'].value = element.texture\n uniforms['screenPosition'].value.x = positionScreen.x + vecX * element.distance\n uniforms['screenPosition'].value.y = positionScreen.y + vecY * element.distance\n\n size = element.size / viewport.w\n const invAspect = viewport.w / viewport.z\n\n uniforms['scale'].value.set(size * invAspect, size)\n\n material2.uniformsNeedUpdate = true\n\n renderer.renderBufferDirect(camera, null, geometry, material2, mesh2, null)\n }\n }\n }\n\n this.dispose = function () {\n material1a.dispose()\n material1b.dispose()\n material2.dispose()\n\n tempMap.dispose()\n occlusionMap.dispose()\n\n for (let i = 0, l = elements.length; i < l; i++) {\n elements[i].texture.dispose()\n }\n }\n }\n }\n\n const _geometry = new BufferGeometry()\n const interleavedBuffer = new InterleavedBuffer(\n new Float32Array([-1, -1, 0, 0, 0, 1, -1, 0, 1, 0, 1, 1, 0, 1, 1, -1, 1, 0, 0, 1]),\n 5,\n )\n\n _geometry.setIndex([0, 1, 2, 0, 2, 3])\n _geometry.setAttribute('position', new InterleavedBufferAttribute(interleavedBuffer, 3, 0, false))\n _geometry.setAttribute('uv', new InterleavedBufferAttribute(interleavedBuffer, 2, 3, false))\n\n Lensflare.Geometry = _geometry\n\n return Lensflare\n})()\n\n//\n\nconst LensflareElement = /* @__PURE__ */ (() => {\n class LensflareElement {\n constructor(texture, size = 1, distance = 0, color = new Color(0xffffff)) {\n this.texture = texture\n this.size = size\n this.distance = distance\n this.color = color\n }\n }\n\n LensflareElement.Shader = {\n uniforms: {\n map: { value: null },\n occlusionMap: { value: null },\n color: { value: null },\n scale: { value: null },\n screenPosition: { value: null },\n },\n\n vertexShader: /* glsl */ `\n\n precision highp float;\n\n uniform vec3 screenPosition;\n uniform vec2 scale;\n\n uniform sampler2D occlusionMap;\n\n attribute vec3 position;\n attribute vec2 uv;\n\n varying vec2 vUV;\n varying float vVisibility;\n\n void main() {\n\n vUV = uv;\n\n vec2 pos = position.xy;\n\n vec4 visibility = texture2D( occlusionMap, vec2( 0.1, 0.1 ) );\n visibility += texture2D( occlusionMap, vec2( 0.5, 0.1 ) );\n visibility += texture2D( occlusionMap, vec2( 0.9, 0.1 ) );\n visibility += texture2D( occlusionMap, vec2( 0.9, 0.5 ) );\n visibility += texture2D( occlusionMap, vec2( 0.9, 0.9 ) );\n visibility += texture2D( occlusionMap, vec2( 0.5, 0.9 ) );\n visibility += texture2D( occlusionMap, vec2( 0.1, 0.9 ) );\n visibility += texture2D( occlusionMap, vec2( 0.1, 0.5 ) );\n visibility += texture2D( occlusionMap, vec2( 0.5, 0.5 ) );\n\n vVisibility = visibility.r / 9.0;\n vVisibility *= 1.0 - visibility.g / 9.0;\n vVisibility *= visibility.b / 9.0;\n\n gl_Position = vec4( ( pos * scale + screenPosition.xy ).xy, screenPosition.z, 1.0 );\n\n }\n `,\n\n fragmentShader: /* glsl */ `\n\n precision highp float;\n\n uniform sampler2D map;\n uniform vec3 color;\n\n varying vec2 vUV;\n varying float vVisibility;\n\n void main() {\n\n vec4 texture = texture2D( map, vUV );\n texture.a *= vVisibility;\n gl_FragColor = texture;\n gl_FragColor.rgb *= color;\n\n }\n `,\n }\n\n return LensflareElement\n})()\n\nexport { Lensflare, LensflareElement }\n"],"names":["Lensflare","uniforms","invAspect","LensflareElement"],"mappings":"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"}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import type { Material, Object3D, Vector3 } from 'three'
|
2
|
+
|
3
|
+
import type { LightningStrike, RayParameters } from '../geometries/LightningStrike.d.cts'
|
4
|
+
|
5
|
+
export interface StormParams {
|
6
|
+
size?: number
|
7
|
+
minHeight?: number
|
8
|
+
maxHeight?: number
|
9
|
+
maxSlope?: number
|
10
|
+
|
11
|
+
maxLightnings?: number
|
12
|
+
|
13
|
+
lightningMinPeriod?: number
|
14
|
+
lightningMaxPeriod?: number
|
15
|
+
lightningMinDuration?: number
|
16
|
+
lightningMaxDuration?: number
|
17
|
+
|
18
|
+
lightningParameters?: RayParameters
|
19
|
+
lightningMaterial?: Material
|
20
|
+
|
21
|
+
isEternal?: boolean
|
22
|
+
|
23
|
+
onRayPosition?: (source: Vector3, dest: Vector3) => void
|
24
|
+
onLightningDown?: (lightning: LightningStrike) => void
|
25
|
+
}
|
26
|
+
|
27
|
+
export class LightningStorm extends Object3D {
|
28
|
+
constructor(stormParams?: StormParams)
|
29
|
+
update(time: number): void
|
30
|
+
copy(source: LightningStorm, recursive?: boolean): this
|
31
|
+
clone(): this
|
32
|
+
}
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import { Material, Object3D, Vector3 } from 'three'
|
1
|
+
import type { Material, Object3D, Vector3 } from 'three'
|
2
2
|
|
3
|
-
import { LightningStrike, RayParameters } from '../geometries/LightningStrike'
|
3
|
+
import type { LightningStrike, RayParameters } from '../geometries/LightningStrike.d.ts'
|
4
4
|
|
5
5
|
export interface StormParams {
|
6
6
|
size?: number
|
@@ -0,0 +1,76 @@
|
|
1
|
+
import type { BufferGeometry, Material, Mesh, Color } from 'three'
|
2
|
+
|
3
|
+
export class MarchingCubes extends Mesh {
|
4
|
+
constructor(
|
5
|
+
resolution: number,
|
6
|
+
material: Material,
|
7
|
+
enableUvs?: boolean,
|
8
|
+
enableColors?: boolean,
|
9
|
+
maxPolyCount?: number,
|
10
|
+
)
|
11
|
+
|
12
|
+
enableUvs: boolean
|
13
|
+
enableColors: boolean
|
14
|
+
|
15
|
+
resolution: number
|
16
|
+
|
17
|
+
// parameters
|
18
|
+
|
19
|
+
isolation: number
|
20
|
+
|
21
|
+
// size of field, 32 is pushing it in Javascript :)
|
22
|
+
|
23
|
+
size: number
|
24
|
+
size2: number
|
25
|
+
size3: number
|
26
|
+
halfsize: number
|
27
|
+
|
28
|
+
// deltas
|
29
|
+
|
30
|
+
delta: number
|
31
|
+
yd: number
|
32
|
+
zd: number
|
33
|
+
|
34
|
+
field: Float32Array
|
35
|
+
normal_cache: Float32Array
|
36
|
+
palette: Float32Array
|
37
|
+
|
38
|
+
maxCount: number
|
39
|
+
count: number
|
40
|
+
|
41
|
+
hasPositions: boolean
|
42
|
+
hasNormals: boolean
|
43
|
+
hasColors: boolean
|
44
|
+
hasUvs: boolean
|
45
|
+
|
46
|
+
positionArray: Float32Array
|
47
|
+
normalArray: Float32Array
|
48
|
+
|
49
|
+
uvArray: Float32Array
|
50
|
+
colorArray: Float32Array
|
51
|
+
|
52
|
+
begin(): void
|
53
|
+
end(): void
|
54
|
+
|
55
|
+
init(resolution: number): void
|
56
|
+
|
57
|
+
addBall(ballx: number, bally: number, ballz: number, strength: number, subtract: number, colors?: Color): void
|
58
|
+
|
59
|
+
addPlaneX(strength: number, subtract: number): void
|
60
|
+
addPlaneY(strength: number, subtract: number): void
|
61
|
+
addPlaneZ(strength: number, subtract: number): void
|
62
|
+
|
63
|
+
setCell(x: number, y: number, z: number, value: number): void
|
64
|
+
getCell(x: number, y: number, z: number): number
|
65
|
+
|
66
|
+
blur(intensity: number): void
|
67
|
+
|
68
|
+
reset(): void
|
69
|
+
update(): void
|
70
|
+
render(renderCallback: any): void
|
71
|
+
generateGeometry(): BufferGeometry
|
72
|
+
generateBufferGeometry(): BufferGeometry
|
73
|
+
}
|
74
|
+
|
75
|
+
export const edgeTable: Int32Array[]
|
76
|
+
export const triTable: Int32Array[]
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import type { Mesh, BufferGeometry, Color, WebGLRenderTarget, PerspectiveCamera } from 'three'
|
2
|
+
import type { TextureEncoding } from '../types/shared.d.cts'
|
3
|
+
|
4
|
+
export interface ReflectorOptions {
|
5
|
+
color?: Color | string | number
|
6
|
+
textureWidth?: number
|
7
|
+
textureHeight?: number
|
8
|
+
clipBias?: number
|
9
|
+
shader?: object
|
10
|
+
encoding?: TextureEncoding
|
11
|
+
multisample?: number
|
12
|
+
}
|
13
|
+
|
14
|
+
export class Reflector extends Mesh {
|
15
|
+
type: 'Reflector'
|
16
|
+
camera: PerspectiveCamera
|
17
|
+
|
18
|
+
constructor(geometry?: BufferGeometry, options?: ReflectorOptions)
|
19
|
+
|
20
|
+
getRenderTarget(): WebGLRenderTarget
|
21
|
+
|
22
|
+
dispose(): void
|
23
|
+
}
|
package/objects/Reflector.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
import { Mesh, BufferGeometry, Color, WebGLRenderTarget, PerspectiveCamera } from 'three'
|
2
|
-
import { TextureEncoding } from '../types/shared'
|
1
|
+
import type { Mesh, BufferGeometry, Color, WebGLRenderTarget, PerspectiveCamera } from 'three'
|
2
|
+
import type { TextureEncoding } from '../types/shared.d.ts'
|
3
3
|
|
4
4
|
export interface ReflectorOptions {
|
5
5
|
color?: Color | string | number
|
@@ -0,0 +1,48 @@
|
|
1
|
+
import type { Mesh, ShaderMaterial, WebGLRenderTarget, BufferGeometry, WebGLRenderer, Scene, Camera, IUniform } from 'three'
|
2
|
+
|
3
|
+
export interface ReflectorShader {
|
4
|
+
defines: {
|
5
|
+
DISTANCE_ATTENUATION: boolean
|
6
|
+
FRESNEL: boolean
|
7
|
+
}
|
8
|
+
uniforms: {
|
9
|
+
[key: string]: IUniform
|
10
|
+
}
|
11
|
+
vertexShader: string
|
12
|
+
fragmentShader: string
|
13
|
+
}
|
14
|
+
|
15
|
+
export interface ReflectorForSSRPassOptions {
|
16
|
+
clipBias?: number | undefined
|
17
|
+
textureWidth?: number | undefined
|
18
|
+
textureHeight?: number | undefined
|
19
|
+
color?: number | undefined
|
20
|
+
useDepthTexture?: boolean | undefined
|
21
|
+
shader?: ReflectorShader | undefined
|
22
|
+
}
|
23
|
+
|
24
|
+
export class ReflectorForSSRPass<TGeometry extends BufferGeometry = BufferGeometry> extends Mesh<TGeometry> {
|
25
|
+
type: 'ReflectorForSSRPass'
|
26
|
+
options: ReflectorForSSRPassOptions
|
27
|
+
|
28
|
+
static ReflectorShader: ReflectorShader
|
29
|
+
|
30
|
+
needsUpdate: boolean
|
31
|
+
maxDistance: number
|
32
|
+
opacity: number
|
33
|
+
|
34
|
+
get distanceAttenuation(): boolean
|
35
|
+
set distanceAttenuation(val: boolean)
|
36
|
+
get fresnel(): boolean
|
37
|
+
set fresnel(val: boolean)
|
38
|
+
|
39
|
+
material: ShaderMaterial
|
40
|
+
|
41
|
+
renderTarget: WebGLRenderTarget
|
42
|
+
|
43
|
+
constructor(geometry: TGeometry, options: ReflectorForSSRPassOptions)
|
44
|
+
|
45
|
+
doRender: (renderer: WebGLRenderer, scene: Scene, camera: Camera) => void
|
46
|
+
|
47
|
+
getRenderTarget: () => WebGLRenderTarget
|
48
|
+
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Mesh, ShaderMaterial, WebGLRenderTarget, BufferGeometry, WebGLRenderer, Scene, Camera, IUniform } from 'three'
|
1
|
+
import type { Mesh, ShaderMaterial, WebGLRenderTarget, BufferGeometry, WebGLRenderer, Scene, Camera, IUniform } from 'three'
|
2
2
|
|
3
3
|
export interface ReflectorShader {
|
4
4
|
defines: {
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import type { BufferGeometry } from 'three';
|
2
|
+
import type { Reflector, ReflectorOptions } from '../objects/Reflector.d.cts';
|
3
|
+
declare class ReflectorRTT extends Reflector {
|
4
|
+
constructor(geometry?: BufferGeometry, options?: ReflectorOptions);
|
5
|
+
}
|
6
|
+
export { type ReflectorRTT };
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import { BufferGeometry } from 'three';
|
2
|
-
import { Reflector, ReflectorOptions } from '../objects/Reflector';
|
1
|
+
import type { BufferGeometry } from 'three';
|
2
|
+
import type { Reflector, ReflectorOptions } from '../objects/Reflector.d.ts';
|
3
3
|
declare class ReflectorRTT extends Reflector {
|
4
4
|
constructor(geometry?: BufferGeometry, options?: ReflectorOptions);
|
5
5
|
}
|
6
|
-
export { ReflectorRTT };
|
6
|
+
export { type ReflectorRTT };
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import type { Mesh, BufferGeometry, Color, WebGLRenderTarget, PerspectiveCamera } from 'three'
|
2
|
+
import type { TextureEncoding } from '../types/shared.d.cts'
|
3
|
+
|
4
|
+
export interface RefractorOptions {
|
5
|
+
color?: Color | string | number
|
6
|
+
textureWidth?: number
|
7
|
+
textureHeight?: number
|
8
|
+
clipBias?: number
|
9
|
+
shader?: object
|
10
|
+
encoding?: TextureEncoding
|
11
|
+
multisample?: number
|
12
|
+
}
|
13
|
+
|
14
|
+
export class Refractor extends Mesh {
|
15
|
+
type: 'Refractor'
|
16
|
+
camera: PerspectiveCamera
|
17
|
+
|
18
|
+
constructor(geometry?: BufferGeometry, options?: RefractorOptions)
|
19
|
+
|
20
|
+
getRenderTarget(): WebGLRenderTarget
|
21
|
+
|
22
|
+
dispose(): void
|
23
|
+
}
|
package/objects/Refractor.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
import { Mesh, BufferGeometry, Color, WebGLRenderTarget, PerspectiveCamera } from 'three'
|
2
|
-
import { TextureEncoding } from '../types/shared'
|
1
|
+
import type { Mesh, BufferGeometry, Color, WebGLRenderTarget, PerspectiveCamera } from 'three'
|
2
|
+
import type { TextureEncoding } from '../types/shared.d.ts'
|
3
3
|
|
4
4
|
export interface RefractorOptions {
|
5
5
|
color?: Color | string | number
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import type { Mesh, Plane, Vector4, Matrix4, MeshBasicMaterial, BufferGeometry } from 'three'
|
2
|
+
|
3
|
+
export class ShadowMesh extends Mesh<BufferGeometry, MeshBasicMaterial> {
|
4
|
+
readonly isShadowMesh: true
|
5
|
+
meshMatrix: Matrix4
|
6
|
+
|
7
|
+
constructor(mesh: Mesh)
|
8
|
+
|
9
|
+
update(plane: Plane, lightPosition4D: Vector4): void
|
10
|
+
}
|
package/objects/ShadowMesh.d.ts
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Mesh, Plane, Vector4, Matrix4, MeshBasicMaterial, BufferGeometry } from 'three'
|
1
|
+
import type { Mesh, Plane, Vector4, Matrix4, MeshBasicMaterial, BufferGeometry } from 'three'
|
2
2
|
|
3
3
|
export class ShadowMesh extends Mesh<BufferGeometry, MeshBasicMaterial> {
|
4
4
|
readonly isShadowMesh: true
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import type { Mesh, BoxGeometry, ShaderMaterial, Vector3 } from 'three'
|
2
|
+
|
3
|
+
declare class Sky extends Mesh<BoxGeometry, ShaderMaterial> {
|
4
|
+
static SkyShader: {
|
5
|
+
uniforms: {
|
6
|
+
turbidity: { value: number }
|
7
|
+
rayleigh: { value: number }
|
8
|
+
mieCoefficient: { value: number }
|
9
|
+
mieDirectionalG: { value: number }
|
10
|
+
sunPosition: { value: Vector3 }
|
11
|
+
up: { value: Vector3 }
|
12
|
+
}
|
13
|
+
}
|
14
|
+
|
15
|
+
static material: ShaderMaterial
|
16
|
+
}
|
17
|
+
|
18
|
+
export { type Sky }
|
package/objects/Sky.d.ts
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Mesh, BoxGeometry, ShaderMaterial, Vector3 } from 'three'
|
1
|
+
import type { Mesh, BoxGeometry, ShaderMaterial, Vector3 } from 'three'
|
2
2
|
|
3
3
|
declare class Sky extends Mesh<BoxGeometry, ShaderMaterial> {
|
4
4
|
static SkyShader: {
|
@@ -15,4 +15,4 @@ declare class Sky extends Mesh<BoxGeometry, ShaderMaterial> {
|
|
15
15
|
static material: ShaderMaterial
|
16
16
|
}
|
17
17
|
|
18
|
-
export { Sky }
|
18
|
+
export { type Sky }
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import type { BufferGeometry, Color, Mesh, ShaderMaterial, Side, Texture, Vector3 } from 'three'
|
2
|
+
|
3
|
+
export interface WaterOptions {
|
4
|
+
textureWidth?: number
|
5
|
+
textureHeight?: number
|
6
|
+
clipBias?: number
|
7
|
+
alpha?: number
|
8
|
+
time?: number
|
9
|
+
waterNormals?: Texture
|
10
|
+
sunDirection?: Vector3
|
11
|
+
sunColor?: Color | string | number
|
12
|
+
waterColor?: Color | string | number
|
13
|
+
eye?: Vector3
|
14
|
+
distortionScale?: number
|
15
|
+
side?: Side
|
16
|
+
fog?: boolean
|
17
|
+
}
|
18
|
+
|
19
|
+
export class Water extends Mesh {
|
20
|
+
material: ShaderMaterial
|
21
|
+
constructor(geometry: BufferGeometry, options: WaterOptions)
|
22
|
+
}
|
package/objects/Water.d.ts
CHANGED
@@ -0,0 +1,23 @@
|
|
1
|
+
import type { BufferGeometry, Color, Mesh, ShaderMaterial, Texture, Vector2 } from 'three'
|
2
|
+
import type { TextureEncoding } from '../types/shared.d.cts'
|
3
|
+
|
4
|
+
export interface Water2Options {
|
5
|
+
color?: Color | string | number
|
6
|
+
textureWidth?: number
|
7
|
+
textureHeight?: number
|
8
|
+
clipBias?: number
|
9
|
+
flowDirection?: Vector2
|
10
|
+
flowSpeed?: number
|
11
|
+
reflectivity?: number
|
12
|
+
scale?: number
|
13
|
+
shader?: object
|
14
|
+
flowMap?: Texture
|
15
|
+
normalMap0?: Texture
|
16
|
+
normalMap1?: Texture
|
17
|
+
encoding?: TextureEncoding
|
18
|
+
}
|
19
|
+
|
20
|
+
export class Water2 extends Mesh {
|
21
|
+
material: ShaderMaterial
|
22
|
+
constructor(geometry: BufferGeometry, options: Water2Options)
|
23
|
+
}
|
package/objects/Water2.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
import { BufferGeometry, Color, Mesh, ShaderMaterial, Texture, Vector2 } from 'three'
|
2
|
-
import { TextureEncoding } from '../types/shared'
|
1
|
+
import type { BufferGeometry, Color, Mesh, ShaderMaterial, Texture, Vector2 } from 'three'
|
2
|
+
import type { TextureEncoding } from '../types/shared.d.ts'
|
3
3
|
|
4
4
|
export interface Water2Options {
|
5
5
|
color?: Color | string | number
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "three-stdlib",
|
3
|
-
"version": "2.35.
|
3
|
+
"version": "2.35.8",
|
4
4
|
"description": "stand-alone library of threejs examples",
|
5
5
|
"keywords": [
|
6
6
|
"three",
|
@@ -22,9 +22,14 @@
|
|
22
22
|
"main": "./index.cjs",
|
23
23
|
"module": "./index.js",
|
24
24
|
"exports": {
|
25
|
-
"
|
26
|
-
|
27
|
-
|
25
|
+
"require": {
|
26
|
+
"types": "./index.d.cts",
|
27
|
+
"default": "./index.cjs"
|
28
|
+
},
|
29
|
+
"default": {
|
30
|
+
"types": "./index.d.ts",
|
31
|
+
"default": "./index.js"
|
32
|
+
}
|
28
33
|
},
|
29
34
|
"sideEffects": false,
|
30
35
|
"devDependencies": {
|
@@ -34,6 +39,7 @@
|
|
34
39
|
"json": "^11.0.0",
|
35
40
|
"prettier": "^2.2.1",
|
36
41
|
"rimraf": "^3.0.2",
|
42
|
+
"shelljs": "^0.8.5",
|
37
43
|
"three": "^0.128.0",
|
38
44
|
"typescript": "^4.7.4",
|
39
45
|
"vite": "^4.3.8"
|
@@ -50,7 +56,7 @@
|
|
50
56
|
"three": ">=0.128.0"
|
51
57
|
},
|
52
58
|
"scripts": {
|
53
|
-
"build": "rimraf dist && vite build && tsc --emitDeclarationOnly && copyfiles -u 1 \"src/**/*.d.ts\" dist && copyfiles package.json README.md LICENSE dist && json -I -f dist/package.json -e \"this.private=undefined;this.type=\\\"module\\\";\"",
|
59
|
+
"build": "rimraf dist && vite build && tsc --emitDeclarationOnly && copyfiles -u 1 \"src/**/*.d.ts\" dist && copyfiles package.json README.md LICENSE dist && json -I -f dist/package.json -e \"this.private=undefined;this.type=\\\"module\\\";\" && node patch-ts.js",
|
54
60
|
"lint": "tsc --noEmit"
|
55
61
|
},
|
56
62
|
"type": "module"
|
package/physics/AmmoPhysics.d.ts
CHANGED
@@ -0,0 +1,29 @@
|
|
1
|
+
import type { WebGLRenderTarget, ShaderMaterial } from 'three'
|
2
|
+
|
3
|
+
import type { Pass, FullScreenQuad } from './Pass.d.cts'
|
4
|
+
|
5
|
+
export class AdaptiveToneMappingPass extends Pass {
|
6
|
+
constructor(adaptive?: boolean, resolution?: number)
|
7
|
+
adaptive: boolean
|
8
|
+
resolution: number
|
9
|
+
needsInit: number
|
10
|
+
luminanceRT: WebGLRenderTarget
|
11
|
+
previousLuminanceRT: WebGLRenderTarget
|
12
|
+
currentLuminanceRT: WebGLRenderTarget
|
13
|
+
copyUniforms: object
|
14
|
+
materialCopy: ShaderMaterial
|
15
|
+
materialLuminance: ShaderMaterial
|
16
|
+
adaptLuminanceShader: object
|
17
|
+
materialAdaptiveLum: ShaderMaterial
|
18
|
+
materialToneMap: ShaderMaterial
|
19
|
+
fsQuad: FullScreenQuad
|
20
|
+
|
21
|
+
reset(): void
|
22
|
+
setAdaptive(adaptive: boolean): void
|
23
|
+
setAdaptionRate(rate: number): void
|
24
|
+
setMinLuminance(minLum: number): void
|
25
|
+
setMaxLuminance(maxLum: number): void
|
26
|
+
setAverageLuminance(avgLum: number): void
|
27
|
+
setMiddleGrey(middleGrey: number): void
|
28
|
+
dispose(): void
|
29
|
+
}
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import { WebGLRenderTarget, ShaderMaterial } from 'three'
|
1
|
+
import type { WebGLRenderTarget, ShaderMaterial } from 'three'
|
2
2
|
|
3
|
-
import { Pass, FullScreenQuad } from './Pass'
|
3
|
+
import type { Pass, FullScreenQuad } from './Pass.d.ts'
|
4
4
|
|
5
5
|
export class AdaptiveToneMappingPass extends Pass {
|
6
6
|
constructor(adaptive?: boolean, resolution?: number)
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import type { MeshBasicMaterial, WebGLRenderer, ShaderMaterial, WebGLRenderTarget } from 'three';
|
2
|
+
import type { Pass, FullScreenQuad } from './Pass.d.cts';
|
3
|
+
declare class AfterimagePass extends Pass {
|
4
|
+
shader: import("../shaders/AfterimageShader").IAfterimageShader;
|
5
|
+
uniforms: any;
|
6
|
+
textureComp: WebGLRenderTarget;
|
7
|
+
textureOld: WebGLRenderTarget;
|
8
|
+
shaderMaterial: ShaderMaterial;
|
9
|
+
compFsQuad: FullScreenQuad<ShaderMaterial>;
|
10
|
+
copyFsQuad: FullScreenQuad<MeshBasicMaterial>;
|
11
|
+
constructor(damp?: number, shader?: import("../shaders/AfterimageShader").IAfterimageShader);
|
12
|
+
render(renderer: WebGLRenderer, writeBuffer: WebGLRenderTarget, readBuffer: WebGLRenderTarget): void;
|
13
|
+
setSize(width: number, height: number): void;
|
14
|
+
}
|
15
|
+
export { type AfterimagePass };
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { MeshBasicMaterial, WebGLRenderer, ShaderMaterial, WebGLRenderTarget } from 'three';
|
2
|
-
import { Pass, FullScreenQuad } from './Pass';
|
1
|
+
import type { MeshBasicMaterial, WebGLRenderer, ShaderMaterial, WebGLRenderTarget } from 'three';
|
2
|
+
import type { Pass, FullScreenQuad } from './Pass.d.ts';
|
3
3
|
declare class AfterimagePass extends Pass {
|
4
4
|
shader: import("../shaders/AfterimageShader").IAfterimageShader;
|
5
5
|
uniforms: any;
|
@@ -12,4 +12,4 @@ declare class AfterimagePass extends Pass {
|
|
12
12
|
render(renderer: WebGLRenderer, writeBuffer: WebGLRenderTarget, readBuffer: WebGLRenderTarget): void;
|
13
13
|
setSize(width: number, height: number): void;
|
14
14
|
}
|
15
|
-
export { AfterimagePass };
|
15
|
+
export { type AfterimagePass };
|
@@ -0,0 +1,29 @@
|
|
1
|
+
import type { Pass, FullScreenQuad } from './Pass.d.cts';
|
2
|
+
import type { IUniform, ShaderMaterial, Vector2, WebGLRenderer, WebGLRenderTarget } from 'three';
|
3
|
+
import type { ConvolutionShader } from '../shaders/ConvolutionShader.d.cts';
|
4
|
+
declare class BloomPass extends Pass {
|
5
|
+
renderTargetX: WebGLRenderTarget;
|
6
|
+
renderTargetY: WebGLRenderTarget;
|
7
|
+
materialCombine: ShaderMaterial;
|
8
|
+
materialConvolution: ShaderMaterial;
|
9
|
+
fsQuad: FullScreenQuad;
|
10
|
+
combineUniforms: Record<keyof typeof CombineShader['uniforms'], IUniform<any>>;
|
11
|
+
convolutionUniforms: Record<keyof typeof ConvolutionShader['uniforms'], IUniform<any>>;
|
12
|
+
blurX: Vector2;
|
13
|
+
blurY: Vector2;
|
14
|
+
constructor(strength?: number, kernelSize?: number, sigma?: number, resolution?: number);
|
15
|
+
render(renderer: WebGLRenderer, writeBuffer: WebGLRenderTarget, readBuffer: WebGLRenderTarget, deltaTime: number, maskActive: boolean): void;
|
16
|
+
}
|
17
|
+
declare const CombineShader: {
|
18
|
+
uniforms: {
|
19
|
+
tDiffuse: {
|
20
|
+
value: null;
|
21
|
+
};
|
22
|
+
strength: {
|
23
|
+
value: number;
|
24
|
+
};
|
25
|
+
};
|
26
|
+
vertexShader: string;
|
27
|
+
fragmentShader: string;
|
28
|
+
};
|
29
|
+
export { type BloomPass };
|