@3driseai/3drise-viewer 0.1.28 → 0.1.30
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/dist/animationsV2/ClipPlayer.d.ts.map +1 -1
- package/dist/animationsV2/ClipPlayer.js +13 -9
- package/dist/animationsV2/ClipsRuntime.d.ts +48 -3
- package/dist/animationsV2/ClipsRuntime.d.ts.map +1 -1
- package/dist/animationsV2/ClipsRuntime.js +239 -57
- package/dist/animationsV2/appliers.d.ts.map +1 -1
- package/dist/animationsV2/appliers.js +21 -5
- package/dist/animationsV2/clipUtils.js +1 -1
- package/dist/animationsV2/index.d.ts +1 -1
- package/dist/animationsV2/index.d.ts.map +1 -1
- package/dist/animationsV2/normalize.d.ts.map +1 -1
- package/dist/animationsV2/normalize.js +7 -3
- package/dist/animationsV2/sequenceUtils.d.ts +49 -6
- package/dist/animationsV2/sequenceUtils.d.ts.map +1 -1
- package/dist/animationsV2/sequenceUtils.js +68 -12
- package/dist/animationsV2/types.d.ts +28 -12
- package/dist/animationsV2/types.d.ts.map +1 -1
- package/dist/api/sceneHandle.d.ts +35 -1
- package/dist/api/sceneHandle.d.ts.map +1 -1
- package/dist/api/sceneHandle.js +88 -17
- package/dist/components/AdvancedGrid.d.ts +1 -5
- package/dist/components/AdvancedGrid.d.ts.map +1 -1
- package/dist/components/AdvancedGrid.js +6 -35
- package/dist/components/AnimatedObject.d.ts.map +1 -1
- package/dist/components/AnimatedObject.js +9 -4
- package/dist/components/ApollonianGrid.d.ts +1 -1
- package/dist/components/ApollonianGrid.d.ts.map +1 -1
- package/dist/components/ApollonianGrid.js +3 -28
- package/dist/components/ChladniGrid.d.ts +1 -1
- package/dist/components/ChladniGrid.d.ts.map +1 -1
- package/dist/components/ChladniGrid.js +6 -35
- package/dist/components/CircuitGrid.d.ts +1 -1
- package/dist/components/CircuitGrid.d.ts.map +1 -1
- package/dist/components/CircuitGrid.js +6 -34
- package/dist/components/ConformalGrid.d.ts +1 -1
- package/dist/components/ConformalGrid.d.ts.map +1 -1
- package/dist/components/ConformalGrid.js +3 -34
- package/dist/components/ContourGrid.d.ts +1 -1
- package/dist/components/ContourGrid.d.ts.map +1 -1
- package/dist/components/ContourGrid.js +6 -34
- package/dist/components/CustomPrimitive.js +1 -1
- package/dist/components/EffectsGenerator.d.ts.map +1 -1
- package/dist/components/EffectsGenerator.js +43 -38
- package/dist/components/EnvironmentObject.d.ts.map +1 -1
- package/dist/components/EnvironmentObject.js +9 -7
- package/dist/components/FlowNetGrid.d.ts +1 -1
- package/dist/components/FlowNetGrid.d.ts.map +1 -1
- package/dist/components/FlowNetGrid.js +6 -34
- package/dist/components/FractalGrid.d.ts +1 -1
- package/dist/components/FractalGrid.d.ts.map +1 -1
- package/dist/components/FractalGrid.js +6 -37
- package/dist/components/Galaxy.d.ts.map +1 -1
- package/dist/components/Galaxy.js +9 -23
- package/dist/components/GeometryShape.d.ts.map +1 -1
- package/dist/components/GeometryShape.js +22 -2
- package/dist/components/GirihGrid.d.ts +1 -1
- package/dist/components/GirihGrid.d.ts.map +1 -1
- package/dist/components/GirihGrid.js +6 -35
- package/dist/components/GravWaveGrid.d.ts +1 -1
- package/dist/components/GravWaveGrid.d.ts.map +1 -1
- package/dist/components/GravWaveGrid.js +6 -35
- package/dist/components/HexGrid.d.ts +1 -5
- package/dist/components/HexGrid.d.ts.map +1 -1
- package/dist/components/HexGrid.js +6 -36
- package/dist/components/HilbertGrid.d.ts +1 -1
- package/dist/components/HilbertGrid.d.ts.map +1 -1
- package/dist/components/HilbertGrid.js +3 -30
- package/dist/components/HyperbolicGrid.d.ts +1 -1
- package/dist/components/HyperbolicGrid.d.ts.map +1 -1
- package/dist/components/HyperbolicGrid.js +6 -34
- package/dist/components/LandObject.d.ts +9 -0
- package/dist/components/LandObject.d.ts.map +1 -0
- package/dist/components/LandObject.js +15 -0
- package/dist/components/LensingGrid.d.ts +1 -1
- package/dist/components/LensingGrid.d.ts.map +1 -1
- package/dist/components/LensingGrid.js +3 -29
- package/dist/components/LightsManager.d.ts.map +1 -1
- package/dist/components/LightsManager.js +8 -0
- package/dist/components/ModelBoundary.d.ts +2 -0
- package/dist/components/ModelBoundary.d.ts.map +1 -1
- package/dist/components/ModelBoundary.js +3 -0
- package/dist/components/ModelPrimitive.d.ts.map +1 -1
- package/dist/components/ModelPrimitive.js +6 -0
- package/dist/components/MoireGrid.d.ts +1 -1
- package/dist/components/MoireGrid.d.ts.map +1 -1
- package/dist/components/MoireGrid.js +6 -35
- package/dist/components/MoonDisc.d.ts +11 -0
- package/dist/components/MoonDisc.d.ts.map +1 -0
- package/dist/components/MoonDisc.js +128 -0
- package/dist/components/ObjectNode.d.ts.map +1 -1
- package/dist/components/ObjectNode.js +10 -10
- package/dist/components/ObjectsRenderer.d.ts.map +1 -1
- package/dist/components/ObjectsRenderer.js +7 -5
- package/dist/components/OceanBuilder.d.ts.map +1 -1
- package/dist/components/OceanBuilder.js +2 -0
- package/dist/components/ParastichyGrid.d.ts +1 -1
- package/dist/components/ParastichyGrid.d.ts.map +1 -1
- package/dist/components/ParastichyGrid.js +3 -30
- package/dist/components/ParticlesGenerator.d.ts.map +1 -1
- package/dist/components/ParticlesGenerator.js +44 -24
- package/dist/components/PhyllotaxisGrid.d.ts +1 -1
- package/dist/components/PhyllotaxisGrid.d.ts.map +1 -1
- package/dist/components/PhyllotaxisGrid.js +3 -32
- package/dist/components/PickVolume.d.ts +17 -0
- package/dist/components/PickVolume.d.ts.map +1 -0
- package/dist/components/PickVolume.js +20 -0
- package/dist/components/ProjectLoader.d.ts +5 -3
- package/dist/components/ProjectLoader.d.ts.map +1 -1
- package/dist/components/ProjectLoader.js +6 -3
- package/dist/components/QuasiGrid.d.ts +1 -1
- package/dist/components/QuasiGrid.d.ts.map +1 -1
- package/dist/components/QuasiGrid.js +6 -33
- package/dist/components/RadarGrid.d.ts +1 -1
- package/dist/components/RadarGrid.d.ts.map +1 -1
- package/dist/components/RadarGrid.js +6 -34
- package/dist/components/ReactionDiffusionGrid.d.ts +1 -1
- package/dist/components/ReactionDiffusionGrid.d.ts.map +1 -1
- package/dist/components/ReactionDiffusionGrid.js +6 -35
- package/dist/components/SceneBuilder.d.ts +25 -3
- package/dist/components/SceneBuilder.d.ts.map +1 -1
- package/dist/components/SceneBuilder.js +68 -38
- package/dist/components/SkyController.d.ts +25 -1
- package/dist/components/SkyController.d.ts.map +1 -1
- package/dist/components/SkyController.js +189 -130
- package/dist/components/SkyMesh.d.ts.map +1 -1
- package/dist/components/SkyMesh.js +26 -1
- package/dist/components/SkyStars.d.ts +11 -0
- package/dist/components/SkyStars.d.ts.map +1 -0
- package/dist/components/SkyStars.js +268 -0
- package/dist/components/SkySystem.d.ts +3 -3
- package/dist/components/SkySystem.d.ts.map +1 -1
- package/dist/components/SkySystem.js +8 -2
- package/dist/components/Sun.d.ts +15 -1
- package/dist/components/Sun.d.ts.map +1 -1
- package/dist/components/Sun.js +64 -3
- package/dist/components/SunLight.d.ts +6 -1
- package/dist/components/SunLight.d.ts.map +1 -1
- package/dist/components/SunLight.js +96 -44
- package/dist/components/TerrainBuilder.d.ts.map +1 -1
- package/dist/components/TerrainBuilder.js +2 -0
- package/dist/components/TextGenerator.d.ts +9 -0
- package/dist/components/TextGenerator.d.ts.map +1 -0
- package/dist/components/TextGenerator.js +30 -0
- package/dist/components/TruchetGrid.d.ts +1 -1
- package/dist/components/TruchetGrid.d.ts.map +1 -1
- package/dist/components/TruchetGrid.js +3 -30
- package/dist/components/VoronoiGrid.d.ts +1 -1
- package/dist/components/VoronoiGrid.d.ts.map +1 -1
- package/dist/components/VoronoiGrid.js +6 -33
- package/dist/components/WallpaperGrid.d.ts +1 -1
- package/dist/components/WallpaperGrid.d.ts.map +1 -1
- package/dist/components/WallpaperGrid.js +6 -35
- package/dist/components/environment/Rain.d.ts +15 -0
- package/dist/components/environment/Rain.d.ts.map +1 -0
- package/dist/components/environment/Rain.js +110 -0
- package/dist/components/environment/Rainbow.d.ts +20 -0
- package/dist/components/environment/Rainbow.d.ts.map +1 -0
- package/dist/components/environment/Rainbow.js +974 -0
- package/dist/components/environment/Sandstorm.d.ts +20 -0
- package/dist/components/environment/Sandstorm.d.ts.map +1 -0
- package/dist/components/environment/Sandstorm.js +776 -0
- package/dist/components/environment/Snow.d.ts +20 -0
- package/dist/components/environment/Snow.d.ts.map +1 -0
- package/dist/components/environment/Snow.js +609 -0
- package/dist/components/environment/Thunderstorm.d.ts +20 -0
- package/dist/components/environment/Thunderstorm.d.ts.map +1 -0
- package/dist/components/environment/Thunderstorm.js +731 -0
- package/dist/components/environment/Tornado.d.ts +20 -0
- package/dist/components/environment/Tornado.d.ts.map +1 -0
- package/dist/components/environment/Tornado.js +762 -0
- package/dist/components/environment/index.d.ts +13 -0
- package/dist/components/environment/index.d.ts.map +1 -0
- package/dist/components/environment/index.js +7 -0
- package/dist/components/index.d.ts +11 -18
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +9 -10
- package/dist/components/land/LandPatch.d.ts +15 -0
- package/dist/components/land/LandPatch.d.ts.map +1 -0
- package/dist/components/land/LandPatch.js +170 -0
- package/dist/components/land/index.d.ts +3 -0
- package/dist/components/land/index.d.ts.map +1 -0
- package/dist/components/land/index.js +1 -0
- package/dist/components/particles/BioluminescentWakeParticles.d.ts +5 -0
- package/dist/components/particles/BioluminescentWakeParticles.d.ts.map +1 -1
- package/dist/components/particles/BioluminescentWakeParticles.js +2 -1
- package/dist/components/particles/BrownianDustParticles.d.ts +5 -0
- package/dist/components/particles/BrownianDustParticles.d.ts.map +1 -1
- package/dist/components/particles/BrownianDustParticles.js +2 -0
- package/dist/components/particles/ChladniSandParticles.d.ts +5 -0
- package/dist/components/particles/ChladniSandParticles.d.ts.map +1 -1
- package/dist/components/particles/ChladniSandParticles.js +2 -1
- package/dist/components/particles/ElectronOrbitalsParticles.d.ts +5 -0
- package/dist/components/particles/ElectronOrbitalsParticles.d.ts.map +1 -1
- package/dist/components/particles/ElectronOrbitalsParticles.js +2 -1
- package/dist/components/particles/FaradayPowderParticles.d.ts +5 -0
- package/dist/components/particles/FaradayPowderParticles.d.ts.map +1 -1
- package/dist/components/particles/FaradayPowderParticles.js +2 -1
- package/dist/components/particles/GrinderSparksParticles.d.ts +5 -0
- package/dist/components/particles/GrinderSparksParticles.d.ts.map +1 -1
- package/dist/components/particles/GrinderSparksParticles.js +2 -1
- package/dist/components/particles/MagneticBottleParticles.d.ts +5 -0
- package/dist/components/particles/MagneticBottleParticles.d.ts.map +1 -1
- package/dist/components/particles/MagneticBottleParticles.js +2 -1
- package/dist/components/particles/NeonRainParticles.d.ts +5 -0
- package/dist/components/particles/NeonRainParticles.d.ts.map +1 -1
- package/dist/components/particles/NeonRainParticles.js +2 -1
- package/dist/components/particles/ShapeBurstParticles.d.ts +5 -0
- package/dist/components/particles/ShapeBurstParticles.d.ts.map +1 -1
- package/dist/components/particles/ShapeBurstParticles.js +2 -1
- package/dist/components/particles/ShapeFlowParticles.d.ts +5 -0
- package/dist/components/particles/ShapeFlowParticles.d.ts.map +1 -1
- package/dist/components/particles/ShapeFlowParticles.js +2 -1
- package/dist/components/particles/TidalStreamParticles.d.ts +5 -0
- package/dist/components/particles/TidalStreamParticles.d.ts.map +1 -1
- package/dist/components/particles/TidalStreamParticles.js +2 -0
- package/dist/components/space/Earth.d.ts +16 -0
- package/dist/components/space/Earth.d.ts.map +1 -0
- package/dist/components/space/Earth.js +75 -0
- package/dist/components/space/ShootingStar.d.ts +21 -0
- package/dist/components/space/ShootingStar.d.ts.map +1 -0
- package/dist/components/space/ShootingStar.js +101 -0
- package/dist/components/space/ShootingStars.d.ts +16 -0
- package/dist/components/space/ShootingStars.d.ts.map +1 -0
- package/dist/components/space/ShootingStars.js +71 -0
- package/dist/components/space/SolarSystem.d.ts +16 -0
- package/dist/components/space/SolarSystem.d.ts.map +1 -0
- package/dist/components/space/SolarSystem.js +141 -0
- package/dist/components/space/Stars.d.ts +20 -0
- package/dist/components/space/Stars.d.ts.map +1 -0
- package/dist/components/space/Stars.js +160 -0
- package/dist/components/space/index.d.ts +11 -0
- package/dist/components/space/index.d.ts.map +1 -0
- package/dist/components/space/index.js +8 -0
- package/dist/components/terrain/TerrainSurface.d.ts.map +1 -1
- package/dist/components/terrain/TerrainSurface.js +27 -3
- package/dist/components/terrain/types.d.ts +5 -1
- package/dist/components/terrain/types.d.ts.map +1 -1
- package/dist/components/text/BurnAwayText.d.ts +15 -0
- package/dist/components/text/BurnAwayText.d.ts.map +1 -0
- package/dist/components/text/BurnAwayText.js +4 -0
- package/dist/components/text/ChalkboardText.d.ts +15 -0
- package/dist/components/text/ChalkboardText.d.ts.map +1 -0
- package/dist/components/text/ChalkboardText.js +4 -0
- package/dist/components/text/ConstellationText.d.ts +15 -0
- package/dist/components/text/ConstellationText.d.ts.map +1 -0
- package/dist/components/text/ConstellationText.js +4 -0
- package/dist/components/text/EmbroideryText.d.ts +15 -0
- package/dist/components/text/EmbroideryText.d.ts.map +1 -0
- package/dist/components/text/EmbroideryText.js +4 -0
- package/dist/components/text/FourierSketchText.d.ts +15 -0
- package/dist/components/text/FourierSketchText.d.ts.map +1 -0
- package/dist/components/text/FourierSketchText.js +4 -0
- package/dist/components/text/FrostGrowthText.d.ts +15 -0
- package/dist/components/text/FrostGrowthText.d.ts.map +1 -0
- package/dist/components/text/FrostGrowthText.js +4 -0
- package/dist/components/text/HandwritingText.d.ts +15 -0
- package/dist/components/text/HandwritingText.d.ts.map +1 -0
- package/dist/components/text/HandwritingText.js +4 -0
- package/dist/components/text/InkBleedText.d.ts +15 -0
- package/dist/components/text/InkBleedText.d.ts.map +1 -0
- package/dist/components/text/InkBleedText.js +4 -0
- package/dist/components/text/LightPaintingText.d.ts +15 -0
- package/dist/components/text/LightPaintingText.d.ts.map +1 -0
- package/dist/components/text/LightPaintingText.js +4 -0
- package/dist/components/text/LiquidMetalText.d.ts +15 -0
- package/dist/components/text/LiquidMetalText.d.ts.map +1 -0
- package/dist/components/text/LiquidMetalText.js +4 -0
- package/dist/components/text/NeonTubeText.d.ts +15 -0
- package/dist/components/text/NeonTubeText.d.ts.map +1 -0
- package/dist/components/text/NeonTubeText.js +4 -0
- package/dist/components/text/PlainText.d.ts +15 -0
- package/dist/components/text/PlainText.d.ts.map +1 -0
- package/dist/components/text/PlainText.js +4 -0
- package/dist/components/text/PlasmaDischargeText.d.ts +15 -0
- package/dist/components/text/PlasmaDischargeText.d.ts.map +1 -0
- package/dist/components/text/PlasmaDischargeText.js +4 -0
- package/dist/components/text/TextObjectView.d.ts +14 -0
- package/dist/components/text/TextObjectView.d.ts.map +1 -0
- package/dist/components/text/TextObjectView.js +17 -0
- package/dist/components/text/engine/fieldkit.d.ts +24 -0
- package/dist/components/text/engine/fieldkit.d.ts.map +1 -0
- package/dist/components/text/engine/fieldkit.js +201 -0
- package/dist/components/text/engine/glyphs.d.ts +19 -0
- package/dist/components/text/engine/glyphs.d.ts.map +1 -0
- package/dist/components/text/engine/glyphs.js +269 -0
- package/dist/components/text/engine/looks/burnAway.d.ts +144 -0
- package/dist/components/text/engine/looks/burnAway.d.ts.map +1 -0
- package/dist/components/text/engine/looks/burnAway.js +593 -0
- package/dist/components/text/engine/looks/chalkboard.d.ts +135 -0
- package/dist/components/text/engine/looks/chalkboard.d.ts.map +1 -0
- package/dist/components/text/engine/looks/chalkboard.js +426 -0
- package/dist/components/text/engine/looks/constellation.d.ts +111 -0
- package/dist/components/text/engine/looks/constellation.d.ts.map +1 -0
- package/dist/components/text/engine/looks/constellation.js +496 -0
- package/dist/components/text/engine/looks/embroidery.d.ts +165 -0
- package/dist/components/text/engine/looks/embroidery.d.ts.map +1 -0
- package/dist/components/text/engine/looks/embroidery.js +645 -0
- package/dist/components/text/engine/looks/frostGrowth.d.ts +109 -0
- package/dist/components/text/engine/looks/frostGrowth.d.ts.map +1 -0
- package/dist/components/text/engine/looks/frostGrowth.js +727 -0
- package/dist/components/text/engine/looks/index.d.ts +2 -0
- package/dist/components/text/engine/looks/index.d.ts.map +1 -0
- package/dist/components/text/engine/looks/index.js +49 -0
- package/dist/components/text/engine/looks/inkBleed.d.ts +103 -0
- package/dist/components/text/engine/looks/inkBleed.d.ts.map +1 -0
- package/dist/components/text/engine/looks/inkBleed.js +590 -0
- package/dist/components/text/engine/looks/lightPainting.d.ts +132 -0
- package/dist/components/text/engine/looks/lightPainting.d.ts.map +1 -0
- package/dist/components/text/engine/looks/lightPainting.js +567 -0
- package/dist/components/text/engine/looks/liquidMetal.d.ts +135 -0
- package/dist/components/text/engine/looks/liquidMetal.d.ts.map +1 -0
- package/dist/components/text/engine/looks/liquidMetal.js +655 -0
- package/dist/components/text/engine/looks/plain.d.ts +146 -0
- package/dist/components/text/engine/looks/plain.d.ts.map +1 -0
- package/dist/components/text/engine/looks/plain.js +104 -0
- package/dist/components/text/engine/looks/plasmaDischarge.d.ts +126 -0
- package/dist/components/text/engine/looks/plasmaDischarge.d.ts.map +1 -0
- package/dist/components/text/engine/looks/plasmaDischarge.js +763 -0
- package/dist/components/text/engine/methods.d.ts +19 -0
- package/dist/components/text/engine/methods.d.ts.map +1 -0
- package/dist/components/text/engine/methods.js +126 -0
- package/dist/components/text/engine/playback.d.ts +40 -0
- package/dist/components/text/engine/playback.d.ts.map +1 -0
- package/dist/components/text/engine/playback.js +114 -0
- package/dist/components/text/engine/ribbon.d.ts +58 -0
- package/dist/components/text/engine/ribbon.d.ts.map +1 -0
- package/dist/components/text/engine/ribbon.js +250 -0
- package/dist/components/text/engine/variants.d.ts +159 -0
- package/dist/components/text/engine/variants.d.ts.map +1 -0
- package/dist/components/text/engine/variants.js +378 -0
- package/dist/components/text/fonts/architects-daughter.outline.d.ts +3 -0
- package/dist/components/text/fonts/architects-daughter.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/architects-daughter.outline.js +4 -0
- package/dist/components/text/fonts/architects-daughter.strokes.d.ts +3 -0
- package/dist/components/text/fonts/architects-daughter.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/architects-daughter.strokes.js +4 -0
- package/dist/components/text/fonts/bebas-neue.outline.d.ts +3 -0
- package/dist/components/text/fonts/bebas-neue.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/bebas-neue.outline.js +4 -0
- package/dist/components/text/fonts/bebas-neue.strokes.d.ts +3 -0
- package/dist/components/text/fonts/bebas-neue.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/bebas-neue.strokes.js +4 -0
- package/dist/components/text/fonts/caveat.outline.d.ts +3 -0
- package/dist/components/text/fonts/caveat.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/caveat.outline.js +4 -0
- package/dist/components/text/fonts/caveat.strokes.d.ts +3 -0
- package/dist/components/text/fonts/caveat.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/caveat.strokes.js +4 -0
- package/dist/components/text/fonts/courgette.outline.d.ts +3 -0
- package/dist/components/text/fonts/courgette.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/courgette.outline.js +4 -0
- package/dist/components/text/fonts/courgette.strokes.d.ts +3 -0
- package/dist/components/text/fonts/courgette.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/courgette.strokes.js +4 -0
- package/dist/components/text/fonts/dancing-script.outline.d.ts +3 -0
- package/dist/components/text/fonts/dancing-script.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/dancing-script.outline.js +4 -0
- package/dist/components/text/fonts/dancing-script.strokes.d.ts +3 -0
- package/dist/components/text/fonts/dancing-script.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/dancing-script.strokes.js +4 -0
- package/dist/components/text/fonts/gochi-hand.outline.d.ts +3 -0
- package/dist/components/text/fonts/gochi-hand.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/gochi-hand.outline.js +4 -0
- package/dist/components/text/fonts/gochi-hand.strokes.d.ts +3 -0
- package/dist/components/text/fonts/gochi-hand.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/gochi-hand.strokes.js +4 -0
- package/dist/components/text/fonts/handlee.outline.d.ts +3 -0
- package/dist/components/text/fonts/handlee.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/handlee.outline.js +4 -0
- package/dist/components/text/fonts/handlee.strokes.d.ts +3 -0
- package/dist/components/text/fonts/handlee.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/handlee.strokes.js +4 -0
- package/dist/components/text/fonts/index.d.ts +5 -0
- package/dist/components/text/fonts/index.d.ts.map +1 -0
- package/dist/components/text/fonts/index.js +58 -0
- package/dist/components/text/fonts/indie-flower.outline.d.ts +3 -0
- package/dist/components/text/fonts/indie-flower.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/indie-flower.outline.js +4 -0
- package/dist/components/text/fonts/indie-flower.strokes.d.ts +3 -0
- package/dist/components/text/fonts/indie-flower.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/indie-flower.strokes.js +4 -0
- package/dist/components/text/fonts/inter.outline.d.ts +3 -0
- package/dist/components/text/fonts/inter.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/inter.outline.js +4 -0
- package/dist/components/text/fonts/inter.strokes.d.ts +3 -0
- package/dist/components/text/fonts/inter.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/inter.strokes.js +4 -0
- package/dist/components/text/fonts/kalam.outline.d.ts +3 -0
- package/dist/components/text/fonts/kalam.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/kalam.outline.js +4 -0
- package/dist/components/text/fonts/kalam.strokes.d.ts +3 -0
- package/dist/components/text/fonts/kalam.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/kalam.strokes.js +4 -0
- package/dist/components/text/fonts/kaushan-script.outline.d.ts +3 -0
- package/dist/components/text/fonts/kaushan-script.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/kaushan-script.outline.js +4 -0
- package/dist/components/text/fonts/kaushan-script.strokes.d.ts +3 -0
- package/dist/components/text/fonts/kaushan-script.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/kaushan-script.strokes.js +4 -0
- package/dist/components/text/fonts/lora.outline.d.ts +3 -0
- package/dist/components/text/fonts/lora.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/lora.outline.js +4 -0
- package/dist/components/text/fonts/lora.strokes.d.ts +3 -0
- package/dist/components/text/fonts/lora.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/lora.strokes.js +4 -0
- package/dist/components/text/fonts/montserrat.outline.d.ts +3 -0
- package/dist/components/text/fonts/montserrat.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/montserrat.outline.js +4 -0
- package/dist/components/text/fonts/montserrat.strokes.d.ts +3 -0
- package/dist/components/text/fonts/montserrat.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/montserrat.strokes.js +4 -0
- package/dist/components/text/fonts/mynerve.outline.d.ts +3 -0
- package/dist/components/text/fonts/mynerve.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/mynerve.outline.js +4 -0
- package/dist/components/text/fonts/mynerve.strokes.d.ts +3 -0
- package/dist/components/text/fonts/mynerve.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/mynerve.strokes.js +4 -0
- package/dist/components/text/fonts/nanum-pen-script.outline.d.ts +3 -0
- package/dist/components/text/fonts/nanum-pen-script.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/nanum-pen-script.outline.js +4 -0
- package/dist/components/text/fonts/nanum-pen-script.strokes.d.ts +3 -0
- package/dist/components/text/fonts/nanum-pen-script.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/nanum-pen-script.strokes.js +4 -0
- package/dist/components/text/fonts/oswald.outline.d.ts +3 -0
- package/dist/components/text/fonts/oswald.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/oswald.outline.js +4 -0
- package/dist/components/text/fonts/oswald.strokes.d.ts +3 -0
- package/dist/components/text/fonts/oswald.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/oswald.strokes.js +4 -0
- package/dist/components/text/fonts/pacifico.outline.d.ts +3 -0
- package/dist/components/text/fonts/pacifico.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/pacifico.outline.js +4 -0
- package/dist/components/text/fonts/pacifico.strokes.d.ts +3 -0
- package/dist/components/text/fonts/pacifico.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/pacifico.strokes.js +4 -0
- package/dist/components/text/fonts/patrick-hand.outline.d.ts +3 -0
- package/dist/components/text/fonts/patrick-hand.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/patrick-hand.outline.js +4 -0
- package/dist/components/text/fonts/patrick-hand.strokes.d.ts +3 -0
- package/dist/components/text/fonts/patrick-hand.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/patrick-hand.strokes.js +4 -0
- package/dist/components/text/fonts/playfair-display.outline.d.ts +3 -0
- package/dist/components/text/fonts/playfair-display.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/playfair-display.outline.js +4 -0
- package/dist/components/text/fonts/playfair-display.strokes.d.ts +3 -0
- package/dist/components/text/fonts/playfair-display.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/playfair-display.strokes.js +4 -0
- package/dist/components/text/fonts/poppins.outline.d.ts +3 -0
- package/dist/components/text/fonts/poppins.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/poppins.outline.js +4 -0
- package/dist/components/text/fonts/poppins.strokes.d.ts +3 -0
- package/dist/components/text/fonts/poppins.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/poppins.strokes.js +4 -0
- package/dist/components/text/fonts/roboto.outline.d.ts +3 -0
- package/dist/components/text/fonts/roboto.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/roboto.outline.js +4 -0
- package/dist/components/text/fonts/roboto.strokes.d.ts +3 -0
- package/dist/components/text/fonts/roboto.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/roboto.strokes.js +4 -0
- package/dist/components/text/fonts/satisfy.outline.d.ts +3 -0
- package/dist/components/text/fonts/satisfy.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/satisfy.outline.js +4 -0
- package/dist/components/text/fonts/satisfy.strokes.d.ts +3 -0
- package/dist/components/text/fonts/satisfy.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/satisfy.strokes.js +4 -0
- package/dist/components/text/fonts/sriracha.outline.d.ts +3 -0
- package/dist/components/text/fonts/sriracha.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/sriracha.outline.js +4 -0
- package/dist/components/text/fonts/sriracha.strokes.d.ts +3 -0
- package/dist/components/text/fonts/sriracha.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/sriracha.strokes.js +4 -0
- package/dist/components/text/index.d.ts +29 -0
- package/dist/components/text/index.d.ts.map +1 -0
- package/dist/components/text/index.js +14 -0
- package/dist/components/text/useTextObject.d.ts +22 -0
- package/dist/components/text/useTextObject.d.ts.map +1 -0
- package/dist/components/text/useTextObject.js +130 -0
- package/dist/components/water/OceanSurface.d.ts.map +1 -1
- package/dist/components/water/OceanSurface.js +3 -1
- package/dist/components/water/WaterBody.d.ts.map +1 -1
- package/dist/components/water/WaterBody.js +3 -1
- package/dist/components/water/types.d.ts +5 -1
- package/dist/components/water/types.d.ts.map +1 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +6 -0
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/useCloudSun.d.ts +9 -4
- package/dist/hooks/useCloudSun.d.ts.map +1 -1
- package/dist/hooks/useCloudSun.js +17 -7
- package/dist/hooks/useConfigLive.d.ts +3 -2
- package/dist/hooks/useConfigLive.d.ts.map +1 -1
- package/dist/hooks/useContinuousEffects.d.ts.map +1 -1
- package/dist/hooks/useContinuousEffects.js +4 -10
- package/dist/hooks/useEnvironmentProbe.d.ts +3 -22
- package/dist/hooks/useEnvironmentProbe.d.ts.map +1 -1
- package/dist/hooks/useEnvironmentProbe.js +47 -8
- package/dist/hooks/useGridSurface.d.ts +3 -10
- package/dist/hooks/useGridSurface.d.ts.map +1 -1
- package/dist/hooks/useGridSurface.js +5 -31
- package/dist/hooks/useInteraction.d.ts.map +1 -1
- package/dist/hooks/useInteraction.js +19 -72
- package/dist/hooks/useLightConfig.d.ts +2 -1
- package/dist/hooks/useLightConfig.d.ts.map +1 -1
- package/dist/hooks/useOceanMaterial.d.ts +6 -2
- package/dist/hooks/useOceanMaterial.d.ts.map +1 -1
- package/dist/hooks/useOceanMaterial.js +37 -2
- package/dist/hooks/useSkyLive.d.ts +23 -0
- package/dist/hooks/useSkyLive.d.ts.map +1 -0
- package/dist/hooks/useSkyLive.js +30 -0
- package/dist/hooks/useSkyUniforms.d.ts.map +1 -1
- package/dist/hooks/useSkyUniforms.js +2 -10
- package/dist/hooks/useTerrainLive.d.ts +3 -1
- package/dist/hooks/useTerrainLive.d.ts.map +1 -1
- package/dist/hooks/useTerrainTextures.d.ts +38 -0
- package/dist/hooks/useTerrainTextures.d.ts.map +1 -0
- package/dist/hooks/useTerrainTextures.js +149 -0
- package/dist/index.d.ts +12 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -2
- package/dist/operations/catalogue/blastOff.d.ts +3 -0
- package/dist/operations/catalogue/blastOff.d.ts.map +1 -0
- package/dist/operations/catalogue/blastOff.js +118 -0
- package/dist/operations/catalogue/bounce.d.ts +3 -0
- package/dist/operations/catalogue/bounce.d.ts.map +1 -0
- package/dist/operations/catalogue/bounce.js +34 -0
- package/dist/operations/catalogue/curlSmoke.d.ts.map +1 -1
- package/dist/operations/catalogue/curlSmoke.js +3 -1
- package/dist/operations/catalogue/dissolve.d.ts.map +1 -1
- package/dist/operations/catalogue/dissolve.js +2 -1
- package/dist/operations/catalogue/driftUp.d.ts +3 -0
- package/dist/operations/catalogue/driftUp.d.ts.map +1 -0
- package/dist/operations/catalogue/driftUp.js +57 -0
- package/dist/operations/catalogue/emberAsh.d.ts.map +1 -1
- package/dist/operations/catalogue/emberAsh.js +2 -1
- package/dist/operations/catalogue/flip.d.ts.map +1 -1
- package/dist/operations/catalogue/flip.js +19 -9
- package/dist/operations/catalogue/float.d.ts +3 -0
- package/dist/operations/catalogue/float.d.ts.map +1 -0
- package/dist/operations/catalogue/float.js +39 -0
- package/dist/operations/catalogue/flock.d.ts.map +1 -1
- package/dist/operations/catalogue/flock.js +44 -9
- package/dist/operations/catalogue/flyBy.d.ts +3 -0
- package/dist/operations/catalogue/flyBy.d.ts.map +1 -0
- package/dist/operations/catalogue/flyBy.js +79 -0
- package/dist/operations/catalogue/frost.d.ts.map +1 -1
- package/dist/operations/catalogue/frost.js +10 -3
- package/dist/operations/catalogue/grow.d.ts +3 -0
- package/dist/operations/catalogue/grow.d.ts.map +1 -0
- package/dist/operations/catalogue/grow.js +19 -0
- package/dist/operations/catalogue/hologram.d.ts.map +1 -1
- package/dist/operations/catalogue/hologram.js +11 -5
- package/dist/operations/catalogue/inkBloom.d.ts.map +1 -1
- package/dist/operations/catalogue/inkBloom.js +46 -9
- package/dist/operations/catalogue/jelly.d.ts.map +1 -1
- package/dist/operations/catalogue/jelly.js +18 -8
- package/dist/operations/catalogue/knockAway.d.ts +3 -0
- package/dist/operations/catalogue/knockAway.d.ts.map +1 -0
- package/dist/operations/catalogue/knockAway.js +74 -0
- package/dist/operations/catalogue/leafFall.d.ts +3 -0
- package/dist/operations/catalogue/leafFall.d.ts.map +1 -0
- package/dist/operations/catalogue/leafFall.js +74 -0
- package/dist/operations/catalogue/lidarScan.d.ts.map +1 -1
- package/dist/operations/catalogue/lidarScan.js +4 -1
- package/dist/operations/catalogue/liquidMetal.d.ts.map +1 -1
- package/dist/operations/catalogue/liquidMetal.js +41 -12
- package/dist/operations/catalogue/metalize.d.ts.map +1 -1
- package/dist/operations/catalogue/metalize.js +8 -2
- package/dist/operations/catalogue/motionTrail.d.ts +6 -0
- package/dist/operations/catalogue/motionTrail.d.ts.map +1 -0
- package/dist/operations/catalogue/motionTrail.js +221 -0
- package/dist/operations/catalogue/particleSwarm.d.ts.map +1 -1
- package/dist/operations/catalogue/particleSwarm.js +29 -9
- package/dist/operations/catalogue/petalPeel.d.ts.map +1 -1
- package/dist/operations/catalogue/petalPeel.js +33 -9
- package/dist/operations/catalogue/petrify.d.ts.map +1 -1
- package/dist/operations/catalogue/petrify.js +9 -3
- package/dist/operations/catalogue/physicalExit.d.ts +55 -0
- package/dist/operations/catalogue/physicalExit.d.ts.map +1 -0
- package/dist/operations/catalogue/physicalExit.js +165 -0
- package/dist/operations/catalogue/physicalHeld.d.ts +41 -0
- package/dist/operations/catalogue/physicalHeld.d.ts.map +1 -0
- package/dist/operations/catalogue/physicalHeld.js +78 -0
- package/dist/operations/catalogue/physicalMix.d.ts +45 -0
- package/dist/operations/catalogue/physicalMix.d.ts.map +1 -0
- package/dist/operations/catalogue/physicalMix.js +144 -0
- package/dist/operations/catalogue/pop.d.ts +3 -0
- package/dist/operations/catalogue/pop.d.ts.map +1 -0
- package/dist/operations/catalogue/pop.js +44 -0
- package/dist/operations/catalogue/portal.d.ts.map +1 -1
- package/dist/operations/catalogue/portal.js +33 -11
- package/dist/operations/catalogue/print3d.d.ts.map +1 -1
- package/dist/operations/catalogue/print3d.js +5 -1
- package/dist/operations/catalogue/pulse.d.ts +3 -0
- package/dist/operations/catalogue/pulse.d.ts.map +1 -0
- package/dist/operations/catalogue/pulse.js +29 -0
- package/dist/operations/catalogue/restPose.d.ts +5 -7
- package/dist/operations/catalogue/restPose.d.ts.map +1 -1
- package/dist/operations/catalogue/restPose.js +18 -48
- package/dist/operations/catalogue/rotate.d.ts +3 -0
- package/dist/operations/catalogue/rotate.d.ts.map +1 -0
- package/dist/operations/catalogue/rotate.js +49 -0
- package/dist/operations/catalogue/sandErosion.d.ts.map +1 -1
- package/dist/operations/catalogue/sandErosion.js +36 -14
- package/dist/operations/catalogue/shake.d.ts +3 -0
- package/dist/operations/catalogue/shake.d.ts.map +1 -0
- package/dist/operations/catalogue/shake.js +31 -0
- package/dist/operations/catalogue/shatter.d.ts.map +1 -1
- package/dist/operations/catalogue/shatter.js +5 -1
- package/dist/operations/catalogue/slam.d.ts +3 -0
- package/dist/operations/catalogue/slam.d.ts.map +1 -0
- package/dist/operations/catalogue/slam.js +89 -0
- package/dist/operations/catalogue/slingshot.d.ts +3 -0
- package/dist/operations/catalogue/slingshot.d.ts.map +1 -0
- package/dist/operations/catalogue/slingshot.js +88 -0
- package/dist/operations/catalogue/spin.d.ts.map +1 -1
- package/dist/operations/catalogue/spin.js +24 -13
- package/dist/operations/catalogue/sway.d.ts +3 -0
- package/dist/operations/catalogue/sway.d.ts.map +1 -0
- package/dist/operations/catalogue/sway.js +23 -0
- package/dist/operations/catalogue/swirl.d.ts.map +1 -1
- package/dist/operations/catalogue/swirl.js +6 -5
- package/dist/operations/catalogue/teleport.d.ts.map +1 -1
- package/dist/operations/catalogue/teleport.js +43 -12
- package/dist/operations/catalogue/trailCore.d.ts +89 -0
- package/dist/operations/catalogue/trailCore.d.ts.map +1 -0
- package/dist/operations/catalogue/trailCore.js +190 -0
- package/dist/operations/catalogue/trailGhosts.d.ts +5 -0
- package/dist/operations/catalogue/trailGhosts.d.ts.map +1 -0
- package/dist/operations/catalogue/trailGhosts.js +179 -0
- package/dist/operations/catalogue/trailStampStyles.d.ts +11 -0
- package/dist/operations/catalogue/trailStampStyles.d.ts.map +1 -0
- package/dist/operations/catalogue/trailStampStyles.js +479 -0
- package/dist/operations/catalogue/trailStamps.d.ts +57 -0
- package/dist/operations/catalogue/trailStamps.d.ts.map +1 -0
- package/dist/operations/catalogue/trailStamps.js +349 -0
- package/dist/operations/catalogue/trailStreaks.d.ts +3 -0
- package/dist/operations/catalogue/trailStreaks.d.ts.map +1 -0
- package/dist/operations/catalogue/trailStreaks.js +147 -0
- package/dist/operations/catalogue/transitionField.d.ts +30 -0
- package/dist/operations/catalogue/transitionField.d.ts.map +1 -1
- package/dist/operations/catalogue/transitionField.js +21 -0
- package/dist/operations/catalogue/turnAway.d.ts +3 -0
- package/dist/operations/catalogue/turnAway.d.ts.map +1 -0
- package/dist/operations/catalogue/turnAway.js +54 -0
- package/dist/operations/catalogue/unweave.d.ts.map +1 -1
- package/dist/operations/catalogue/unweave.js +34 -15
- package/dist/operations/catalogue/vortexDrain.d.ts +3 -0
- package/dist/operations/catalogue/vortexDrain.d.ts.map +1 -0
- package/dist/operations/catalogue/vortexDrain.js +68 -0
- package/dist/operations/catalogue/voxelize.d.ts.map +1 -1
- package/dist/operations/catalogue/voxelize.js +37 -10
- package/dist/operations/catalogue/warp.d.ts +3 -0
- package/dist/operations/catalogue/warp.d.ts.map +1 -0
- package/dist/operations/catalogue/warp.js +73 -0
- package/dist/operations/catalogue/whoosh.d.ts +3 -0
- package/dist/operations/catalogue/whoosh.d.ts.map +1 -0
- package/dist/operations/catalogue/whoosh.js +84 -0
- package/dist/operations/catalogue/wobble.d.ts +3 -0
- package/dist/operations/catalogue/wobble.d.ts.map +1 -0
- package/dist/operations/catalogue/wobble.js +23 -0
- package/dist/operations/clipPreview.d.ts +3 -0
- package/dist/operations/clipPreview.d.ts.map +1 -0
- package/dist/operations/clipPreview.js +20 -0
- package/dist/operations/groupFanout.d.ts +96 -0
- package/dist/operations/groupFanout.d.ts.map +1 -0
- package/dist/operations/groupFanout.js +365 -0
- package/dist/operations/groups.d.ts +20 -0
- package/dist/operations/groups.d.ts.map +1 -0
- package/dist/operations/groups.js +66 -0
- package/dist/operations/index.d.ts +5 -2
- package/dist/operations/index.d.ts.map +1 -1
- package/dist/operations/index.js +5 -2
- package/dist/operations/objectEffects.d.ts +161 -6
- package/dist/operations/objectEffects.d.ts.map +1 -1
- package/dist/operations/objectEffects.js +1091 -17
- package/dist/operations/registry.d.ts.map +1 -1
- package/dist/operations/registry.js +24 -2
- package/dist/operations/runtime.d.ts +57 -2
- package/dist/operations/runtime.d.ts.map +1 -1
- package/dist/operations/runtime.js +161 -18
- package/dist/operations/types.d.ts +60 -3
- package/dist/operations/types.d.ts.map +1 -1
- package/dist/operations/types.js +5 -1
- package/dist/operations/useObjectEffectLayers.d.ts +2 -2
- package/dist/operations/useObjectEffectLayers.d.ts.map +1 -1
- package/dist/operations/useObjectEffectLayers.js +31 -10
- package/dist/operations/usePresentedVisibility.d.ts +10 -0
- package/dist/operations/usePresentedVisibility.d.ts.map +1 -0
- package/dist/operations/usePresentedVisibility.js +53 -0
- package/dist/presets/terrainBiomes.d.ts +67 -0
- package/dist/presets/terrainBiomes.d.ts.map +1 -0
- package/dist/presets/terrainBiomes.js +294 -0
- package/dist/presets/terrainPresets.d.ts +6 -0
- package/dist/presets/terrainPresets.d.ts.map +1 -1
- package/dist/presets/terrainPresets.js +26 -38
- package/dist/shaders/glsl/oceanCore.glsl.d.ts +2 -2
- package/dist/shaders/glsl/oceanCore.glsl.d.ts.map +1 -1
- package/dist/shaders/glsl/oceanCore.glsl.js +17 -0
- package/dist/shaders/glsl/surfaceCore.glsl.d.ts +21 -0
- package/dist/shaders/glsl/surfaceCore.glsl.d.ts.map +1 -0
- package/dist/shaders/glsl/surfaceCore.glsl.js +120 -0
- package/dist/shaders/glsl/terrainCore.glsl.d.ts +16 -3
- package/dist/shaders/glsl/terrainCore.glsl.d.ts.map +1 -1
- package/dist/shaders/glsl/terrainCore.glsl.js +266 -20
- package/dist/shaders/ocean/OceanSurfaceMaterial.d.ts +2 -0
- package/dist/shaders/ocean/OceanSurfaceMaterial.d.ts.map +1 -1
- package/dist/shaders/ocean/OceanSurfaceMaterial.js +3 -0
- package/dist/shaders/terrain/TerrainMaterial.d.ts +17 -0
- package/dist/shaders/terrain/TerrainMaterial.d.ts.map +1 -1
- package/dist/shaders/terrain/TerrainMaterial.js +107 -8
- package/dist/triggers/engine.d.ts +44 -0
- package/dist/triggers/engine.d.ts.map +1 -0
- package/dist/triggers/engine.js +168 -0
- package/dist/triggers/hosts/actions.d.ts +8 -0
- package/dist/triggers/hosts/actions.d.ts.map +1 -0
- package/dist/triggers/hosts/actions.js +22 -0
- package/dist/triggers/hosts/interactions.d.ts +6 -0
- package/dist/triggers/hosts/interactions.d.ts.map +1 -0
- package/dist/triggers/hosts/interactions.js +4 -0
- package/dist/triggers/hosts/timelineCues.d.ts +2 -0
- package/dist/triggers/hosts/timelineCues.d.ts.map +1 -0
- package/dist/triggers/hosts/timelineCues.js +22 -0
- package/dist/triggers/index.d.ts +13 -0
- package/dist/triggers/index.d.ts.map +1 -0
- package/dist/triggers/index.js +9 -0
- package/dist/triggers/kinds/action.d.ts +2 -0
- package/dist/triggers/kinds/action.d.ts.map +1 -0
- package/dist/triggers/kinds/action.js +31 -0
- package/dist/triggers/kinds/animations.d.ts +2 -0
- package/dist/triggers/kinds/animations.d.ts.map +1 -0
- package/dist/triggers/kinds/animations.js +75 -0
- package/dist/triggers/kinds/effects.d.ts +2 -0
- package/dist/triggers/kinds/effects.d.ts.map +1 -0
- package/dist/triggers/kinds/effects.js +27 -0
- package/dist/triggers/kinds/index.d.ts +4 -0
- package/dist/triggers/kinds/index.d.ts.map +1 -0
- package/dist/triggers/kinds/index.js +4 -0
- package/dist/triggers/log.d.ts +21 -0
- package/dist/triggers/log.d.ts.map +1 -0
- package/dist/triggers/log.js +43 -0
- package/dist/triggers/readiness.d.ts +40 -0
- package/dist/triggers/readiness.d.ts.map +1 -0
- package/dist/triggers/readiness.js +158 -0
- package/dist/triggers/registry.d.ts +41 -0
- package/dist/triggers/registry.d.ts.map +1 -0
- package/dist/triggers/registry.js +7 -0
- package/dist/types/gridConfigs.d.ts +18 -23
- package/dist/types/gridConfigs.d.ts.map +1 -1
- package/dist/ui/UiAnchorUpdater.d.ts +10 -0
- package/dist/ui/UiAnchorUpdater.d.ts.map +1 -0
- package/dist/ui/UiAnchorUpdater.js +111 -0
- package/dist/ui/UiLayers.d.ts +20 -0
- package/dist/ui/UiLayers.d.ts.map +1 -0
- package/dist/ui/UiLayers.js +57 -0
- package/dist/ui/index.d.ts +9 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +6 -0
- package/dist/ui/uiAnchors.d.ts +21 -0
- package/dist/ui/uiAnchors.d.ts.map +1 -0
- package/dist/ui/uiAnchors.js +22 -0
- package/dist/ui/uiBaseStyles.d.ts +2 -0
- package/dist/ui/uiBaseStyles.d.ts.map +1 -0
- package/dist/ui/uiBaseStyles.js +100 -0
- package/dist/ui/uiBinder.d.ts +30 -0
- package/dist/ui/uiBinder.d.ts.map +1 -0
- package/dist/ui/uiBinder.js +344 -0
- package/dist/utils/configAnimations.d.ts.map +1 -1
- package/dist/utils/configAnimations.js +5 -1
- package/dist/utils/gridConfig.d.ts +1 -1
- package/dist/utils/gridConfig.d.ts.map +1 -1
- package/dist/utils/gridConfig.js +1 -1
- package/dist/utils/landPatch.d.ts +33 -0
- package/dist/utils/landPatch.d.ts.map +1 -0
- package/dist/utils/landPatch.js +114 -0
- package/dist/utils/pickProxy.d.ts +11 -0
- package/dist/utils/pickProxy.d.ts.map +1 -0
- package/dist/utils/pickProxy.js +36 -0
- package/dist/utils/renderedSky.d.ts +32 -0
- package/dist/utils/renderedSky.d.ts.map +1 -0
- package/dist/utils/renderedSky.js +57 -0
- package/dist/utils/shapes.d.ts +4 -0
- package/dist/utils/shapes.d.ts.map +1 -1
- package/dist/utils/shapes.js +4 -1
- package/dist/utils/skyMoon.d.ts +35 -0
- package/dist/utils/skyMoon.d.ts.map +1 -0
- package/dist/utils/skyMoon.js +41 -0
- package/dist/utils/terrainHeight.d.ts +4 -0
- package/dist/utils/terrainHeight.d.ts.map +1 -0
- package/dist/utils/terrainHeight.js +150 -0
- package/dist/utils/terrainTextureResolver.d.ts +18 -0
- package/dist/utils/terrainTextureResolver.d.ts.map +1 -0
- package/dist/utils/terrainTextureResolver.js +17 -0
- package/dist/utils/terrainUniforms.d.ts +17 -0
- package/dist/utils/terrainUniforms.d.ts.map +1 -1
- package/dist/utils/terrainUniforms.js +84 -0
- package/dist/utils/textShape.d.ts +24 -0
- package/dist/utils/textShape.d.ts.map +1 -0
- package/dist/utils/textShape.js +102 -0
- package/dist/utils/textureArrays.d.ts +29 -0
- package/dist/utils/textureArrays.d.ts.map +1 -0
- package/dist/utils/textureArrays.js +140 -0
- package/package.json +2 -2
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Quaternion, Vector3 } from 'three';
|
|
2
|
+
import type { Object3D } from 'three';
|
|
3
|
+
/** One effect's contribution. Mutate it in place (in a tween's onUpdate, or in `sample`). */
|
|
4
|
+
export interface MixPart {
|
|
5
|
+
/** Turn about the pivot, in the object's own axes. */
|
|
6
|
+
q: Quaternion;
|
|
7
|
+
/** Scale about the pivot. */
|
|
8
|
+
s: Vector3;
|
|
9
|
+
/** The point that stays put under q / s, in the object's local space. */
|
|
10
|
+
pivot: Vector3;
|
|
11
|
+
/** Offset in world units. */
|
|
12
|
+
off: Vector3;
|
|
13
|
+
/** Called each frame before composing: time and delta in seconds. */
|
|
14
|
+
sample?: (part: MixPart, time: number, dt: number) => void;
|
|
15
|
+
}
|
|
16
|
+
/** What an effect needs to know about the object it moves (measured when its first part joined). */
|
|
17
|
+
export interface MixBody {
|
|
18
|
+
/** Bounds centre and bottom-centre, in the object's local space. */
|
|
19
|
+
centerLocal: Vector3;
|
|
20
|
+
bottomLocal: Vector3;
|
|
21
|
+
/** World-space size. */
|
|
22
|
+
size: Vector3;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Compose now — one object's mix, or all of them. Call it after something else
|
|
26
|
+
* wrote the object's transform in this frame (the object's frame hook does).
|
|
27
|
+
*/
|
|
28
|
+
export declare function tickMix(target?: Object3D | null): void;
|
|
29
|
+
/** Add (or get) this effect's part on the object. `key` is the effect's own. */
|
|
30
|
+
export declare function joinMix(target: Object3D, key: string, sample?: MixPart['sample']): {
|
|
31
|
+
part: MixPart;
|
|
32
|
+
body: MixBody;
|
|
33
|
+
};
|
|
34
|
+
/** Take this effect's part off. With the last part gone the object is back on its base. */
|
|
35
|
+
export declare function leaveMix(target: Object3D, key: string): void;
|
|
36
|
+
/** Compose this object now (after changing a part outside the ticker). */
|
|
37
|
+
export declare function composeMix(target: Object3D): void;
|
|
38
|
+
/** The object's base transform while effects move it (its own transform otherwise). */
|
|
39
|
+
export declare function mixBase(target: Object3D): {
|
|
40
|
+
position: Vector3;
|
|
41
|
+
quaternion: Quaternion;
|
|
42
|
+
scale: Vector3;
|
|
43
|
+
};
|
|
44
|
+
export declare const isMixed: (target: Object3D) => boolean;
|
|
45
|
+
//# sourceMappingURL=physicalMix.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"physicalMix.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/physicalMix.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAQ,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEtC,6FAA6F;AAC7F,MAAM,WAAW,OAAO;IACpB,sDAAsD;IACtD,CAAC,EAAE,UAAU,CAAC;IACd,6BAA6B;IAC7B,CAAC,EAAE,OAAO,CAAC;IACX,yEAAyE;IACzE,KAAK,EAAE,OAAO,CAAC;IACf,6BAA6B;IAC7B,GAAG,EAAE,OAAO,CAAC;IACb,qEAAqE;IACrE,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9D;AAED,oGAAoG;AACpG,MAAM,WAAW,OAAO;IACpB,oEAAoE;IACpE,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,wBAAwB;IACxB,IAAI,EAAE,OAAO,CAAC;CACjB;AA+DD;;;GAGG;AACH,wBAAgB,OAAO,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,IAAI,QAK/C;AAED,gFAAgF;AAChF,wBAAgB,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAmBnH;AAED,2FAA2F;AAC3F,wBAAgB,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,QAOrD;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,MAAM,EAAE,QAAQ,QAAqD;AAEhG,uFAAuF;AACvF,wBAAgB,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAGvG;AAED,eAAO,MAAM,OAAO,GAAI,QAAQ,QAAQ,YAAsB,CAAC"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
// Physical mix — how effects move an object without owning its transform.
|
|
2
|
+
//
|
|
3
|
+
// A physical effect never writes position / rotation / scale itself. It adds a
|
|
4
|
+
// *part* to the object's mix: a turn and a scale about a pivot, plus a world
|
|
5
|
+
// offset. Each frame the mix lays every part over the object's BASE transform —
|
|
6
|
+
// the one the scene authored or animates — and writes the result. So:
|
|
7
|
+
//
|
|
8
|
+
// - effects stack: float + sway + a jelly all show at once, in the order they joined;
|
|
9
|
+
// - the base stays free: move the object in the studio, keyframe it, play a clip —
|
|
10
|
+
// the effects ride on top. The mix notices any transform it did not write itself
|
|
11
|
+
// and takes it as the new base;
|
|
12
|
+
// - when the last part leaves, the object is back on its base exactly.
|
|
13
|
+
//
|
|
14
|
+
// The mix is composed from the gsap ticker and, for objects in the React tree,
|
|
15
|
+
// again from the object's own frame hook (after its property animations wrote,
|
|
16
|
+
// before the render) — see tickMix. Composing twice in a frame is harmless.
|
|
17
|
+
import { gsap } from 'gsap';
|
|
18
|
+
import { Box3, Quaternion, Vector3 } from 'three';
|
|
19
|
+
const mixes = new Map();
|
|
20
|
+
let ticking = false;
|
|
21
|
+
const _a = new Vector3(), _b = new Vector3(), _P = new Vector3(), _S = new Vector3(), _W = new Vector3();
|
|
22
|
+
const _Q = new Quaternion();
|
|
23
|
+
function measure(target) {
|
|
24
|
+
target.updateWorldMatrix(true, true);
|
|
25
|
+
const box = new Box3().setFromObject(target);
|
|
26
|
+
if (box.isEmpty())
|
|
27
|
+
return { centerLocal: new Vector3(), bottomLocal: new Vector3(), size: new Vector3(1, 1, 1) };
|
|
28
|
+
const c = box.getCenter(new Vector3());
|
|
29
|
+
const bottom = new Vector3(c.x, box.min.y, c.z);
|
|
30
|
+
return { centerLocal: target.worldToLocal(c.clone()), bottomLocal: target.worldToLocal(bottom), size: box.getSize(new Vector3()) };
|
|
31
|
+
}
|
|
32
|
+
/** Lay the parts over the base and write the transform. */
|
|
33
|
+
function compose(m) {
|
|
34
|
+
const t = m.target;
|
|
35
|
+
// a transform we did not write = the scene moved the object: that is the new base
|
|
36
|
+
if (!t.position.equals(m.lastP))
|
|
37
|
+
m.baseP.copy(t.position);
|
|
38
|
+
if (!t.quaternion.equals(m.lastQ))
|
|
39
|
+
m.baseQ.copy(t.quaternion);
|
|
40
|
+
if (!t.scale.equals(m.lastS))
|
|
41
|
+
m.baseS.copy(t.scale);
|
|
42
|
+
_P.copy(m.baseP);
|
|
43
|
+
_Q.copy(m.baseQ);
|
|
44
|
+
_S.copy(m.baseS);
|
|
45
|
+
_W.set(0, 0, 0);
|
|
46
|
+
for (const part of m.parts.values()) {
|
|
47
|
+
// the pivot keeps its place in the parent's space under this part's turn and scale
|
|
48
|
+
_a.copy(part.pivot).multiply(_S).applyQuaternion(_Q);
|
|
49
|
+
_Q.multiply(part.q);
|
|
50
|
+
_S.multiply(part.s);
|
|
51
|
+
_b.copy(part.pivot).multiply(_S).applyQuaternion(_Q);
|
|
52
|
+
_P.add(_a).sub(_b);
|
|
53
|
+
_W.add(part.off);
|
|
54
|
+
}
|
|
55
|
+
if (_W.lengthSq() > 0) {
|
|
56
|
+
if (t.parent) {
|
|
57
|
+
t.parent.localToWorld(_P).add(_W);
|
|
58
|
+
t.parent.worldToLocal(_P);
|
|
59
|
+
}
|
|
60
|
+
else
|
|
61
|
+
_P.add(_W);
|
|
62
|
+
}
|
|
63
|
+
t.position.copy(_P);
|
|
64
|
+
t.quaternion.copy(_Q);
|
|
65
|
+
t.scale.copy(_S);
|
|
66
|
+
m.lastP.copy(t.position);
|
|
67
|
+
m.lastQ.copy(t.quaternion);
|
|
68
|
+
m.lastS.copy(t.scale);
|
|
69
|
+
}
|
|
70
|
+
function step(m, now) {
|
|
71
|
+
// time moves once per frame, however often the mix is composed in it
|
|
72
|
+
const dt = m.stamp ? Math.min(0.1, (now - m.stamp) / 1000) : 0;
|
|
73
|
+
if (dt > 0 || !m.stamp) {
|
|
74
|
+
m.stamp = now;
|
|
75
|
+
m.time += dt;
|
|
76
|
+
for (const part of m.parts.values())
|
|
77
|
+
part.sample?.(part, m.time, dt);
|
|
78
|
+
}
|
|
79
|
+
compose(m);
|
|
80
|
+
}
|
|
81
|
+
const tickAll = () => { const now = performance.now(); mixes.forEach(m => step(m, now)); };
|
|
82
|
+
/**
|
|
83
|
+
* Compose now — one object's mix, or all of them. Call it after something else
|
|
84
|
+
* wrote the object's transform in this frame (the object's frame hook does).
|
|
85
|
+
*/
|
|
86
|
+
export function tickMix(target) {
|
|
87
|
+
if (!mixes.size)
|
|
88
|
+
return;
|
|
89
|
+
if (!target) {
|
|
90
|
+
tickAll();
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const m = mixes.get(target);
|
|
94
|
+
if (m)
|
|
95
|
+
step(m, performance.now());
|
|
96
|
+
}
|
|
97
|
+
/** Add (or get) this effect's part on the object. `key` is the effect's own. */
|
|
98
|
+
export function joinMix(target, key, sample) {
|
|
99
|
+
let m = mixes.get(target);
|
|
100
|
+
if (!m) {
|
|
101
|
+
m = {
|
|
102
|
+
target, ...measure(target),
|
|
103
|
+
baseP: target.position.clone(), baseQ: target.quaternion.clone(), baseS: target.scale.clone(),
|
|
104
|
+
lastP: target.position.clone(), lastQ: target.quaternion.clone(), lastS: target.scale.clone(),
|
|
105
|
+
parts: new Map(), time: 0, stamp: 0,
|
|
106
|
+
};
|
|
107
|
+
mixes.set(target, m);
|
|
108
|
+
if (!ticking) {
|
|
109
|
+
ticking = true;
|
|
110
|
+
gsap.ticker.add(tickAll);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
let part = m.parts.get(key);
|
|
114
|
+
if (!part) {
|
|
115
|
+
part = { q: new Quaternion(), s: new Vector3(1, 1, 1), pivot: m.centerLocal.clone(), off: new Vector3() };
|
|
116
|
+
m.parts.set(key, part);
|
|
117
|
+
}
|
|
118
|
+
if (sample)
|
|
119
|
+
part.sample = sample;
|
|
120
|
+
return { part, body: m };
|
|
121
|
+
}
|
|
122
|
+
/** Take this effect's part off. With the last part gone the object is back on its base. */
|
|
123
|
+
export function leaveMix(target, key) {
|
|
124
|
+
const m = mixes.get(target);
|
|
125
|
+
if (!m || !m.parts.delete(key))
|
|
126
|
+
return;
|
|
127
|
+
compose(m);
|
|
128
|
+
if (m.parts.size)
|
|
129
|
+
return;
|
|
130
|
+
mixes.delete(target);
|
|
131
|
+
if (!mixes.size && ticking) {
|
|
132
|
+
ticking = false;
|
|
133
|
+
gsap.ticker.remove(tickAll);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
/** Compose this object now (after changing a part outside the ticker). */
|
|
137
|
+
export function composeMix(target) { const m = mixes.get(target); if (m)
|
|
138
|
+
compose(m); }
|
|
139
|
+
/** The object's base transform while effects move it (its own transform otherwise). */
|
|
140
|
+
export function mixBase(target) {
|
|
141
|
+
const m = mixes.get(target);
|
|
142
|
+
return m ? { position: m.baseP, quaternion: m.baseQ, scale: m.baseS } : target;
|
|
143
|
+
}
|
|
144
|
+
export const isMixed = (target) => mixes.has(target);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pop.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/pop.ts"],"names":[],"mappings":";AASA,wBAoCG"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
// Pop — pressure builds inside the object: it inflates while its first shape
|
|
2
|
+
// modes ring faster and faster (it bulges unevenly, one way then the other —
|
|
3
|
+
// an underdamped spring being driven), then it bursts to nothing in a few frames.
|
|
4
|
+
// The way back: it pops out of nothing, overshoots and rings down like jelly
|
|
5
|
+
// until it is exactly at rest.
|
|
6
|
+
import { physicalExit, ring, smooth } from './physicalExit.js';
|
|
7
|
+
const INFLATE_END = 0.84;
|
|
8
|
+
export default physicalExit({
|
|
9
|
+
value: 'pop',
|
|
10
|
+
label: 'Pop',
|
|
11
|
+
description: 'Inflates and wobbles under rising pressure, then bursts to nothing — it pops back out of nothing and rings down',
|
|
12
|
+
params: {
|
|
13
|
+
inflate: { type: 'number', label: 'Inflate', default: 0.28, min: 0, max: 1, step: 0.01, hint: 'How much bigger it gets before it bursts' },
|
|
14
|
+
wobble: { type: 'number', label: 'Wobble', default: 0.09, min: 0, max: 0.3, step: 0.005, hint: 'How unevenly it bulges' },
|
|
15
|
+
rings: { type: 'number', label: 'Rings', default: 3, min: 1, max: 7, step: 0.5, hint: 'Wobbles as it settles on the way back' },
|
|
16
|
+
duration: { type: 'number', label: 'Duration', default: 1.1, min: 0.3, max: 5, step: 0.05, unit: 's' },
|
|
17
|
+
},
|
|
18
|
+
exit(u, out, a) {
|
|
19
|
+
const p = a.p;
|
|
20
|
+
const t = Math.min(1, u / INFLATE_END);
|
|
21
|
+
const k = 1 + Number(p.inflate) * Math.pow(smooth(0, 1, t), 1.4);
|
|
22
|
+
// the two shape modes, driven faster as the pressure rises (phase ∝ t + t²)
|
|
23
|
+
const amp = Number(p.wobble) * smooth(0.12, 0.9, t);
|
|
24
|
+
const ph = 2 * Math.PI * (2.2 * t + 5.5 * t * t);
|
|
25
|
+
const m1 = amp * Math.sin(ph), m2 = amp * Math.sin(1.37 * ph + 2.1);
|
|
26
|
+
// the burst: a last swell, gone within ~15% of the duration
|
|
27
|
+
const b = smooth(INFLATE_END, 1, u);
|
|
28
|
+
const burst = (1 + 0.22 * Math.sin(Math.PI * Math.min(1, b * 1.6))) * Math.pow(1 - b, 2);
|
|
29
|
+
const g = k * burst;
|
|
30
|
+
out.s.set(g * (1 + m1 - 0.5 * m2), g * (1 - m1), g * (1 + m2 - 0.5 * m1));
|
|
31
|
+
},
|
|
32
|
+
enter(v, out, a) {
|
|
33
|
+
const p = a.p;
|
|
34
|
+
// out of nothing: a quick spring past full size
|
|
35
|
+
const grow = 1 - Math.pow(1 - smooth(0, 0.22, v), 3);
|
|
36
|
+
const sg = Math.max(0, (v - 0.12) / 0.88);
|
|
37
|
+
const n = Number(p.rings);
|
|
38
|
+
const r = 0.22 * ring(sg, n / 2, 3.4); // overshoots first, rings down to exactly 1
|
|
39
|
+
// the ring alternates which way it bulges (the same shape modes as the exit)
|
|
40
|
+
const w = Number(p.wobble) * 1.8 * ring(sg, n / 2 + 0.25, 3.4);
|
|
41
|
+
const g = grow * (1 + r);
|
|
42
|
+
out.s.set(g * (1 + w), g * (1 - w), g * (1 + 0.6 * w));
|
|
43
|
+
},
|
|
44
|
+
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/portal.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/portal.ts"],"names":[],"mappings":";AA6IA,wBAiGG"}
|
|
@@ -8,6 +8,9 @@
|
|
|
8
8
|
// photon ring and fine, faint spiral filaments inside — see-through
|
|
9
9
|
// tech segmented arcs rotating both ways, tick marks and a scanning light
|
|
10
10
|
// Reverting brings the object back out of the portal.
|
|
11
|
+
// With Disappear off (an object effect's default) the ring opens around the object's
|
|
12
|
+
// middle and stays, the object intact inside it with a soft band of light where the
|
|
13
|
+
// ring's plane crosses it.
|
|
11
14
|
import { AdditiveBlending, Color, Mesh, PlaneGeometry, Quaternion, ShaderMaterial, Vector3 } from 'three';
|
|
12
15
|
import { defineOperation } from '../types.js';
|
|
13
16
|
import { addLayer, forEachMeshMaterial, removeLayer } from './shaderLayers.js';
|
|
@@ -21,16 +24,22 @@ const STYLES = ['electric', 'runes', 'horizon', 'tech'];
|
|
|
21
24
|
const PAD = 1.35;
|
|
22
25
|
function cutLayer(st) {
|
|
23
26
|
return {
|
|
24
|
-
uniforms: { ...fieldUniforms(P, st.field), uPorColor: st.color },
|
|
27
|
+
uniforms: { ...fieldUniforms(P, st.field), uPorColor: st.color, uPorKeep: st.keep },
|
|
25
28
|
common: `varying vec3 vPorQ;\n${fieldGlsl(P)}`,
|
|
26
29
|
vertex: `vPorQ = PorNorm((uPorRootInv * modelMatrix * vec4(transformed, 1.0)).xyz);`,
|
|
27
30
|
fragment: /* glsl */ `
|
|
28
31
|
{
|
|
29
32
|
float s = PorAlong(vPorQ);
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
if (uPorKeep > 0.5) {
|
|
34
|
+
// inside the ring: a soft band of light where its plane crosses the object, breathing
|
|
35
|
+
float band = exp(-abs(s - 0.5) / 0.03) * (0.5 + 0.3 * sin(uPorTime * 1.7)) * smoothstep(0.0, 0.08, uPorProgress);
|
|
36
|
+
outgoingLight = mix(outgoingLight, uPorColor * 2.5, clamp(band, 0.0, 1.0));
|
|
37
|
+
} else {
|
|
38
|
+
float fs = mix(-0.04, 1.04, clamp(uPorProgress, 0.0, 1.0));
|
|
39
|
+
if (s < fs) discard;
|
|
40
|
+
float rim = exp(-(s - fs) / 0.012);
|
|
41
|
+
outgoingLight = mix(outgoingLight, uPorColor * 3.0, clamp(rim, 0.0, 1.0));
|
|
42
|
+
}
|
|
34
43
|
}`,
|
|
35
44
|
};
|
|
36
45
|
}
|
|
@@ -122,12 +131,14 @@ function makeRingMaterial(st, style) {
|
|
|
122
131
|
export default defineOperation({
|
|
123
132
|
value: 'portal',
|
|
124
133
|
label: 'Portal',
|
|
125
|
-
description: 'Sweep a ring of light through the targets and send them through it — reverting brings them back',
|
|
134
|
+
description: 'Sweep a ring of light through the targets and send them through it (or, Disappear off, keep the ring open around them) — reverting brings them back',
|
|
126
135
|
channel: 'visual',
|
|
127
136
|
multi: true,
|
|
128
137
|
toggles: true,
|
|
129
|
-
usableIn: ['interaction', 'action'],
|
|
138
|
+
usableIn: ['interaction', 'action', 'object'],
|
|
139
|
+
objectParams: { disappear: false },
|
|
130
140
|
params: {
|
|
141
|
+
disappear: { type: 'boolean', label: 'Disappear', default: true, hint: 'Off: the ring opens around the object and stays' },
|
|
131
142
|
ring: { type: 'select', label: 'Ring', default: 'electric', options: [{ value: 'electric', label: 'Electric arcs' }, { value: 'runes', label: 'Rune ring' }, { value: 'horizon', label: 'Event horizon' }, { value: 'tech', label: 'Tech gate' }] },
|
|
132
143
|
direction: { type: 'select', label: 'Sweep', default: 'down', options: SWEEP_OPTIONS },
|
|
133
144
|
color: { type: 'color', label: 'Light', default: '#7a8cff' },
|
|
@@ -142,7 +153,7 @@ export default defineOperation({
|
|
|
142
153
|
if (!st) {
|
|
143
154
|
const field = createFieldState(target);
|
|
144
155
|
const own = {
|
|
145
|
-
field, color: { value: new Color() }, style: '', mats: new Set(),
|
|
156
|
+
field, color: { value: new Color() }, style: '', mats: new Set(), keep: { value: 0 },
|
|
146
157
|
uni: { uStyle: { value: 0 }, uThick: { value: 1 }, uGlow: { value: 1 }, uSpin: { value: 1 }, uAlpha: { value: 0 } },
|
|
147
158
|
};
|
|
148
159
|
own.ring = new Mesh(new PlaneGeometry(2 * PAD, 2 * PAD), undefined);
|
|
@@ -183,7 +194,16 @@ export default defineOperation({
|
|
|
183
194
|
s.radius = (0.55 * across + 0.04 * s.field.extent.value) * Number(p.size);
|
|
184
195
|
s.ring.quaternion.copy(new Quaternion().setFromUnitVectors(new Vector3(0, 0, 1), d));
|
|
185
196
|
s.ring.visible = true;
|
|
197
|
+
s.keep.value = p.disappear === false ? 1 : 0;
|
|
198
|
+
hideMeshes(target, KEY, false);
|
|
186
199
|
placeRing(s);
|
|
200
|
+
if (s.keep.value) {
|
|
201
|
+
// keep: the ring opens around the middle and holds (its spin runs on the hold clock)
|
|
202
|
+
return runProgress(target, s.field, 1, {
|
|
203
|
+
duration: Number(p.duration) * 0.3, ease: 'none', hold: true,
|
|
204
|
+
onUpdate: () => placeRing(s), onComplete: () => placeRing(s),
|
|
205
|
+
});
|
|
206
|
+
}
|
|
187
207
|
return runProgress(target, s.field, 1, {
|
|
188
208
|
duration: Number(p.duration), ease: 'power1.inOut',
|
|
189
209
|
onUpdate: () => placeRing(s),
|
|
@@ -197,7 +217,7 @@ export default defineOperation({
|
|
|
197
217
|
hideMeshes(target, KEY, false);
|
|
198
218
|
s.ring.visible = true;
|
|
199
219
|
return runProgress(target, s.field, 0, {
|
|
200
|
-
duration: Number(p.duration), ease: 'power1.inOut',
|
|
220
|
+
duration: Number(p.duration) * (s.keep.value ? 0.3 : 1) * Math.min(1, Math.max(0.1, s.field.progress.value)), ease: s.keep.value ? 'none' : 'power1.inOut',
|
|
201
221
|
onUpdate: () => placeRing(s),
|
|
202
222
|
onComplete: () => {
|
|
203
223
|
s.mats.forEach(m => removeLayer(m, KEY));
|
|
@@ -212,13 +232,15 @@ export default defineOperation({
|
|
|
212
232
|
/** Put the ring on the moving plane (root-local) and open / close it at the ends. */
|
|
213
233
|
function placeRing(s) {
|
|
214
234
|
const pr = Math.min(1, Math.max(0, s.field.progress.value));
|
|
215
|
-
const
|
|
235
|
+
const keep = s.keep.value > 0.5;
|
|
236
|
+
// keeping: the ring sits on the object's middle plane and never closes
|
|
237
|
+
const fs = keep ? 0.5 : -0.04 + 1.08 * pr;
|
|
216
238
|
const d = sweepVector(s.field);
|
|
217
239
|
const min = s.field.boundsMin.value, size = s.field.boundsSize.value;
|
|
218
240
|
const c = min.clone().addScaledVector(size, 0.5);
|
|
219
241
|
const half = (Math.abs(d.x) * size.x + Math.abs(d.y) * size.y + Math.abs(d.z) * size.z) / 2;
|
|
220
242
|
s.ring.position.copy(c).addScaledVector(d, (fs - 0.5) * 2 * half);
|
|
221
|
-
const open = Math.max(0, Math.min(1, pr / 0.08, (1 - pr) / 0.08 + 0.001));
|
|
243
|
+
const open = Math.max(0, Math.min(1, pr / 0.08, keep ? 1 : (1 - pr) / 0.08 + 0.001));
|
|
222
244
|
s.ring.scale.setScalar(s.radius * (0.2 + 0.8 * Math.sqrt(open)));
|
|
223
245
|
s.uni.uAlpha.value = open;
|
|
224
246
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"print3d.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/print3d.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"print3d.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/print3d.ts"],"names":[],"mappings":";AA+MA,wBAmFG"}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
import { BackSide, Color, Mesh, MeshStandardMaterial } from 'three';
|
|
17
17
|
import { defineOperation } from '../types.js';
|
|
18
18
|
import { addLayer, forEachMeshMaterial, removeLayer } from './shaderLayers.js';
|
|
19
|
-
import { createFieldState, fieldGlsl, fieldUniforms, hideMeshes, runProgress } from './transitionField.js';
|
|
19
|
+
import { createFieldState, fieldGlsl, fieldUniforms, hideMeshes, runProgress, setReveal } from './transitionField.js';
|
|
20
20
|
import { hideUntilWarm } from './warmup.js';
|
|
21
21
|
const P = 'Prt';
|
|
22
22
|
const KEY = 'print3d';
|
|
@@ -60,6 +60,7 @@ function mainLayer(st) {
|
|
|
60
60
|
diffuse: /* glsl */ `
|
|
61
61
|
if (uPrtKeep > 0.5) {
|
|
62
62
|
prtPreview(diffuseColor.rgb);
|
|
63
|
+
if (uPrtReveal > 0.5 && prtConv < 0.5) discard; // revealed by the print: nothing above the nozzle
|
|
63
64
|
if (prtConv > 0.5) diffuseColor.rgb = prtCol * mix(0.22, 1.0, prtGap);
|
|
64
65
|
} else {
|
|
65
66
|
if (prtAge(vPrtR, vPrtQ) < 0.0) discard;
|
|
@@ -206,6 +207,7 @@ export default defineOperation({
|
|
|
206
207
|
disappear: { type: 'boolean', label: 'Disappear', default: true, hint: 'Off: the object turns into its slicer preview and stays' },
|
|
207
208
|
},
|
|
208
209
|
objectParams: { disappear: false },
|
|
210
|
+
presence: 'paint',
|
|
209
211
|
apply(target, p) {
|
|
210
212
|
let st = target.userData[STATE];
|
|
211
213
|
if (!st) {
|
|
@@ -247,6 +249,7 @@ export default defineOperation({
|
|
|
247
249
|
s.lines.value = Number(p.lines);
|
|
248
250
|
s.palette.value = Math.max(0, PALETTES.findIndex(o => o.value === p.preview));
|
|
249
251
|
s.keep.value = p.disappear === false ? 1 : 0;
|
|
252
|
+
setReveal(s.field, p);
|
|
250
253
|
// the preview never cuts the object open: the inside is only for the un-print
|
|
251
254
|
s.caps.forEach(c => { c.visible = !s.keep.value; });
|
|
252
255
|
if (s.keep.value) {
|
|
@@ -262,6 +265,7 @@ export default defineOperation({
|
|
|
262
265
|
if (!s)
|
|
263
266
|
return;
|
|
264
267
|
hideMeshes(target, KEY, false);
|
|
268
|
+
setReveal(s.field, p);
|
|
265
269
|
s.caps.forEach(c => { c.visible = !s.keep.value; });
|
|
266
270
|
return runProgress(target, s.field, 0, {
|
|
267
271
|
duration: Number(p.duration), ease: 'none',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pulse.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/pulse.ts"],"names":[],"mappings":";AAMA,wBAuBG"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// Pulse — the object swells and settles about its centre. "Breathe" is a slow
|
|
2
|
+
// rise with a longer fall; "Heartbeat" is the double beat (lub-dub) and a rest.
|
|
3
|
+
import { DURATION, heldPhysical } from './physicalHeld.js';
|
|
4
|
+
const bump = (x, at, width) => Math.exp(-(((x - at) / width) ** 2));
|
|
5
|
+
export default heldPhysical({
|
|
6
|
+
value: 'pulse', label: 'Pulse',
|
|
7
|
+
description: 'Swell and settle — a slow breath, or a double heartbeat',
|
|
8
|
+
params: {
|
|
9
|
+
style: { type: 'select', label: 'Style', default: 'breathe', options: [{ value: 'breathe', label: 'Breathe' }, { value: 'heartbeat', label: 'Heartbeat' }] },
|
|
10
|
+
amount: { type: 'number', label: 'Amount', default: 0.06, min: 0.005, max: 0.6, step: 0.005, hint: 'How much bigger it gets' },
|
|
11
|
+
speed: { type: 'number', label: 'Beats', default: 0.5, min: 0.05, max: 4, step: 0.05, unit: '/s' },
|
|
12
|
+
duration: { ...DURATION, default: 4 },
|
|
13
|
+
},
|
|
14
|
+
memory: () => null,
|
|
15
|
+
move(part, st, time) {
|
|
16
|
+
const p = st.p;
|
|
17
|
+
const ph = (time * Number(p.speed)) % 1;
|
|
18
|
+
let k;
|
|
19
|
+
if (p.style === 'heartbeat')
|
|
20
|
+
k = bump(ph, 0.12, 0.05) + 0.62 * bump(ph, 0.34, 0.065);
|
|
21
|
+
else {
|
|
22
|
+
// in over 40% of the breath, out over the rest
|
|
23
|
+
const u = ph < 0.4 ? ph / 0.4 : 1 - (ph - 0.4) / 0.6;
|
|
24
|
+
k = u * u * (3 - 2 * u);
|
|
25
|
+
}
|
|
26
|
+
part.s.setScalar(1 + Number(p.amount) * k * st.amp.v);
|
|
27
|
+
part.pivot.copy(st.body.centerLocal);
|
|
28
|
+
},
|
|
29
|
+
});
|
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
import { Quaternion, Vector3 } from 'three';
|
|
2
2
|
import type { Object3D } from 'three';
|
|
3
3
|
export interface RestPose {
|
|
4
|
-
position: Vector3;
|
|
5
|
-
quaternion: Quaternion;
|
|
6
|
-
scale: Vector3;
|
|
7
4
|
/** Bounds centre and bottom in the object's own local space (unscaled). */
|
|
8
5
|
centerLocal: Vector3;
|
|
9
6
|
bottomLocal: Vector3;
|
|
10
7
|
/** World-space size at rest. */
|
|
11
8
|
size: Vector3;
|
|
12
|
-
users: number;
|
|
13
9
|
}
|
|
14
|
-
|
|
15
|
-
export declare function
|
|
10
|
+
/** Start posing the object. `key`: the operation's own, so two operations stack instead of overwriting. */
|
|
11
|
+
export declare function acquireRest(target: Object3D, key?: string): RestPose;
|
|
12
|
+
/** Stop posing: this operation's part goes, the object returns to rest (or to what the others hold). */
|
|
13
|
+
export declare function releaseRest(target: Object3D, key?: string): void;
|
|
16
14
|
/**
|
|
17
15
|
* Pose the object as rest ∘ (rotation `q` and non-uniform scale `s` about the local
|
|
18
16
|
* `pivot`), then offset by `worldOffset`. The pivot stays where it is at rest.
|
|
19
17
|
*/
|
|
20
|
-
export declare function poseAbout(target: Object3D,
|
|
18
|
+
export declare function poseAbout(target: Object3D, _r: RestPose, pivot: Vector3, q: Quaternion, s: Vector3, worldOffset?: Vector3, key?: string): void;
|
|
21
19
|
//# sourceMappingURL=restPose.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"restPose.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/restPose.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"restPose.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/restPose.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGtC,MAAM,WAAW,QAAQ;IACrB,2EAA2E;IAC3E,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,gCAAgC;IAChC,IAAI,EAAE,OAAO,CAAC;CACjB;AAID,2GAA2G;AAC3G,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAU,GAAG,QAAQ,CAErE;AAED,wGAAwG;AACxG,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAU,QAE1D;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,GAAG,SAAU,QAKxI"}
|
|
@@ -1,55 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
export function acquireRest(target) {
|
|
7
|
-
let r = target.userData[KEY];
|
|
8
|
-
if (!r) {
|
|
9
|
-
target.updateWorldMatrix(true, true);
|
|
10
|
-
const box = new Box3().setFromObject(target);
|
|
11
|
-
const c = box.getCenter(new Vector3());
|
|
12
|
-
const bottom = new Vector3(c.x, box.min.y, c.z);
|
|
13
|
-
r = {
|
|
14
|
-
position: target.position.clone(), quaternion: target.quaternion.clone(), scale: target.scale.clone(),
|
|
15
|
-
centerLocal: target.worldToLocal(c.clone()), bottomLocal: target.worldToLocal(bottom),
|
|
16
|
-
size: box.getSize(new Vector3()), users: 0,
|
|
17
|
-
};
|
|
18
|
-
target.userData[KEY] = r;
|
|
19
|
-
}
|
|
20
|
-
r.users++;
|
|
21
|
-
return r;
|
|
1
|
+
import { composeMix, joinMix, leaveMix } from './physicalMix.js';
|
|
2
|
+
const DEFAULT = 'rest';
|
|
3
|
+
/** Start posing the object. `key`: the operation's own, so two operations stack instead of overwriting. */
|
|
4
|
+
export function acquireRest(target, key = DEFAULT) {
|
|
5
|
+
return joinMix(target, key).body;
|
|
22
6
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
return;
|
|
27
|
-
r.users--;
|
|
28
|
-
if (r.users <= 0) {
|
|
29
|
-
target.position.copy(r.position);
|
|
30
|
-
target.quaternion.copy(r.quaternion);
|
|
31
|
-
target.scale.copy(r.scale);
|
|
32
|
-
delete target.userData[KEY];
|
|
33
|
-
}
|
|
7
|
+
/** Stop posing: this operation's part goes, the object returns to rest (or to what the others hold). */
|
|
8
|
+
export function releaseRest(target, key = DEFAULT) {
|
|
9
|
+
leaveMix(target, key);
|
|
34
10
|
}
|
|
35
|
-
const _v = new Vector3();
|
|
36
11
|
/**
|
|
37
12
|
* Pose the object as rest ∘ (rotation `q` and non-uniform scale `s` about the local
|
|
38
13
|
* `pivot`), then offset by `worldOffset`. The pivot stays where it is at rest.
|
|
39
14
|
*/
|
|
40
|
-
export function poseAbout(target,
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
const w = target.parent.localToWorld(target.position.clone()).add(worldOffset);
|
|
51
|
-
target.position.copy(target.parent.worldToLocal(w));
|
|
52
|
-
}
|
|
53
|
-
else if (worldOffset)
|
|
54
|
-
target.position.add(worldOffset);
|
|
15
|
+
export function poseAbout(target, _r, pivot, q, s, worldOffset, key = DEFAULT) {
|
|
16
|
+
const { part } = joinMix(target, key);
|
|
17
|
+
part.pivot.copy(pivot);
|
|
18
|
+
part.q.copy(q);
|
|
19
|
+
part.s.copy(s);
|
|
20
|
+
if (worldOffset)
|
|
21
|
+
part.off.copy(worldOffset);
|
|
22
|
+
else
|
|
23
|
+
part.off.set(0, 0, 0);
|
|
24
|
+
composeMix(target);
|
|
55
25
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rotate.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/rotate.ts"],"names":[],"mappings":";AAmBA,wBA4BG"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// Rotate — the object turns steadily about its own axes, through its centre.
|
|
2
|
+
// One axis is a plain turn; two or three together is a turn about their diagonal
|
|
3
|
+
// (a tumble). Switching on spins it up; switching off lets it coast to the nearest
|
|
4
|
+
// whole turn, so it always stops facing the way it started. The other way round
|
|
5
|
+
// is the playback's Reverse.
|
|
6
|
+
import { Vector3 } from 'three';
|
|
7
|
+
import { multiValues } from '../types.js';
|
|
8
|
+
import { DURATION, heldPhysical, periodicEase } from './physicalHeld.js';
|
|
9
|
+
const AXES = { x: new Vector3(1, 0, 0), y: new Vector3(0, 1, 0), z: new Vector3(0, 0, 1) };
|
|
10
|
+
const TAU = Math.PI * 2;
|
|
11
|
+
const _axis = new Vector3();
|
|
12
|
+
/** The axis to turn about: the chosen ones together (their diagonal). */
|
|
13
|
+
function axisOf(value) {
|
|
14
|
+
_axis.set(0, 0, 0);
|
|
15
|
+
for (const k of multiValues(value))
|
|
16
|
+
if (AXES[k])
|
|
17
|
+
_axis.add(AXES[k]);
|
|
18
|
+
return _axis.lengthSq() > 0 ? _axis.normalize() : _axis.copy(AXES.y);
|
|
19
|
+
}
|
|
20
|
+
export default heldPhysical({
|
|
21
|
+
value: 'rotate', label: 'Rotate',
|
|
22
|
+
description: 'Turn steadily about its own axes — spins up, and coasts to a stop facing the way it started',
|
|
23
|
+
ease: 'none',
|
|
24
|
+
params: {
|
|
25
|
+
axis: { type: 'multi', label: 'Axes', default: 'y', options: [{ value: 'x', label: 'X' }, { value: 'y', label: 'Y' }, { value: 'z', label: 'Z' }], hint: 'Pick one, or several to tumble about them together' },
|
|
26
|
+
speed: { type: 'number', label: 'Speed', default: 0.2, min: 0.01, max: 4, step: 0.01, unit: 'turns/s' },
|
|
27
|
+
duration: { ...DURATION, default: 5 },
|
|
28
|
+
},
|
|
29
|
+
memory: () => ({ angle: 0, from: 0, to: 0 }),
|
|
30
|
+
onOut(st) {
|
|
31
|
+
// land on a whole turn ahead: at least what the current speed would cover while slowing
|
|
32
|
+
const m = st.mem, dir = st.p.__backward === true ? -1 : 1;
|
|
33
|
+
const coast = TAU * Number(st.p.speed) * periodicEase(Number(st.p.duration)) * 0.5 * st.amp.v;
|
|
34
|
+
m.from = m.angle;
|
|
35
|
+
m.to = dir * Math.ceil((dir * m.angle + coast - 1e-6) / TAU) * TAU;
|
|
36
|
+
},
|
|
37
|
+
move(part, st, _time, dt) {
|
|
38
|
+
const p = st.p, m = st.mem, a = st.amp.v;
|
|
39
|
+
if (st.out) {
|
|
40
|
+
const u = 1 - a; // 0 → 1 over the stop
|
|
41
|
+
m.angle = m.from + (m.to - m.from) * (1 - (1 - u) * (1 - u));
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
m.angle += TAU * Number(p.speed) * a * a * dt; // spins up (dt is negative when played backwards)
|
|
45
|
+
}
|
|
46
|
+
part.q.setFromAxisAngle(axisOf(p.axis), m.angle);
|
|
47
|
+
part.pivot.copy(st.body.centerLocal);
|
|
48
|
+
},
|
|
49
|
+
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandErosion.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/sandErosion.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"sandErosion.d.ts","sourceRoot":"","sources":["../../../src/operations/catalogue/sandErosion.ts"],"names":[],"mappings":";AAmFA,wBA8GG"}
|