@3driseai/3drise-viewer 0.1.26 → 0.1.27
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 +3 -0
- package/dist/animationsV2/ClipPlayer.d.ts.map +1 -1
- package/dist/animationsV2/ClipPlayer.js +67 -8
- package/dist/animationsV2/ClipsRuntime.d.ts +39 -0
- package/dist/animationsV2/ClipsRuntime.d.ts.map +1 -1
- package/dist/animationsV2/ClipsRuntime.js +245 -14
- package/dist/animationsV2/appliers.d.ts +5 -0
- package/dist/animationsV2/appliers.d.ts.map +1 -1
- package/dist/animationsV2/appliers.js +25 -7
- 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 +18 -7
- package/dist/animationsV2/sequenceUtils.d.ts +42 -1
- package/dist/animationsV2/sequenceUtils.d.ts.map +1 -1
- package/dist/animationsV2/sequenceUtils.js +103 -3
- package/dist/animationsV2/types.d.ts +20 -0
- package/dist/animationsV2/types.d.ts.map +1 -1
- package/dist/components/AdvancedGrid.d.ts +8 -2
- package/dist/components/AdvancedGrid.d.ts.map +1 -1
- package/dist/components/AdvancedGrid.js +31 -14
- package/dist/components/AnimatedObject.d.ts.map +1 -1
- package/dist/components/AnimatedObject.js +7 -5
- package/dist/components/Bubbles.d.ts +7 -1
- package/dist/components/Bubbles.d.ts.map +1 -1
- package/dist/components/Bubbles.js +42 -22
- package/dist/components/ChladniGrid.d.ts +8 -4
- package/dist/components/ChladniGrid.d.ts.map +1 -1
- package/dist/components/ChladniGrid.js +31 -13
- package/dist/components/CircuitGrid.d.ts +8 -11
- package/dist/components/CircuitGrid.d.ts.map +1 -1
- package/dist/components/CircuitGrid.js +31 -13
- package/dist/components/CloudsGenerator.d.ts +1 -1
- package/dist/components/CloudsGenerator.js +1 -1
- package/dist/components/ContourGrid.d.ts +8 -14
- package/dist/components/ContourGrid.d.ts.map +1 -1
- package/dist/components/ContourGrid.js +31 -13
- package/dist/components/EffectsGenerator.d.ts +7 -1
- package/dist/components/EffectsGenerator.d.ts.map +1 -1
- package/dist/components/EffectsGenerator.js +39 -38
- package/dist/components/EnvironmentManager.d.ts +4 -4
- package/dist/components/EnvironmentManager.d.ts.map +1 -1
- package/dist/components/FlowNetGrid.d.ts +8 -4
- package/dist/components/FlowNetGrid.d.ts.map +1 -1
- package/dist/components/FlowNetGrid.js +31 -13
- package/dist/components/FractalGrid.d.ts +8 -12
- package/dist/components/FractalGrid.d.ts.map +1 -1
- package/dist/components/FractalGrid.js +31 -13
- package/dist/components/GirihGrid.d.ts +8 -1
- package/dist/components/GirihGrid.d.ts.map +1 -1
- package/dist/components/GirihGrid.js +31 -13
- package/dist/components/Glyphs.d.ts +7 -1
- package/dist/components/Glyphs.d.ts.map +1 -1
- package/dist/components/Glyphs.js +40 -34
- package/dist/components/GravWaveGrid.d.ts +8 -1
- package/dist/components/GravWaveGrid.d.ts.map +1 -1
- package/dist/components/GravWaveGrid.js +31 -13
- package/dist/components/GridsGenerator.d.ts +7 -1
- package/dist/components/GridsGenerator.d.ts.map +1 -1
- package/dist/components/GridsGenerator.js +20 -18
- package/dist/components/HexGrid.d.ts +8 -10
- package/dist/components/HexGrid.d.ts.map +1 -1
- package/dist/components/HexGrid.js +31 -13
- package/dist/components/HyperbolicGrid.d.ts +8 -4
- package/dist/components/HyperbolicGrid.d.ts.map +1 -1
- package/dist/components/HyperbolicGrid.js +31 -13
- package/dist/components/LandscapeBuilder.d.ts +1 -1
- package/dist/components/LandscapeBuilder.d.ts.map +1 -1
- package/dist/components/LandscapeBuilder.js +1 -1
- package/dist/components/LandscapeObject.d.ts +1 -1
- package/dist/components/LandscapeObject.d.ts.map +1 -1
- package/dist/components/LandscapeObject.js +1 -1
- package/dist/components/MoireGrid.d.ts +8 -12
- package/dist/components/MoireGrid.d.ts.map +1 -1
- package/dist/components/MoireGrid.js +31 -13
- package/dist/components/ObjectNode.d.ts.map +1 -1
- package/dist/components/ObjectNode.js +2 -2
- package/dist/components/ObjectsRenderer.d.ts.map +1 -1
- package/dist/components/ObjectsRenderer.js +37 -3
- package/dist/components/OceanBuilder.d.ts +1 -1
- package/dist/components/OceanBuilder.js +1 -1
- package/dist/components/ParticlesGenerator.d.ts.map +1 -1
- package/dist/components/ParticlesGenerator.js +6 -0
- package/dist/components/QuasiGrid.d.ts +8 -11
- package/dist/components/QuasiGrid.d.ts.map +1 -1
- package/dist/components/QuasiGrid.js +31 -13
- package/dist/components/RadarGrid.d.ts +8 -13
- package/dist/components/RadarGrid.d.ts.map +1 -1
- package/dist/components/RadarGrid.js +31 -13
- package/dist/components/ReactionDiffusionGrid.d.ts +8 -1
- package/dist/components/ReactionDiffusionGrid.d.ts.map +1 -1
- package/dist/components/ReactionDiffusionGrid.js +33 -139
- package/dist/components/SceneBuilder.js +1 -1
- package/dist/components/SkySystem.d.ts +1 -1
- package/dist/components/SparklesBurst.d.ts +7 -1
- package/dist/components/SparklesBurst.d.ts.map +1 -1
- package/dist/components/SparklesBurst.js +31 -28
- package/dist/components/TerrainBuilder.d.ts +1 -1
- package/dist/components/TerrainBuilder.d.ts.map +1 -1
- package/dist/components/TerrainBuilder.js +1 -1
- package/dist/components/VoronoiGrid.d.ts +8 -10
- package/dist/components/VoronoiGrid.d.ts.map +1 -1
- package/dist/components/VoronoiGrid.js +31 -13
- package/dist/components/WallpaperGrid.d.ts +8 -1
- package/dist/components/WallpaperGrid.d.ts.map +1 -1
- package/dist/components/WallpaperGrid.js +33 -210
- package/dist/components/effects/AuraEffect.d.ts +8 -3
- package/dist/components/effects/AuraEffect.d.ts.map +1 -1
- package/dist/components/effects/AuraEffect.js +49 -24
- package/dist/components/effects/AuroraEffect.d.ts +8 -3
- package/dist/components/effects/AuroraEffect.d.ts.map +1 -1
- package/dist/components/effects/AuroraEffect.js +45 -25
- package/dist/components/effects/BlackHoleEffect.d.ts +8 -3
- package/dist/components/effects/BlackHoleEffect.d.ts.map +1 -1
- package/dist/components/effects/BlackHoleEffect.js +42 -21
- package/dist/components/effects/ConstellationEffect.d.ts +8 -3
- package/dist/components/effects/ConstellationEffect.d.ts.map +1 -1
- package/dist/components/effects/ConstellationEffect.js +49 -23
- package/dist/components/effects/DandelionSeedsEffect.d.ts +7 -2
- package/dist/components/effects/DandelionSeedsEffect.d.ts.map +1 -1
- package/dist/components/effects/DandelionSeedsEffect.js +19 -9
- package/dist/components/effects/DataStreamEffect.d.ts +8 -3
- package/dist/components/effects/DataStreamEffect.d.ts.map +1 -1
- package/dist/components/effects/DataStreamEffect.js +54 -26
- package/dist/components/effects/DnaHelixEffect.d.ts +8 -3
- package/dist/components/effects/DnaHelixEffect.d.ts.map +1 -1
- package/dist/components/effects/DnaHelixEffect.js +62 -30
- package/dist/components/effects/FallingLeavesEffect.d.ts +7 -2
- package/dist/components/effects/FallingLeavesEffect.d.ts.map +1 -1
- package/dist/components/effects/FallingLeavesEffect.js +19 -9
- package/dist/components/effects/FieldLinesEffect.d.ts +8 -3
- package/dist/components/effects/FieldLinesEffect.d.ts.map +1 -1
- package/dist/components/effects/FieldLinesEffect.js +30 -20
- package/dist/components/effects/Fire.d.ts +8 -3
- package/dist/components/effects/Fire.d.ts.map +1 -1
- package/dist/components/effects/Fire.js +47 -10
- package/dist/components/effects/FireflySwarmEffect.d.ts +7 -2
- package/dist/components/effects/FireflySwarmEffect.d.ts.map +1 -1
- package/dist/components/effects/FireflySwarmEffect.js +19 -9
- package/dist/components/effects/Flares.d.ts +10 -3
- package/dist/components/effects/Flares.d.ts.map +1 -1
- package/dist/components/effects/Flares.js +53 -56
- package/dist/components/effects/ForcefieldEffect.d.ts +8 -3
- package/dist/components/effects/ForcefieldEffect.d.ts.map +1 -1
- package/dist/components/effects/ForcefieldEffect.js +52 -33
- package/dist/components/effects/GalaxyEffect.d.ts +7 -2
- package/dist/components/effects/GalaxyEffect.d.ts.map +1 -1
- package/dist/components/effects/GalaxyEffect.js +19 -9
- package/dist/components/effects/HarmonicShellEffect.d.ts +8 -3
- package/dist/components/effects/HarmonicShellEffect.d.ts.map +1 -1
- package/dist/components/effects/HarmonicShellEffect.js +30 -22
- package/dist/components/effects/HologramEffect.d.ts +8 -3
- package/dist/components/effects/HologramEffect.d.ts.map +1 -1
- package/dist/components/effects/HologramEffect.js +52 -23
- package/dist/components/effects/IceCrystalsEffect.d.ts +8 -3
- package/dist/components/effects/IceCrystalsEffect.d.ts.map +1 -1
- package/dist/components/effects/IceCrystalsEffect.js +36 -21
- package/dist/components/effects/IceHaloEffect.d.ts +7 -2
- package/dist/components/effects/IceHaloEffect.d.ts.map +1 -1
- package/dist/components/effects/IceHaloEffect.js +19 -9
- package/dist/components/effects/LichtenbergEffect.d.ts +7 -2
- package/dist/components/effects/LichtenbergEffect.d.ts.map +1 -1
- package/dist/components/effects/LichtenbergEffect.js +19 -9
- package/dist/components/effects/LightningEffect.d.ts +8 -3
- package/dist/components/effects/LightningEffect.d.ts.map +1 -1
- package/dist/components/effects/LightningEffect.js +54 -32
- package/dist/components/effects/MoleculesEffect.d.ts +8 -3
- package/dist/components/effects/MoleculesEffect.d.ts.map +1 -1
- package/dist/components/effects/MoleculesEffect.js +31 -21
- package/dist/components/effects/MurmurationEffect.d.ts +7 -2
- package/dist/components/effects/MurmurationEffect.d.ts.map +1 -1
- package/dist/components/effects/MurmurationEffect.js +19 -9
- package/dist/components/effects/NeuralNetworkEffect.d.ts +8 -3
- package/dist/components/effects/NeuralNetworkEffect.d.ts.map +1 -1
- package/dist/components/effects/NeuralNetworkEffect.js +66 -33
- package/dist/components/effects/OrbEffect.d.ts +8 -3
- package/dist/components/effects/OrbEffect.d.ts.map +1 -1
- package/dist/components/effects/OrbEffect.js +89 -42
- package/dist/components/effects/PlanetaryRingsEffect.d.ts +7 -2
- package/dist/components/effects/PlanetaryRingsEffect.d.ts.map +1 -1
- package/dist/components/effects/PlanetaryRingsEffect.js +19 -9
- package/dist/components/effects/PortalEffect.d.ts +8 -3
- package/dist/components/effects/PortalEffect.d.ts.map +1 -1
- package/dist/components/effects/PortalEffect.js +41 -25
- package/dist/components/effects/ShockwaveEffect.d.ts +7 -2
- package/dist/components/effects/ShockwaveEffect.d.ts.map +1 -1
- package/dist/components/effects/ShockwaveEffect.js +19 -9
- package/dist/components/effects/SmokePlumeEffect.d.ts +8 -3
- package/dist/components/effects/SmokePlumeEffect.d.ts.map +1 -1
- package/dist/components/effects/SmokePlumeEffect.js +30 -20
- package/dist/components/effects/SmokeRibbon.d.ts +8 -2
- package/dist/components/effects/SmokeRibbon.d.ts.map +1 -1
- package/dist/components/effects/SmokeRibbon.js +34 -24
- package/dist/components/effects/SmokeRingEffect.d.ts +8 -3
- package/dist/components/effects/SmokeRingEffect.d.ts.map +1 -1
- package/dist/components/effects/SmokeRingEffect.js +33 -21
- package/dist/components/effects/StrangeAttractorEffect.d.ts +8 -3
- package/dist/components/effects/StrangeAttractorEffect.d.ts.map +1 -1
- package/dist/components/effects/StrangeAttractorEffect.js +30 -20
- package/dist/components/effects/VolumetricFogEffect.d.ts +8 -3
- package/dist/components/effects/VolumetricFogEffect.d.ts.map +1 -1
- package/dist/components/effects/VolumetricFogEffect.js +38 -20
- package/dist/components/effects/WaterCausticsEffect.d.ts +7 -2
- package/dist/components/effects/WaterCausticsEffect.d.ts.map +1 -1
- package/dist/components/effects/WaterCausticsEffect.js +19 -9
- package/dist/components/effects/index.d.ts +0 -1
- package/dist/components/effects/index.d.ts.map +1 -1
- package/dist/components/effects/index.js +0 -1
- package/dist/components/index.d.ts +0 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +0 -1
- package/dist/components/landscape/LandscapeMesh.js +1 -1
- package/dist/components/landscape/types.d.ts +1 -1
- package/dist/components/landscape/types.d.ts.map +1 -1
- package/dist/components/particles/MagneticBottleParticles.d.ts +17 -0
- package/dist/components/particles/MagneticBottleParticles.d.ts.map +1 -0
- package/dist/components/particles/MagneticBottleParticles.js +618 -0
- package/dist/components/particles/ShapeBurstParticles.d.ts +17 -0
- package/dist/components/particles/ShapeBurstParticles.d.ts.map +1 -0
- package/dist/components/particles/ShapeBurstParticles.js +588 -0
- package/dist/components/particles/ShapeFlowParticles.d.ts +17 -0
- package/dist/components/particles/ShapeFlowParticles.d.ts.map +1 -0
- package/dist/components/particles/ShapeFlowParticles.js +755 -0
- package/dist/components/particles/index.d.ts +6 -0
- package/dist/components/particles/index.d.ts.map +1 -1
- package/dist/components/particles/index.js +3 -0
- package/dist/components/terrain/types.d.ts +1 -1
- package/dist/components/terrain/types.d.ts.map +1 -1
- package/dist/components/volumetricClouds/VolumetricCloudsPass.d.ts +1 -1
- package/dist/components/volumetricClouds/VolumetricCloudsPass.d.ts.map +1 -1
- package/dist/components/volumetricClouds/types.d.ts +1 -1
- package/dist/components/volumetricClouds/types.d.ts.map +1 -1
- package/dist/components/water/types.d.ts +1 -1
- package/dist/components/water/types.d.ts.map +1 -1
- package/dist/constants.d.ts +1 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +1 -1
- 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/useConfigDriver.d.ts +22 -0
- package/dist/hooks/useConfigDriver.d.ts.map +1 -0
- package/dist/hooks/useConfigDriver.js +43 -0
- package/dist/hooks/useConfigLive.d.ts +1 -1
- package/dist/hooks/useConfigLive.d.ts.map +1 -1
- package/dist/hooks/useLandscapeMaps.d.ts +1 -1
- package/dist/hooks/useLandscapeMaps.d.ts.map +1 -1
- package/dist/hooks/useOceanMaterial.d.ts +1 -1
- package/dist/hooks/useThunder.d.ts +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -2
- package/dist/interactions/index.d.ts +2 -1
- package/dist/interactions/index.d.ts.map +1 -1
- package/dist/interactions/index.js +1 -1
- package/dist/interactions/runner.d.ts +18 -3
- package/dist/interactions/runner.d.ts.map +1 -1
- package/dist/interactions/runner.js +25 -2
- package/dist/operations/catalogue/curlSmoke.d.ts +3 -0
- package/dist/operations/catalogue/curlSmoke.d.ts.map +1 -0
- package/dist/operations/catalogue/curlSmoke.js +178 -0
- package/dist/operations/catalogue/displayImage.d.ts.map +1 -1
- package/dist/operations/catalogue/displayImage.js +1 -0
- package/dist/operations/catalogue/dissolve.d.ts +3 -0
- package/dist/operations/catalogue/dissolve.d.ts.map +1 -0
- package/dist/operations/catalogue/dissolve.js +57 -0
- package/dist/operations/catalogue/emberAsh.d.ts +3 -0
- package/dist/operations/catalogue/emberAsh.d.ts.map +1 -0
- package/dist/operations/catalogue/emberAsh.js +171 -0
- package/dist/operations/catalogue/fade.d.ts.map +1 -1
- package/dist/operations/catalogue/fade.js +1 -0
- package/dist/operations/catalogue/flip.d.ts +3 -0
- package/dist/operations/catalogue/flip.d.ts.map +1 -0
- package/dist/operations/catalogue/flip.js +69 -0
- package/dist/operations/catalogue/flock.d.ts +3 -0
- package/dist/operations/catalogue/flock.d.ts.map +1 -0
- package/dist/operations/catalogue/flock.js +163 -0
- package/dist/operations/catalogue/focus.d.ts.map +1 -1
- package/dist/operations/catalogue/focus.js +1 -0
- package/dist/operations/catalogue/frame.d.ts +3 -0
- package/dist/operations/catalogue/frame.d.ts.map +1 -0
- package/dist/operations/catalogue/frame.js +44 -0
- package/dist/operations/catalogue/frost.d.ts +3 -0
- package/dist/operations/catalogue/frost.d.ts.map +1 -0
- package/dist/operations/catalogue/frost.js +111 -0
- package/dist/operations/catalogue/fxInstances.d.ts +21 -0
- package/dist/operations/catalogue/fxInstances.d.ts.map +1 -0
- package/dist/operations/catalogue/fxInstances.js +47 -0
- package/dist/operations/catalogue/fxPoints.d.ts +22 -0
- package/dist/operations/catalogue/fxPoints.d.ts.map +1 -0
- package/dist/operations/catalogue/fxPoints.js +70 -0
- package/dist/operations/catalogue/glow.d.ts.map +1 -1
- package/dist/operations/catalogue/glow.js +2 -1
- package/dist/operations/catalogue/heatCracks.d.ts +3 -0
- package/dist/operations/catalogue/heatCracks.d.ts.map +1 -0
- package/dist/operations/catalogue/heatCracks.js +134 -0
- package/dist/operations/catalogue/hologram.d.ts +3 -0
- package/dist/operations/catalogue/hologram.d.ts.map +1 -0
- package/dist/operations/catalogue/hologram.js +118 -0
- package/dist/operations/catalogue/inkBloom.d.ts +3 -0
- package/dist/operations/catalogue/inkBloom.d.ts.map +1 -0
- package/dist/operations/catalogue/inkBloom.js +156 -0
- package/dist/operations/catalogue/ivy.d.ts +13 -0
- package/dist/operations/catalogue/ivy.d.ts.map +1 -0
- package/dist/operations/catalogue/ivy.js +469 -0
- package/dist/operations/catalogue/jelly.d.ts +3 -0
- package/dist/operations/catalogue/jelly.d.ts.map +1 -0
- package/dist/operations/catalogue/jelly.js +50 -0
- package/dist/operations/catalogue/kintsugi.d.ts +3 -0
- package/dist/operations/catalogue/kintsugi.d.ts.map +1 -0
- package/dist/operations/catalogue/kintsugi.js +173 -0
- package/dist/operations/catalogue/lidarScan.d.ts +3 -0
- package/dist/operations/catalogue/lidarScan.d.ts.map +1 -0
- package/dist/operations/catalogue/lidarScan.js +240 -0
- package/dist/operations/catalogue/liquidMetal.d.ts +3 -0
- package/dist/operations/catalogue/liquidMetal.d.ts.map +1 -0
- package/dist/operations/catalogue/liquidMetal.js +122 -0
- package/dist/operations/catalogue/metalize.d.ts +3 -0
- package/dist/operations/catalogue/metalize.d.ts.map +1 -0
- package/dist/operations/catalogue/metalize.js +135 -0
- package/dist/operations/catalogue/moveToFront.d.ts.map +1 -1
- package/dist/operations/catalogue/moveToFront.js +1 -0
- package/dist/operations/catalogue/orbit.d.ts +3 -0
- package/dist/operations/catalogue/orbit.d.ts.map +1 -0
- package/dist/operations/catalogue/orbit.js +29 -0
- package/dist/operations/catalogue/particleSwarm.d.ts +3 -0
- package/dist/operations/catalogue/particleSwarm.d.ts.map +1 -0
- package/dist/operations/catalogue/particleSwarm.js +138 -0
- package/dist/operations/catalogue/petalPeel.d.ts +3 -0
- package/dist/operations/catalogue/petalPeel.d.ts.map +1 -0
- package/dist/operations/catalogue/petalPeel.js +137 -0
- package/dist/operations/catalogue/petrify.d.ts +3 -0
- package/dist/operations/catalogue/petrify.d.ts.map +1 -0
- package/dist/operations/catalogue/petrify.js +94 -0
- package/dist/operations/catalogue/portal.d.ts +3 -0
- package/dist/operations/catalogue/portal.d.ts.map +1 -0
- package/dist/operations/catalogue/portal.js +224 -0
- package/dist/operations/catalogue/print3d.d.ts +3 -0
- package/dist/operations/catalogue/print3d.d.ts.map +1 -0
- package/dist/operations/catalogue/print3d.js +275 -0
- package/dist/operations/catalogue/rainBeads.d.ts +3 -0
- package/dist/operations/catalogue/rainBeads.d.ts.map +1 -0
- package/dist/operations/catalogue/rainBeads.js +223 -0
- package/dist/operations/catalogue/restPose.d.ts +21 -0
- package/dist/operations/catalogue/restPose.d.ts.map +1 -0
- package/dist/operations/catalogue/restPose.js +55 -0
- package/dist/operations/catalogue/rimLight.d.ts +3 -0
- package/dist/operations/catalogue/rimLight.d.ts.map +1 -0
- package/dist/operations/catalogue/rimLight.js +72 -0
- package/dist/operations/catalogue/sandErosion.d.ts +3 -0
- package/dist/operations/catalogue/sandErosion.d.ts.map +1 -0
- package/dist/operations/catalogue/sandErosion.js +167 -0
- package/dist/operations/catalogue/shaderLayers.d.ts +74 -0
- package/dist/operations/catalogue/shaderLayers.d.ts.map +1 -0
- package/dist/operations/catalogue/shaderLayers.js +322 -0
- package/dist/operations/catalogue/shatter.d.ts +3 -0
- package/dist/operations/catalogue/shatter.d.ts.map +1 -0
- package/dist/operations/catalogue/shatter.js +267 -0
- package/dist/operations/catalogue/silkDrape.d.ts +3 -0
- package/dist/operations/catalogue/silkDrape.d.ts.map +1 -0
- package/dist/operations/catalogue/silkDrape.js +340 -0
- package/dist/operations/catalogue/spin.d.ts +3 -0
- package/dist/operations/catalogue/spin.d.ts.map +1 -0
- package/dist/operations/catalogue/spin.js +42 -0
- package/dist/operations/catalogue/surfaceSample.d.ts +17 -0
- package/dist/operations/catalogue/surfaceSample.d.ts.map +1 -0
- package/dist/operations/catalogue/surfaceSample.js +187 -0
- package/dist/operations/catalogue/swirl.d.ts +3 -0
- package/dist/operations/catalogue/swirl.d.ts.map +1 -0
- package/dist/operations/catalogue/swirl.js +69 -0
- package/dist/operations/catalogue/teleport.d.ts +3 -0
- package/dist/operations/catalogue/teleport.d.ts.map +1 -0
- package/dist/operations/catalogue/teleport.js +213 -0
- package/dist/operations/catalogue/transitionField.d.ts +124 -0
- package/dist/operations/catalogue/transitionField.d.ts.map +1 -0
- package/dist/operations/catalogue/transitionField.js +278 -0
- package/dist/operations/catalogue/unweave.d.ts +3 -0
- package/dist/operations/catalogue/unweave.d.ts.map +1 -0
- package/dist/operations/catalogue/unweave.js +233 -0
- package/dist/operations/catalogue/visibility.d.ts.map +1 -1
- package/dist/operations/catalogue/visibility.js +1 -0
- package/dist/operations/catalogue/voxelize.d.ts +3 -0
- package/dist/operations/catalogue/voxelize.d.ts.map +1 -0
- package/dist/operations/catalogue/voxelize.js +148 -0
- package/dist/operations/catalogue/warmup.d.ts +22 -0
- package/dist/operations/catalogue/warmup.d.ts.map +1 -0
- package/dist/operations/catalogue/warmup.js +106 -0
- package/dist/operations/catalogue/zoom.d.ts.map +1 -1
- package/dist/operations/catalogue/zoom.js +1 -0
- package/dist/operations/index.d.ts +4 -2
- package/dist/operations/index.d.ts.map +1 -1
- package/dist/operations/index.js +4 -2
- package/dist/operations/objectEffects.d.ts +46 -0
- package/dist/operations/objectEffects.d.ts.map +1 -0
- package/dist/operations/objectEffects.js +136 -0
- package/dist/operations/registry.d.ts +7 -2
- package/dist/operations/registry.d.ts.map +1 -1
- package/dist/operations/registry.js +45 -3
- package/dist/operations/runtime.d.ts +40 -2
- package/dist/operations/runtime.d.ts.map +1 -1
- package/dist/operations/runtime.js +164 -8
- package/dist/operations/types.d.ts +29 -3
- package/dist/operations/types.d.ts.map +1 -1
- package/dist/operations/types.js +6 -0
- package/dist/operations/useObjectEffectLayers.d.ts +4 -0
- package/dist/operations/useObjectEffectLayers.d.ts.map +1 -0
- package/dist/operations/useObjectEffectLayers.js +42 -0
- package/dist/operations/useOperationsRuntime.d.ts.map +1 -1
- package/dist/operations/useOperationsRuntime.js +42 -4
- package/dist/presets/landscapePresets.d.ts +1 -1
- package/dist/presets/landscapePresets.d.ts.map +1 -1
- package/dist/presets/landscapePresets.js +1 -1
- package/dist/presets/landscapeTypes.d.ts +1 -1
- package/dist/presets/landscapeTypes.d.ts.map +1 -1
- package/dist/presets/landscapeTypes.js +1 -1
- package/dist/presets/oceanSurfacePresets.d.ts +1 -1
- package/dist/presets/terrainPresets.d.ts +1 -1
- package/dist/presets/terrainPresets.d.ts.map +1 -1
- package/dist/presets/volumetricCloudPresets.d.ts +1 -1
- package/dist/types/cloudConfigs.d.ts +2 -309
- package/dist/types/cloudConfigs.d.ts.map +1 -1
- package/dist/types/cloudConfigs.js +2 -339
- package/dist/types/index.d.ts +8 -8
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +4 -4
- package/dist/types/landscapeConfigs.d.ts +2 -217
- package/dist/types/landscapeConfigs.d.ts.map +1 -1
- package/dist/types/landscapeConfigs.js +2 -256
- package/dist/types/oceanConfigs.d.ts +2 -289
- package/dist/types/oceanConfigs.d.ts.map +1 -1
- package/dist/types/oceanConfigs.js +2 -380
- package/dist/types/terrainConfigs.d.ts +2 -250
- package/dist/types/terrainConfigs.d.ts.map +1 -1
- package/dist/types/terrainConfigs.js +2 -292
- package/dist/utils/cloudUniforms.d.ts +1 -1
- package/dist/utils/configAnimations.d.ts +6 -0
- package/dist/utils/configAnimations.d.ts.map +1 -1
- package/dist/utils/configAnimations.js +14 -0
- package/dist/utils/gridConfig.d.ts +19 -0
- package/dist/utils/gridConfig.d.ts.map +1 -0
- package/dist/utils/gridConfig.js +52 -0
- package/dist/utils/handleCloudsAnimations.d.ts +1 -1
- package/dist/utils/handleCloudsAnimations.js +1 -1
- package/dist/utils/hasHoverAnimation.d.ts.map +1 -1
- package/dist/utils/hasHoverAnimation.js +0 -2
- package/dist/utils/landscapeUniforms.d.ts +1 -1
- package/dist/utils/landscapeUniforms.d.ts.map +1 -1
- package/dist/utils/oceanUniforms.d.ts +1 -1
- package/dist/utils/particleShape.d.ts +33 -0
- package/dist/utils/particleShape.d.ts.map +1 -0
- package/dist/utils/particleShape.js +207 -0
- package/dist/utils/particleTrails.d.ts.map +1 -1
- package/dist/utils/particleTrails.js +29 -14
- package/dist/utils/terrainUniforms.d.ts +1 -1
- package/dist/utils/terrainUniforms.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1,339 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
* Declared locally rather than in `@3driseai/3drise-core`, alongside
|
|
5
|
-
* `gridConfigs.ts`, because the materials and the renderer are here and nothing
|
|
6
|
-
* outside the viewer needs to construct these by hand.
|
|
7
|
-
*
|
|
8
|
-
* A sky is a deck PLUS an optional ice layer, not one of four things — cirrus
|
|
9
|
-
* coexists with every other type in nature and in the renderer. So a cloud
|
|
10
|
-
* settings object carries two independent layer blocks.
|
|
11
|
-
*/
|
|
12
|
-
// -----------------------------------------------------------------------------
|
|
13
|
-
// Defaults
|
|
14
|
-
// -----------------------------------------------------------------------------
|
|
15
|
-
const deckBase = {
|
|
16
|
-
coverage: 0.52,
|
|
17
|
-
density: 2.6,
|
|
18
|
-
profile: 0.52,
|
|
19
|
-
baseAltitude: 1500,
|
|
20
|
-
topAltitude: 3400,
|
|
21
|
-
featureSize: 2600,
|
|
22
|
-
detailSize: 400,
|
|
23
|
-
detailStrength: 0.5,
|
|
24
|
-
curlStrength: 0.55,
|
|
25
|
-
weatherCellSize: 24000,
|
|
26
|
-
shear: 0.08,
|
|
27
|
-
anvil: 0,
|
|
28
|
-
precipitation: 0,
|
|
29
|
-
windBearing: 78,
|
|
30
|
-
windSpeed: 6,
|
|
31
|
-
rise: 1.4,
|
|
32
|
-
churn: 4.5,
|
|
33
|
-
evolution: 0.45,
|
|
34
|
-
extinction: 0.013,
|
|
35
|
-
forwardLobe: 0.8,
|
|
36
|
-
backLobe: 0.32,
|
|
37
|
-
msExtinction: 0.55,
|
|
38
|
-
msEnergy: 0.58,
|
|
39
|
-
msPhase: 0.6,
|
|
40
|
-
powder: 0.85,
|
|
41
|
-
silverLining: 0.9,
|
|
42
|
-
ambient: 1,
|
|
43
|
-
aerialPerspective: 0.000026,
|
|
44
|
-
};
|
|
45
|
-
export const defaultCumulusConfig = {
|
|
46
|
-
...deckBase,
|
|
47
|
-
type: 'clouds',
|
|
48
|
-
deckType: 'cumulus',
|
|
49
|
-
preset: '',
|
|
50
|
-
enabled: true,
|
|
51
|
-
};
|
|
52
|
-
export const defaultStratocumulusConfig = {
|
|
53
|
-
...deckBase,
|
|
54
|
-
type: 'clouds',
|
|
55
|
-
deckType: 'stratocumulus',
|
|
56
|
-
preset: '',
|
|
57
|
-
enabled: true,
|
|
58
|
-
coverage: 0.86,
|
|
59
|
-
density: 4.5,
|
|
60
|
-
profile: 0.22,
|
|
61
|
-
baseAltitude: 900,
|
|
62
|
-
topAltitude: 1700,
|
|
63
|
-
featureSize: 2200,
|
|
64
|
-
detailSize: 450,
|
|
65
|
-
detailStrength: 0.36,
|
|
66
|
-
curlStrength: 0.42,
|
|
67
|
-
weatherCellSize: 17000,
|
|
68
|
-
shear: 0.16,
|
|
69
|
-
windSpeed: 9,
|
|
70
|
-
rise: 0.6,
|
|
71
|
-
churn: 2.2,
|
|
72
|
-
evolution: 0.35,
|
|
73
|
-
extinction: 0.017,
|
|
74
|
-
forwardLobe: 0.72,
|
|
75
|
-
powder: 1,
|
|
76
|
-
silverLining: 0.5,
|
|
77
|
-
ambient: 1.15,
|
|
78
|
-
aerialPerspective: 0.000034,
|
|
79
|
-
};
|
|
80
|
-
export const defaultCumulonimbusConfig = {
|
|
81
|
-
...deckBase,
|
|
82
|
-
type: 'clouds',
|
|
83
|
-
deckType: 'cumulonimbus',
|
|
84
|
-
preset: '',
|
|
85
|
-
enabled: true,
|
|
86
|
-
coverage: 0.52,
|
|
87
|
-
density: 3.2,
|
|
88
|
-
profile: 0.96,
|
|
89
|
-
baseAltitude: 1100,
|
|
90
|
-
topAltitude: 9500,
|
|
91
|
-
featureSize: 5200,
|
|
92
|
-
detailSize: 1200,
|
|
93
|
-
curlStrength: 0.85,
|
|
94
|
-
weatherCellSize: 46000,
|
|
95
|
-
shear: 0.42,
|
|
96
|
-
anvil: 0.95,
|
|
97
|
-
precipitation: 0.75,
|
|
98
|
-
windSpeed: 11,
|
|
99
|
-
rise: 3.2,
|
|
100
|
-
churn: 7,
|
|
101
|
-
evolution: 0.55,
|
|
102
|
-
extinction: 0.019,
|
|
103
|
-
forwardLobe: 0.83,
|
|
104
|
-
powder: 1.05,
|
|
105
|
-
silverLining: 1.35,
|
|
106
|
-
ambient: 0.85,
|
|
107
|
-
aerialPerspective: 0.00002,
|
|
108
|
-
};
|
|
109
|
-
export const defaultCirrusConfig = {
|
|
110
|
-
preset: '',
|
|
111
|
-
enabled: true,
|
|
112
|
-
altitude: 8200,
|
|
113
|
-
thickness: 700,
|
|
114
|
-
coverage: 0.62,
|
|
115
|
-
opticalDepth: 0.95,
|
|
116
|
-
featureSize: 44000,
|
|
117
|
-
anisotropy: 0.11,
|
|
118
|
-
windBearing: 78,
|
|
119
|
-
windSpeed: 16,
|
|
120
|
-
halo: 1.1,
|
|
121
|
-
forwardLobe: 0.9,
|
|
122
|
-
secondaryLobe: 0.2,
|
|
123
|
-
ambient: 1,
|
|
124
|
-
aerialPerspective: 0.000026,
|
|
125
|
-
};
|
|
126
|
-
export const defaultThunderConfig = {
|
|
127
|
-
enabled: false,
|
|
128
|
-
rate: 8,
|
|
129
|
-
intensity: 9,
|
|
130
|
-
color: '#cfe0ff',
|
|
131
|
-
radius: 900,
|
|
132
|
-
strokes: 3,
|
|
133
|
-
strokeDuration: 0.055,
|
|
134
|
-
scatter: 0.35,
|
|
135
|
-
sceneFlash: 0.55,
|
|
136
|
-
originHeight: 0.35,
|
|
137
|
-
spread: 40000,
|
|
138
|
-
};
|
|
139
|
-
export const defaultCloudsQuality = {
|
|
140
|
-
resolutionScale: 0.5,
|
|
141
|
-
temporalBlend: 0.9,
|
|
142
|
-
steps: 96,
|
|
143
|
-
lightSteps: 6,
|
|
144
|
-
lightStep: 0.024,
|
|
145
|
-
stepGrowth: 0.0045,
|
|
146
|
-
maxSpan: 120000,
|
|
147
|
-
detailFadeDistance: 16000,
|
|
148
|
-
curvature: 1 / (2 * 6371000),
|
|
149
|
-
exposure: 1,
|
|
150
|
-
tonemap: true,
|
|
151
|
-
};
|
|
152
|
-
/** Per-type deck defaults, for the controller's type switcher. */
|
|
153
|
-
export const CLOUD_DECK_DEFAULTS = {
|
|
154
|
-
cumulus: defaultCumulusConfig,
|
|
155
|
-
stratocumulus: defaultStratocumulusConfig,
|
|
156
|
-
cumulonimbus: defaultCumulonimbusConfig,
|
|
157
|
-
};
|
|
158
|
-
export const CLOUD_DECK_SCHEMA = [
|
|
159
|
-
{ key: 'coverage', label: 'Coverage', group: 'shape', min: 0, max: 1, step: 0.005, description: 'How much of the sky is filled with cloud. Low leaves scattered puffs, high closes it into solid overcast.' },
|
|
160
|
-
{ key: 'profile', label: 'Vertical profile', group: 'shape', min: 0, max: 1, step: 0.005, description: 'The overall shape, from flat sheets through classic puffy clouds to towering storm clouds.' },
|
|
161
|
-
{ key: 'density', label: 'Density', group: 'shape', min: 0, max: 9, step: 0.02, description: 'How thick and solid the cloud looks. Too high and it turns into a grey mass.' },
|
|
162
|
-
{ key: 'baseAltitude', label: 'Base altitude', group: 'shape', min: 200, max: 6000, step: 10, unit: 'm', description: 'How high the bottom of the clouds sits.' },
|
|
163
|
-
{ key: 'topAltitude', label: 'Top altitude', group: 'shape', min: 600, max: 14000, step: 10, unit: 'm', description: 'How high the tops reach. The gap between this and the base is how tall the clouds are.' },
|
|
164
|
-
{ key: 'featureSize', label: 'Feature size', group: 'shape', min: 600, max: 9000, step: 10, unit: 'm', description: 'How big individual clouds are. Small makes a busy sky of many clouds, large makes a few huge ones.' },
|
|
165
|
-
{ key: 'detailSize', label: 'Detail size', group: 'shape', min: 150, max: 2000, step: 10, unit: 'm', description: 'The size of the fine bumps and wisps on the cloud surface.' },
|
|
166
|
-
{ key: 'detailStrength', label: 'Detail erosion', group: 'shape', min: 0, max: 1, step: 0.005, description: 'How much the edges are eaten away into wisps. Low gives smooth blobs, high gives ragged, torn edges.' },
|
|
167
|
-
{ key: 'curlStrength', label: 'Curl warp', group: 'shape', min: 0, max: 2, step: 0.01, description: 'Adds a swirling twist to the wisps, like cloud caught in a breeze.' },
|
|
168
|
-
{ key: 'weatherCellSize', label: 'Weather cell size', group: 'shape', min: 4000, max: 90000, step: 250, unit: 'm', description: 'How large an area shares the same weather. Big values give one huge system, small gives patchy skies.' },
|
|
169
|
-
{ key: 'shear', label: 'Wind shear', group: 'shape', min: 0, max: 1.2, step: 0.005, description: 'Leans the clouds over as they rise, like wind pushing the tops sideways.' },
|
|
170
|
-
{ key: 'anvil', label: 'Anvil spread', group: 'shape', min: 0, max: 1, step: 0.01, types: ['cumulonimbus'], description: 'Spreads the top of a storm cloud out flat, the classic anvil shape. Storm clouds only.' },
|
|
171
|
-
{ key: 'precipitation', label: 'Precipitation', group: 'shape', min: 0, max: 1, step: 0.01, types: ['cumulonimbus'], description: 'Darkens the underside to a heavy rain-bearing grey. Storm clouds only.' },
|
|
172
|
-
{ key: 'windBearing', label: 'Wind bearing', group: 'animation', min: 0, max: 360, step: 1, unit: 'deg', description: 'The compass direction the clouds drift towards.' },
|
|
173
|
-
{ key: 'windSpeed', label: 'Wind speed', group: 'animation', min: 0, max: 40, step: 0.1, unit: 'm/s', description: 'How fast the clouds drift across the sky.' },
|
|
174
|
-
{ key: 'rise', label: 'Convective rise', group: 'animation', min: 0, max: 12, step: 0.05, unit: 'm/s', description: 'How fast the clouds boil upwards, as warm air lifts through them.' },
|
|
175
|
-
{ key: 'churn', label: 'Detail churn', group: 'animation', min: 0, max: 24, step: 0.1, unit: 'm/s', description: 'How quickly the fine surface detail shifts and bubbles.' },
|
|
176
|
-
{ key: 'evolution', label: 'Formation / decay', group: 'animation', min: 0, max: 1, step: 0.01, description: 'How fast clouds form and fade away over time. Zero freezes the sky.' },
|
|
177
|
-
{ key: 'extinction', label: 'Extinction', group: 'scattering', min: 0.002, max: 0.06, step: 0.0005, unit: '1/m', description: 'How much light the cloud blocks. Higher makes it more opaque and its shadows deeper.' },
|
|
178
|
-
{ key: 'forwardLobe', label: 'Forward lobe', group: 'scattering', min: 0, max: 0.97, step: 0.005, description: 'The bright halo when you look towards the sun through cloud.' },
|
|
179
|
-
{ key: 'backLobe', label: 'Back lobe', group: 'scattering', min: 0, max: 0.9, step: 0.005, description: 'A soft glow when the sun is behind you.' },
|
|
180
|
-
{ key: 'msExtinction', label: 'MS extinction decay', group: 'scattering', min: 0.1, max: 0.95, step: 0.005, advanced: true, description: 'Fine tuning for how deep light reaches into the cloud. Lower brightens the interior.' },
|
|
181
|
-
{ key: 'msEnergy', label: 'MS energy decay', group: 'scattering', min: 0.1, max: 0.95, step: 0.005, advanced: true, description: 'Fine tuning for how much bounced light survives. Higher lifts the shadowed side.' },
|
|
182
|
-
{ key: 'msPhase', label: 'MS phase decay', group: 'scattering', min: 0.1, max: 0.95, step: 0.005, advanced: true, description: 'Fine tuning for how the glow spreads as light bounces around inside.' },
|
|
183
|
-
{ key: 'powder', label: 'Powder', group: 'scattering', min: 0, max: 1.5, step: 0.01, description: 'Darkens the edges facing away from the sun, which gives clouds their sense of bulk.' },
|
|
184
|
-
{ key: 'silverLining', label: 'Silver lining', group: 'scattering', min: 0, max: 4, step: 0.01, description: 'The bright rim on a cloud with the sun directly behind it.' },
|
|
185
|
-
{ key: 'ambient', label: 'Ambient', group: 'scattering', min: 0, max: 3, step: 0.01, description: 'How much light the cloud picks up from the sky and ground around it. Lifts the shadows.' },
|
|
186
|
-
{ key: 'aerialPerspective', label: 'Aerial perspective', group: 'lighting', min: 0, max: 0.00012, step: 0.000001, unit: '1/m', description: 'How quickly distant clouds fade into the haze.' },
|
|
187
|
-
];
|
|
188
|
-
export const CIRRUS_SCHEMA = [
|
|
189
|
-
{ key: 'altitude', label: 'Altitude', group: 'shape', min: 4000, max: 14000, step: 50, unit: 'm', description: 'How high the ice sheet floats. Real cirrus sits far above ordinary cloud.' },
|
|
190
|
-
{ key: 'thickness', label: 'Thickness', group: 'shape', min: 100, max: 2500, step: 25, unit: 'm', description: 'How deep the ice layer is.' },
|
|
191
|
-
{ key: 'coverage', label: 'Coverage', group: 'shape', min: 0, max: 1, step: 0.005, description: 'How much of the sky is filled with cloud. Low leaves scattered puffs, high closes it into solid overcast.' },
|
|
192
|
-
{ key: 'opticalDepth', label: 'Optical depth', group: 'shape', min: 0, max: 2, step: 0.01, description: 'How solid the ice looks. Keep it low — you should be able to see the sun through cirrus.' },
|
|
193
|
-
{ key: 'featureSize', label: 'Feature size', group: 'shape', min: 8000, max: 120000, step: 500, unit: 'm', description: 'How big individual clouds are. Small makes a busy sky of many clouds, large makes a few huge ones.' },
|
|
194
|
-
{ key: 'anisotropy', label: 'Anisotropy', group: 'shape', min: 0.03, max: 1, step: 0.005, description: 'How stretched the streaks are. Low gives long drawn-out fibres, high gives rounder patches.' },
|
|
195
|
-
{ key: 'windBearing', label: 'Wind bearing', group: 'animation', min: 0, max: 360, step: 1, unit: 'deg', description: 'The compass direction the clouds drift towards.' },
|
|
196
|
-
{ key: 'windSpeed', label: 'Drift speed', group: 'animation', min: 0, max: 60, step: 0.5, unit: 'm/s', description: 'How fast the clouds drift across the sky.' },
|
|
197
|
-
{ key: 'halo', label: '22 degree halo', group: 'lighting', min: 0, max: 2, step: 0.01, description: 'The ring of light that appears around the sun when it shines through ice crystals.' },
|
|
198
|
-
{ key: 'forwardLobe', label: 'Forward lobe', group: 'scattering', min: 0, max: 0.97, step: 0.005, description: 'The bright halo when you look towards the sun through cloud.' },
|
|
199
|
-
{ key: 'secondaryLobe', label: 'Secondary lobe', group: 'scattering', min: 0, max: 0.9, step: 0.005, description: 'Widens the glow around the sun rather than adding brightness behind you.' },
|
|
200
|
-
{ key: 'ambient', label: 'Ambient', group: 'scattering', min: 0, max: 3, step: 0.01, description: 'How much light the cloud picks up from the sky and ground around it. Lifts the shadows.' },
|
|
201
|
-
{ key: 'aerialPerspective', label: 'Aerial perspective', group: 'lighting', min: 0, max: 0.00012, step: 0.000001, unit: '1/m', description: 'How quickly distant clouds fade into the haze.' },
|
|
202
|
-
];
|
|
203
|
-
export const THUNDER_SCHEMA = [
|
|
204
|
-
{ key: 'rate', label: 'Flash rate', group: 'animation', min: 0.5, max: 60, step: 0.5, unit: '/min', description: 'How often lightning strikes, in flashes per minute.' },
|
|
205
|
-
{ key: 'intensity', label: 'Intensity', group: 'lighting', min: 0, max: 40, step: 0.1, description: 'How bright each flash is.' },
|
|
206
|
-
{ key: 'color', label: 'Bolt colour', group: 'lighting', valueType: 'color', description: 'The colour of the lightning. Real bolts are a cold blue-white.' },
|
|
207
|
-
{ key: 'radius', label: 'Glow radius', group: 'lighting', min: 100, max: 6000, step: 25, unit: 'm', description: 'How wide the glow spreads from the bolt. Large lights up a whole cloud, small keeps it to one spot.' },
|
|
208
|
-
{ key: 'scatter', label: 'Scatter depth', group: 'scattering', min: 0, max: 2, step: 0.01, description: 'How deep the light pushes through the cloud. Low lights the whole cloud, high keeps a tight bright core.' },
|
|
209
|
-
{ key: 'strokes', label: 'Strokes', group: 'animation', min: 1, max: 6, step: 1, description: 'How many times each bolt flickers. Real lightning stutters two to five times rather than flashing once.' },
|
|
210
|
-
{ key: 'strokeDuration', label: 'Stroke length', group: 'animation', min: 0.01, max: 0.3, step: 0.005, unit: 's', description: 'How long each flicker lasts. Longer stops feeling electric.' },
|
|
211
|
-
{ key: 'sceneFlash', label: 'Scene flash', group: 'lighting', min: 0, max: 1, step: 0.01, description: 'How much the rest of the scene lights up. At zero only the cloud flashes, which looks wrong.' },
|
|
212
|
-
{ key: 'originHeight', label: 'Origin height', group: 'shape', min: 0, max: 1, step: 0.01, description: 'How high up in the cloud the bolt sits. Low is where real lightning starts.' },
|
|
213
|
-
{ key: 'spread', label: 'Spread', group: 'shape', min: 500, max: 40000, step: 100, unit: 'm', description: 'How far away lightning can strike. Bolts always appear somewhere you can see.' },
|
|
214
|
-
];
|
|
215
|
-
export const CLOUD_QUALITY_SCHEMA = [
|
|
216
|
-
{ key: 'resolutionScale', label: 'Render scale', group: 'quality', min: 0.25, max: 1, step: 0.05, description: 'How sharply the clouds are drawn. Lower is faster but softer. 0.5 is the sweet spot.' },
|
|
217
|
-
{ key: 'temporalBlend', label: 'Temporal blend', group: 'quality', min: 0, max: 0.97, step: 0.005, description: 'Smooths the clouds by blending with the previous frame. Higher is cleaner but can smear when you move.' },
|
|
218
|
-
{ key: 'steps', label: 'Step budget', group: 'quality', min: 24, max: 176, step: 1, description: 'How carefully the clouds are traced. Higher looks better and costs more.' },
|
|
219
|
-
{ key: 'lightSteps', label: 'Light steps', group: 'quality', min: 2, max: 6, step: 1, advanced: true, description: 'How carefully shadows inside the cloud are worked out. Lower flattens them.' },
|
|
220
|
-
{ key: 'lightStep', label: 'Light step', group: 'quality', min: 0.004, max: 0.09, step: 0.001, advanced: true, description: 'How far apart those shadow checks are spread through the cloud.' },
|
|
221
|
-
{ key: 'stepGrowth', label: 'Distance step scale', group: 'quality', min: 0.0005, max: 0.03, step: 0.0005, advanced: true, description: 'Lets distant clouds be traced more coarsely, since they cover fewer pixels anyway.' },
|
|
222
|
-
{ key: 'maxSpan', label: 'Max march span', group: 'quality', min: 4000, max: 250000, step: 1000, unit: 'm', description: 'How far into the distance clouds are still drawn.' },
|
|
223
|
-
{ key: 'detailFadeDistance', label: 'Detail fade distance', group: 'quality', min: 2000, max: 80000, step: 500, unit: 'm', description: 'How far away clouds keep their fine detail before smoothing out.' },
|
|
224
|
-
{ key: 'curvature', label: 'Planetary curvature', group: 'quality', min: 0, max: 0.0000005, step: 0.00000001, advanced: true, description: 'Bends the cloud layer with the curve of the earth so it meets a real horizon.' },
|
|
225
|
-
{ key: 'exposure', label: 'Exposure', group: 'quality', min: 0.2, max: 4, step: 0.01, description: 'Overall brightness of the clouds.' },
|
|
226
|
-
];
|
|
227
|
-
export const defaultVolumetricCloudsSettings = {
|
|
228
|
-
id: '3drise-clouds',
|
|
229
|
-
type: 'clouds',
|
|
230
|
-
config: { ...defaultCumulusConfig, enabled: false },
|
|
231
|
-
cirrus: { ...defaultCirrusConfig, enabled: false },
|
|
232
|
-
thunder: { ...defaultThunderConfig },
|
|
233
|
-
quality: { ...defaultCloudsQuality },
|
|
234
|
-
};
|
|
235
|
-
/**
|
|
236
|
-
* Deck properties the `clouds` animation and mouse-move domains may target.
|
|
237
|
-
* Everything here is a scalar that can be interpolated per frame without
|
|
238
|
-
* rebuilding anything — altitudes and feature sizes are deliberately excluded,
|
|
239
|
-
* since changing them mid-animation restretches the whole density field.
|
|
240
|
-
*/
|
|
241
|
-
export const CLOUD_ANIMATABLE_PROPERTIES = [
|
|
242
|
-
'coverage',
|
|
243
|
-
'density',
|
|
244
|
-
'profile',
|
|
245
|
-
'detailStrength',
|
|
246
|
-
'curlStrength',
|
|
247
|
-
'shear',
|
|
248
|
-
'anvil',
|
|
249
|
-
'precipitation',
|
|
250
|
-
'windBearing',
|
|
251
|
-
'windSpeed',
|
|
252
|
-
'rise',
|
|
253
|
-
'churn',
|
|
254
|
-
'evolution',
|
|
255
|
-
'extinction',
|
|
256
|
-
'powder',
|
|
257
|
-
'silverLining',
|
|
258
|
-
'ambient',
|
|
259
|
-
];
|
|
260
|
-
// =============================================================================
|
|
261
|
-
// Normalisation
|
|
262
|
-
// =============================================================================
|
|
263
|
-
//
|
|
264
|
-
// A published scene loads whatever was in the database the day it was saved, and
|
|
265
|
-
// a scene saved a year ago will not have the knobs added since. Reading those
|
|
266
|
-
// straight into the renderer is how an embed dies: VolumetricCloudsPass sizes its
|
|
267
|
-
// half-res targets from `quality.resolutionScale` on its first frame, so a blob
|
|
268
|
-
// with no `quality` block throws before anything is drawn.
|
|
269
|
-
//
|
|
270
|
-
// So every entry point normalises. Each block is merged over its defaults
|
|
271
|
-
// separately, which matters as much as the merge itself: the pass keys its
|
|
272
|
-
// temporal accumulation off the identity of the deck config, so folding all three
|
|
273
|
-
// blocks through one object would restart the cloud history every time somebody
|
|
274
|
-
// nudged a cirrus slider.
|
|
275
|
-
const DECK_TYPES = ['cumulus', 'stratocumulus', 'cumulonimbus'];
|
|
276
|
-
const isRecord = (v) => typeof v === 'object' && v !== null;
|
|
277
|
-
/** Deck block merged over its type's defaults. Returns null when there is no deck
|
|
278
|
-
* to render — including the retired flat CloudsSettings shape, which has no
|
|
279
|
-
* `config` and should draw nothing rather than half a sky. */
|
|
280
|
-
export function normalizeCloudDeck(raw) {
|
|
281
|
-
if (!isRecord(raw))
|
|
282
|
-
return null;
|
|
283
|
-
// An unknown or missing deckType falls back rather than rendering nothing: a
|
|
284
|
-
// scene that says `enabled: true` should show a sky, and stratocumulus is the
|
|
285
|
-
// least surprising thing to show.
|
|
286
|
-
const deckType = DECK_TYPES.includes(raw.deckType)
|
|
287
|
-
? raw.deckType
|
|
288
|
-
: 'stratocumulus';
|
|
289
|
-
return {
|
|
290
|
-
...CLOUD_DECK_DEFAULTS[deckType],
|
|
291
|
-
...raw,
|
|
292
|
-
type: 'clouds',
|
|
293
|
-
deckType,
|
|
294
|
-
};
|
|
295
|
-
}
|
|
296
|
-
/** Cirrus block merged over its defaults, or null when the scene has no cirrus
|
|
297
|
-
* block at all. Null rather than the defaults, because `defaultCirrusConfig` is
|
|
298
|
-
* enabled: a project saved before this layer existed must not gain an ice sheet
|
|
299
|
-
* it was never authored with. A block that exists but omits `enabled` is a
|
|
300
|
-
* deliberate one and takes the default. */
|
|
301
|
-
export function normalizeCirrus(raw) {
|
|
302
|
-
if (!isRecord(raw))
|
|
303
|
-
return null;
|
|
304
|
-
return { ...defaultCirrusConfig, ...raw };
|
|
305
|
-
}
|
|
306
|
-
/** Thunder merged over defaults. Unlike cirrus this returns a config even when the
|
|
307
|
-
* block is absent, because the default is `enabled: false` — nothing appears, and a
|
|
308
|
-
* scene saved before thunder existed simply has it switched off. */
|
|
309
|
-
export function normalizeThunder(raw) {
|
|
310
|
-
return { ...defaultThunderConfig, ...(isRecord(raw) ? raw : {}) };
|
|
311
|
-
}
|
|
312
|
-
/**
|
|
313
|
-
* A complete settings object from whatever was saved.
|
|
314
|
-
*
|
|
315
|
-
* Use this at the boundary where a stored blob enters the app — the Redux reducer,
|
|
316
|
-
* a project load — so that everything downstream can read `settings.thunder.enabled`
|
|
317
|
-
* without a guard. The per-block normalisers above are for the renderer, which can
|
|
318
|
-
* meaningfully treat an absent block as "draw nothing"; the settings panel cannot,
|
|
319
|
-
* because it has to render a control for it either way.
|
|
320
|
-
*
|
|
321
|
-
* A missing deck becomes a disabled one rather than null, which renders the same
|
|
322
|
-
* nothing while still giving the panel an object to bind to.
|
|
323
|
-
*/
|
|
324
|
-
export function normalizeVolumetricClouds(raw) {
|
|
325
|
-
const r = (isRecord(raw) ? raw : {});
|
|
326
|
-
return {
|
|
327
|
-
id: typeof r.id === 'string' && r.id ? r.id : defaultVolumetricCloudsSettings.id,
|
|
328
|
-
type: 'clouds',
|
|
329
|
-
config: normalizeCloudDeck(r.config) ?? { ...defaultCumulusConfig, enabled: false },
|
|
330
|
-
cirrus: normalizeCirrus(r.cirrus) ?? { ...defaultCirrusConfig, enabled: false },
|
|
331
|
-
thunder: normalizeThunder(r.thunder),
|
|
332
|
-
quality: normalizeCloudQuality(r.quality),
|
|
333
|
-
animations: r.animations,
|
|
334
|
-
mouseMove: r.mouseMove,
|
|
335
|
-
};
|
|
336
|
-
}
|
|
337
|
-
export function normalizeCloudQuality(raw) {
|
|
338
|
-
return { ...defaultCloudsQuality, ...(isRecord(raw) ? raw : {}) };
|
|
339
|
-
}
|
|
1
|
+
// Moved to @3driseai/3drise-core (src/environment/cloudConfigs.ts). Re-exported for existing viewer imports.
|
|
2
|
+
export { CIRRUS_SCHEMA, CLOUD_ANIMATABLE_PROPERTIES, CLOUD_DECK_DEFAULTS, CLOUD_DECK_SCHEMA, CLOUD_QUALITY_SCHEMA, THUNDER_SCHEMA, defaultCirrusConfig, defaultCloudsQuality, defaultCumulonimbusConfig, defaultCumulusConfig, defaultStratocumulusConfig, defaultThunderConfig, defaultVolumetricCloudsSettings, normalizeCirrus, normalizeCloudDeck, normalizeCloudQuality, normalizeThunder, normalizeVolumetricClouds, } from '@3driseai/3drise-core';
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export type { ObjectReadyProps, ObjectReadySource, OnObjectDispose, OnObjectReady, } from './objectReady';
|
|
2
2
|
export type { AnyGridConfig, ChladniGridConfig, CircuitGridConfig, ContourGridConfig, FlowNetGridConfig, FractalGridConfig, GridCellMode, GridLineMode, GridSurfaceConfig, HexGridConfig, HyperbolicGridConfig, MoireGridConfig, QuasiGridConfig, RadarGridConfig, VoronoiGridConfig, GravWaveGridConfig, GirihGridConfig, WallpaperGridConfig, ReactionDiffusionGridConfig, } from './gridConfigs';
|
|
3
|
-
export type { CirrusLayerConfig, CloudAnimatableProperty, CloudDeckConfig, CloudDeckSurfaceConfig, CloudDeckType, CloudPropertyGroup, CloudPropertySchema, CloudsQualityConfig, ThunderConfig, VolumetricCloudsSettings, } from '
|
|
4
|
-
export type { ProceduralTerrainSettings, TerrainConfig, TerrainPropertyGroup, TerrainPropertySchema, TerrainQualityConfig, TerrainSurfaceConfig, TerrainType, } from '
|
|
5
|
-
export { TERRAIN_DEFAULTS, TERRAIN_QUALITY_SCHEMA, TERRAIN_SCHEMA, defaultCanyonConfig, defaultDunesConfig, defaultHillsConfig, defaultMountainsConfig, defaultProceduralTerrainSettings, defaultTerrainQuality, normalizeTerrain, normalizeTerrainQuality, normalizeTerrainSettings, } from '
|
|
6
|
-
export { CIRRUS_SCHEMA, CLOUD_ANIMATABLE_PROPERTIES, CLOUD_DECK_DEFAULTS, CLOUD_DECK_SCHEMA, CLOUD_QUALITY_SCHEMA, defaultCirrusConfig, defaultCloudsQuality, defaultCumulonimbusConfig, defaultCumulusConfig, defaultStratocumulusConfig, defaultThunderConfig, defaultVolumetricCloudsSettings, normalizeCirrus, normalizeCloudDeck, normalizeCloudQuality, normalizeThunder, normalizeVolumetricClouds, THUNDER_SCHEMA, } from '
|
|
7
|
-
export type { OceanConfig, OceanMeshSettings, OceanPropertyGroup, OceanPropertySchema, OceanQualityConfig, OceanSurfaceConfig, OceanWaterSettings, ReflectionMode, TerrainInteraction, WaterHost, WaterType, WaveModel, } from '
|
|
8
|
-
export { OCEAN_DEFAULTS, OCEAN_QUALITY_SCHEMA, OCEAN_SCHEMA, OBJECT_HOST_OVERRIDES, defaultLakeConfig, defaultOceanQuality, defaultOceanWaterSettings, defaultSeaConfig, defaultShoreConfig, defaultStormConfig, normalizeOcean, normalizeOceanQuality, normalizeOceanSettings, } from '
|
|
9
|
-
export type { AutoSplatConfig, HeightEncoding, LandscapeConfig, LandscapeHost, LandscapePropertyGroup, LandscapePropertySchema, LandscapeQualityConfig, LandscapeSettings, LandscapeSurface, SplatSource, } from '
|
|
10
|
-
export { LANDSCAPE_AUTOSPLAT_SCHEMA, LANDSCAPE_LIVE_AUTOSPLAT_KEYS, LANDSCAPE_LIVE_CONFIG_KEYS, LANDSCAPE_LIVE_QUALITY_KEYS, LANDSCAPE_LIVE_SURFACE_KEYS, LANDSCAPE_REBUILD_KEYS, LANDSCAPE_QUALITY_SCHEMA, LANDSCAPE_SCHEMA, MAX_LANDSCAPE_SURFACES, MAX_OBJECT_SURFACES, defaultAutoSplat, defaultLandscapeConfig, defaultLandscapeQuality, defaultLandscapeSettings, defaultLandscapeSurface, normalizeLandscape, normalizeLandscapeQuality, normalizeLandscapeSettings, normalizeLandscapeSurface, } from '
|
|
3
|
+
export type { CirrusLayerConfig, CloudAnimatableProperty, CloudDeckConfig, CloudDeckSurfaceConfig, CloudDeckType, CloudPropertyGroup, CloudPropertySchema, CloudsQualityConfig, ThunderConfig, VolumetricCloudsSettings, } from '@3driseai/3drise-core';
|
|
4
|
+
export type { ProceduralTerrainSettings, TerrainConfig, TerrainPropertyGroup, TerrainPropertySchema, TerrainQualityConfig, TerrainSurfaceConfig, TerrainType, } from '@3driseai/3drise-core';
|
|
5
|
+
export { TERRAIN_DEFAULTS, TERRAIN_QUALITY_SCHEMA, TERRAIN_SCHEMA, defaultCanyonConfig, defaultDunesConfig, defaultHillsConfig, defaultMountainsConfig, defaultProceduralTerrainSettings, defaultTerrainQuality, normalizeTerrain, normalizeTerrainQuality, normalizeTerrainSettings, } from '@3driseai/3drise-core';
|
|
6
|
+
export { CIRRUS_SCHEMA, CLOUD_ANIMATABLE_PROPERTIES, CLOUD_DECK_DEFAULTS, CLOUD_DECK_SCHEMA, CLOUD_QUALITY_SCHEMA, defaultCirrusConfig, defaultCloudsQuality, defaultCumulonimbusConfig, defaultCumulusConfig, defaultStratocumulusConfig, defaultThunderConfig, defaultVolumetricCloudsSettings, normalizeCirrus, normalizeCloudDeck, normalizeCloudQuality, normalizeThunder, normalizeVolumetricClouds, THUNDER_SCHEMA, } from '@3driseai/3drise-core';
|
|
7
|
+
export type { OceanConfig, OceanMeshSettings, OceanPropertyGroup, OceanPropertySchema, OceanQualityConfig, OceanSurfaceConfig, OceanWaterSettings, ReflectionMode, TerrainInteraction, WaterHost, WaterType, WaveModel, } from '@3driseai/3drise-core';
|
|
8
|
+
export { OCEAN_DEFAULTS, OCEAN_QUALITY_SCHEMA, OCEAN_SCHEMA, OBJECT_HOST_OVERRIDES, defaultLakeConfig, defaultOceanQuality, defaultOceanWaterSettings, defaultSeaConfig, defaultShoreConfig, defaultStormConfig, normalizeOcean, normalizeOceanQuality, normalizeOceanSettings, } from '@3driseai/3drise-core';
|
|
9
|
+
export type { AutoSplatConfig, HeightEncoding, LandscapeConfig, LandscapeHost, LandscapePropertyGroup, LandscapePropertySchema, LandscapeQualityConfig, LandscapeSettings, LandscapeSurface, SplatSource, } from '@3driseai/3drise-core';
|
|
10
|
+
export { LANDSCAPE_AUTOSPLAT_SCHEMA, LANDSCAPE_LIVE_AUTOSPLAT_KEYS, LANDSCAPE_LIVE_CONFIG_KEYS, LANDSCAPE_LIVE_QUALITY_KEYS, LANDSCAPE_LIVE_SURFACE_KEYS, LANDSCAPE_REBUILD_KEYS, LANDSCAPE_QUALITY_SCHEMA, LANDSCAPE_SCHEMA, MAX_LANDSCAPE_SURFACES, MAX_OBJECT_SURFACES, defaultAutoSplat, defaultLandscapeConfig, defaultLandscapeQuality, defaultLandscapeSettings, defaultLandscapeSurface, normalizeLandscape, normalizeLandscapeQuality, normalizeLandscapeSettings, normalizeLandscapeSurface, } from '@3driseai/3drise-core';
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,wBAAwB,GACzB,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACV,yBAAyB,EACzB,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,gCAAgC,EAChC,qBAAqB,EACrB,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,aAAa,EACb,2BAA2B,EAC3B,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,+BAA+B,EAC/B,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,yBAAyB,EACzB,cAAc,GACf,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,SAAS,EACT,SAAS,GACV,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,YAAY,EACZ,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,yBAAyB,EACzB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACV,eAAe,EACf,cAAc,EACd,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,yBAAyB,EACzB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC"}
|
package/dist/types/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { TERRAIN_DEFAULTS, TERRAIN_QUALITY_SCHEMA, TERRAIN_SCHEMA, defaultCanyonConfig, defaultDunesConfig, defaultHillsConfig, defaultMountainsConfig, defaultProceduralTerrainSettings, defaultTerrainQuality, normalizeTerrain, normalizeTerrainQuality, normalizeTerrainSettings, } from '
|
|
2
|
-
export { CIRRUS_SCHEMA, CLOUD_ANIMATABLE_PROPERTIES, CLOUD_DECK_DEFAULTS, CLOUD_DECK_SCHEMA, CLOUD_QUALITY_SCHEMA, defaultCirrusConfig, defaultCloudsQuality, defaultCumulonimbusConfig, defaultCumulusConfig, defaultStratocumulusConfig, defaultThunderConfig, defaultVolumetricCloudsSettings, normalizeCirrus, normalizeCloudDeck, normalizeCloudQuality, normalizeThunder, normalizeVolumetricClouds, THUNDER_SCHEMA, } from '
|
|
3
|
-
export { OCEAN_DEFAULTS, OCEAN_QUALITY_SCHEMA, OCEAN_SCHEMA, OBJECT_HOST_OVERRIDES, defaultLakeConfig, defaultOceanQuality, defaultOceanWaterSettings, defaultSeaConfig, defaultShoreConfig, defaultStormConfig, normalizeOcean, normalizeOceanQuality, normalizeOceanSettings, } from '
|
|
4
|
-
export { LANDSCAPE_AUTOSPLAT_SCHEMA, LANDSCAPE_LIVE_AUTOSPLAT_KEYS, LANDSCAPE_LIVE_CONFIG_KEYS, LANDSCAPE_LIVE_QUALITY_KEYS, LANDSCAPE_LIVE_SURFACE_KEYS, LANDSCAPE_REBUILD_KEYS, LANDSCAPE_QUALITY_SCHEMA, LANDSCAPE_SCHEMA, MAX_LANDSCAPE_SURFACES, MAX_OBJECT_SURFACES, defaultAutoSplat, defaultLandscapeConfig, defaultLandscapeQuality, defaultLandscapeSettings, defaultLandscapeSurface, normalizeLandscape, normalizeLandscapeQuality, normalizeLandscapeSettings, normalizeLandscapeSurface, } from '
|
|
1
|
+
export { TERRAIN_DEFAULTS, TERRAIN_QUALITY_SCHEMA, TERRAIN_SCHEMA, defaultCanyonConfig, defaultDunesConfig, defaultHillsConfig, defaultMountainsConfig, defaultProceduralTerrainSettings, defaultTerrainQuality, normalizeTerrain, normalizeTerrainQuality, normalizeTerrainSettings, } from '@3driseai/3drise-core';
|
|
2
|
+
export { CIRRUS_SCHEMA, CLOUD_ANIMATABLE_PROPERTIES, CLOUD_DECK_DEFAULTS, CLOUD_DECK_SCHEMA, CLOUD_QUALITY_SCHEMA, defaultCirrusConfig, defaultCloudsQuality, defaultCumulonimbusConfig, defaultCumulusConfig, defaultStratocumulusConfig, defaultThunderConfig, defaultVolumetricCloudsSettings, normalizeCirrus, normalizeCloudDeck, normalizeCloudQuality, normalizeThunder, normalizeVolumetricClouds, THUNDER_SCHEMA, } from '@3driseai/3drise-core';
|
|
3
|
+
export { OCEAN_DEFAULTS, OCEAN_QUALITY_SCHEMA, OCEAN_SCHEMA, OBJECT_HOST_OVERRIDES, defaultLakeConfig, defaultOceanQuality, defaultOceanWaterSettings, defaultSeaConfig, defaultShoreConfig, defaultStormConfig, normalizeOcean, normalizeOceanQuality, normalizeOceanSettings, } from '@3driseai/3drise-core';
|
|
4
|
+
export { LANDSCAPE_AUTOSPLAT_SCHEMA, LANDSCAPE_LIVE_AUTOSPLAT_KEYS, LANDSCAPE_LIVE_CONFIG_KEYS, LANDSCAPE_LIVE_QUALITY_KEYS, LANDSCAPE_LIVE_SURFACE_KEYS, LANDSCAPE_REBUILD_KEYS, LANDSCAPE_QUALITY_SCHEMA, LANDSCAPE_SCHEMA, MAX_LANDSCAPE_SURFACES, MAX_OBJECT_SURFACES, defaultAutoSplat, defaultLandscapeConfig, defaultLandscapeQuality, defaultLandscapeSettings, defaultLandscapeSurface, normalizeLandscape, normalizeLandscapeQuality, normalizeLandscapeSettings, normalizeLandscapeSurface, } from '@3driseai/3drise-core';
|
|
@@ -1,218 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* from a heightmap and textured through splat maps.
|
|
4
|
-
*
|
|
5
|
-
* This is NOT a mode of the procedural terrain and does not share a config with
|
|
6
|
-
* it. Terrain is an infinite camera-following clipmap generated from noise; a
|
|
7
|
-
* landscape is a finite tile whose shape and materials the user supplies. Both
|
|
8
|
-
* may be enabled in one scene; nothing here reads `terrainConfigs`.
|
|
9
|
-
*
|
|
10
|
-
* Declared in the viewer, next to the material that consumes it, for the same
|
|
11
|
-
* reason `terrainConfigs` and `oceanConfigs` are.
|
|
12
|
-
*/
|
|
13
|
-
/** Where a landscape is mounted. */
|
|
14
|
-
export type LandscapeHost = 'ground' | 'object';
|
|
15
|
-
/** How the heightmap's pixels encode elevation. */
|
|
16
|
-
export type HeightEncoding =
|
|
17
|
-
/** 8-bit red channel, 0..1. The common PNG export. */
|
|
18
|
-
'grayscale'
|
|
19
|
-
/** Mapbox / AWS Terrain-RGB: (r*65536 + g*256 + b) / 10 - 10000, in metres. */
|
|
20
|
-
| 'terrain-rgb'
|
|
21
|
-
/** Red and green as a 16-bit big-endian pair, 0..1. */
|
|
22
|
-
| 'rg16';
|
|
23
|
-
/** Where surface weights come from. */
|
|
24
|
-
export type SplatSource =
|
|
25
|
-
/** Authored splat maps, up to two, RGBA = four surfaces each. */
|
|
26
|
-
'maps'
|
|
27
|
-
/** Generated from the heightmap's own height and slope. */
|
|
28
|
-
| 'auto';
|
|
29
|
-
/**
|
|
30
|
-
* One material layer on the ground.
|
|
31
|
-
*
|
|
32
|
-
* `displacement` is the layer's own height map and it is what makes transitions
|
|
33
|
-
* read as material rather than as a cross-fade: at a boundary the higher surface
|
|
34
|
-
* wins per texel, so gravel comes through grass along the gravel's own grain.
|
|
35
|
-
* The reference project accepts this texture and never samples it.
|
|
36
|
-
*/
|
|
37
|
-
export interface LandscapeSurface {
|
|
38
|
-
/** Panel label only; the renderer never reads it. */
|
|
39
|
-
name: string;
|
|
40
|
-
/** Albedo. Required — a surface with no diffuse is skipped. */
|
|
41
|
-
diffuse: string;
|
|
42
|
-
/** Tangent-space normal map. Optional. */
|
|
43
|
-
normal?: string;
|
|
44
|
-
/** Height map for the height blend and, later, parallax. Optional; absent
|
|
45
|
-
* layers blend linearly, which is what the reference always does. */
|
|
46
|
-
displacement?: string;
|
|
47
|
-
/** How many times the texture tiles across the whole landscape. */
|
|
48
|
-
repeat: number;
|
|
49
|
-
/** Normal map strength. */
|
|
50
|
-
normalStrength: number;
|
|
51
|
-
/** 0 desaturates to luma, 1 leaves it alone, above 1 pushes. A luma lerp, not
|
|
52
|
-
* an HSV round trip — the reference does two colour-space conversions per
|
|
53
|
-
* sampled surface per pixel for this. */
|
|
54
|
-
saturation: number;
|
|
55
|
-
/** Multiplied into the albedo. */
|
|
56
|
-
tint: string;
|
|
57
|
-
/** Per-surface roughness. The reference has one value for the whole ground,
|
|
58
|
-
* so wet mud and dry rock shade identically. */
|
|
59
|
-
roughness: number;
|
|
60
|
-
/** Per-surface metalness. Almost always 0; wet rock is the exception. */
|
|
61
|
-
metalness: number;
|
|
62
|
-
/** 0 blends linearly, 1 lets the layer's own height decide the transition. */
|
|
63
|
-
heightBlend: number;
|
|
64
|
-
/** Break the repeat grid with stochastic tiling. Three fetches instead of
|
|
65
|
-
* one for this surface, and the difference between authored ground and
|
|
66
|
-
* wallpaper. Requires quality.stochastic. */
|
|
67
|
-
aperiodic: boolean;
|
|
68
|
-
/** Project on world axes instead of the tile's UV. Cliffs only — it doubles
|
|
69
|
-
* the fetches for this surface. Requires quality.triplanar. */
|
|
70
|
-
triplanar: boolean;
|
|
71
|
-
/** Flip the normal map's green channel (DirectX vs OpenGL convention). */
|
|
72
|
-
flipNormalY: boolean;
|
|
73
|
-
}
|
|
74
|
-
/** Height and slope rule for `splatSource: 'auto'`. */
|
|
75
|
-
export interface AutoSplatConfig {
|
|
76
|
-
/** Height fraction each surface is centred on, in surface order. The last
|
|
77
|
-
* surface is the rock layer and is placed by slope instead. */
|
|
78
|
-
bands: number[];
|
|
79
|
-
/** Width of each band, in height fractions. */
|
|
80
|
-
bandWidth: number;
|
|
81
|
-
/** Slope (0 flat, 1 vertical) where rock starts showing through. */
|
|
82
|
-
slopeStart: number;
|
|
83
|
-
/** Slope where the surface is bare rock. */
|
|
84
|
-
slopeEnd: number;
|
|
85
|
-
/** Break-up applied to the height before banding, so the bands are not
|
|
86
|
-
* contour lines. */
|
|
87
|
-
noise: number;
|
|
88
|
-
/** World size of that break-up. */
|
|
89
|
-
noiseSize: number;
|
|
90
|
-
}
|
|
91
|
-
export interface LandscapeConfig {
|
|
92
|
-
enabled: boolean;
|
|
93
|
-
host: LandscapeHost;
|
|
94
|
-
/** Required. Nothing renders without it. */
|
|
95
|
-
heightMap: string;
|
|
96
|
-
heightEncoding: HeightEncoding;
|
|
97
|
-
splatSource: SplatSource;
|
|
98
|
-
/** 0, 1 or 2 maps — 4 or 8 surfaces. */
|
|
99
|
-
splatMaps: string[];
|
|
100
|
-
autoSplat: AutoSplatConfig;
|
|
101
|
-
/** Baked ambient occlusion over the whole tile. Optional. */
|
|
102
|
-
aoMap?: string;
|
|
103
|
-
/** World units across the tile. */
|
|
104
|
-
size: number;
|
|
105
|
-
/** Heightmap 0..1 (or metres, for terrain-rgb) to world units. */
|
|
106
|
-
elevationScale: number;
|
|
107
|
-
/** World Y added after scaling. */
|
|
108
|
-
elevationBias: number;
|
|
109
|
-
/** Ground host only — the object host uses its transform. */
|
|
110
|
-
origin: [number, number, number];
|
|
111
|
-
/** Ground host only, in degrees. */
|
|
112
|
-
rotationY: number;
|
|
113
|
-
/** 0 samples the heightmap raw; above it, a bicubic filter over a widened
|
|
114
|
-
* footprint, which is what keeps an 8-bit heightmap off visible terracing. */
|
|
115
|
-
smoothness: number;
|
|
116
|
-
surfaces: LandscapeSurface[];
|
|
117
|
-
/** How many of the heaviest surface weights are sampled per pixel, 1..4.
|
|
118
|
-
* The single most effective cost dial in the material. */
|
|
119
|
-
surfaceSamples: number;
|
|
120
|
-
/** Large-scale albedo break-up, generated rather than sampled from a macro
|
|
121
|
-
* texture — the reference ships a 2.7 MB one for this. */
|
|
122
|
-
macroVariation: number;
|
|
123
|
-
/** World size of that break-up. */
|
|
124
|
-
macroSize: number;
|
|
125
|
-
aoIntensity: number;
|
|
126
|
-
envMapIntensity: number;
|
|
127
|
-
/** UI bookmarks. The renderer never reads any of these — they are what the
|
|
128
|
-
* Basic tab shows as the current selection, and what the AI agent will set
|
|
129
|
-
* when it learns to. */
|
|
130
|
-
preset?: string;
|
|
131
|
-
/** Biome id from `landscapeTypes.ts`. */
|
|
132
|
-
landscapeType?: string;
|
|
133
|
-
/** Terrain-shape folder the heightmap came from. */
|
|
134
|
-
shape?: string;
|
|
135
|
-
}
|
|
136
|
-
export interface LandscapeQualityConfig {
|
|
137
|
-
/** RTIN error budget in world units — the maximum height a triangle may be
|
|
138
|
-
* wrong by. 0 puts a vertex on every heightmap texel. */
|
|
139
|
-
meshError: number;
|
|
140
|
-
/** The same budget on a slow GPU or a phone. */
|
|
141
|
-
mobileMeshError: number;
|
|
142
|
-
/** N x N index-buffer chunks over one shared vertex buffer, so the tile
|
|
143
|
-
* frustum-culls. Neighbouring chunks share vertices exactly, so there is no
|
|
144
|
-
* crack risk. */
|
|
145
|
-
chunks: number;
|
|
146
|
-
/** Edge of the square texture arrays every surface is resized into. 2048
|
|
147
|
-
* costs four times the memory of 1024 for detail you will not see past a
|
|
148
|
-
* few metres. */
|
|
149
|
-
arrayResolution: 512 | 1024 | 2048;
|
|
150
|
-
anisotropy: number;
|
|
151
|
-
/** Stochastic tiling for every surface flagged aperiodic. A material define,
|
|
152
|
-
* so turning it off compiles the code out. */
|
|
153
|
-
stochastic: boolean;
|
|
154
|
-
/** Enable the biplanar path for surfaces flagged triplanar. Also a define. */
|
|
155
|
-
triplanar: boolean;
|
|
156
|
-
castShadows: boolean;
|
|
157
|
-
receiveShadows: boolean;
|
|
158
|
-
wireframe: boolean;
|
|
159
|
-
}
|
|
160
|
-
export interface LandscapeSettings {
|
|
161
|
-
id: string;
|
|
162
|
-
type: 'landscape';
|
|
163
|
-
config: LandscapeConfig;
|
|
164
|
-
quality: LandscapeQualityConfig;
|
|
165
|
-
}
|
|
166
|
-
export declare const defaultLandscapeSurface: LandscapeSurface;
|
|
167
|
-
export declare const defaultAutoSplat: AutoSplatConfig;
|
|
168
|
-
export declare const defaultLandscapeConfig: LandscapeConfig;
|
|
169
|
-
export declare const defaultLandscapeQuality: LandscapeQualityConfig;
|
|
170
|
-
export declare const defaultLandscapeSettings: LandscapeSettings;
|
|
171
|
-
/** Hard ceiling. Two splat maps carry four channels each, and the index is packed
|
|
172
|
-
* as `i / MAX_SURFACES` in the weight pair. */
|
|
173
|
-
export declare const MAX_LANDSCAPE_SURFACES = 8;
|
|
174
|
-
/** The object host keeps the same material with a shorter list. */
|
|
175
|
-
export declare const MAX_OBJECT_SURFACES = 4;
|
|
176
|
-
export type LandscapePropertyGroup = 'maps' | 'form' | 'surface' | 'quality';
|
|
177
|
-
export interface LandscapePropertySchema {
|
|
178
|
-
key: string;
|
|
179
|
-
label: string;
|
|
180
|
-
group: LandscapePropertyGroup;
|
|
181
|
-
type?: 'number' | 'boolean' | 'texture' | 'select';
|
|
182
|
-
min?: number;
|
|
183
|
-
max?: number;
|
|
184
|
-
step?: number;
|
|
185
|
-
unit?: string;
|
|
186
|
-
options?: string[];
|
|
187
|
-
description: string;
|
|
188
|
-
advanced?: boolean;
|
|
189
|
-
/** Absent means both hosts. */
|
|
190
|
-
hosts?: LandscapeHost[];
|
|
191
|
-
}
|
|
192
|
-
export declare const LANDSCAPE_SCHEMA: LandscapePropertySchema[];
|
|
193
|
-
export declare const LANDSCAPE_AUTOSPLAT_SCHEMA: LandscapePropertySchema[];
|
|
194
|
-
export declare const LANDSCAPE_QUALITY_SCHEMA: LandscapePropertySchema[];
|
|
195
|
-
/** Config keys that are uniforms and nothing else. */
|
|
196
|
-
export declare const LANDSCAPE_LIVE_CONFIG_KEYS: readonly string[];
|
|
197
|
-
/** Quality keys that are uniforms, material flags or texture state. */
|
|
198
|
-
export declare const LANDSCAPE_LIVE_QUALITY_KEYS: readonly string[];
|
|
199
|
-
/**
|
|
200
|
-
* Keys that rebuild something, listed for the panel to explain itself with.
|
|
201
|
-
*
|
|
202
|
-
* meshError, chunks re-run RTIN and rebuild every index buffer
|
|
203
|
-
* arrayResolution repacks up to sixteen textures
|
|
204
|
-
* surfaceSamples changes a #define, so the shader recompiles
|
|
205
|
-
* stochastic, triplanar likewise
|
|
206
|
-
* size, heightMap, splatMaps, heightEncoding, splatSource, surfaces
|
|
207
|
-
* change the mesh or the arrays
|
|
208
|
-
*/
|
|
209
|
-
export declare const LANDSCAPE_REBUILD_KEYS: readonly string[];
|
|
210
|
-
/** Every surface field except the three texture slots is a uniform. */
|
|
211
|
-
export declare const LANDSCAPE_LIVE_SURFACE_KEYS: readonly string[];
|
|
212
|
-
/** Auto-splat is entirely uniforms — all four rows plus the band list. */
|
|
213
|
-
export declare const LANDSCAPE_LIVE_AUTOSPLAT_KEYS: readonly string[];
|
|
214
|
-
export declare function normalizeLandscapeSurface(raw: unknown, index?: number): LandscapeSurface;
|
|
215
|
-
export declare function normalizeLandscape(raw: unknown): LandscapeConfig | null;
|
|
216
|
-
export declare function normalizeLandscapeQuality(raw: unknown): LandscapeQualityConfig;
|
|
217
|
-
export declare function normalizeLandscapeSettings(raw: unknown): LandscapeSettings;
|
|
1
|
+
export type { AutoSplatConfig, HeightEncoding, LandscapeConfig, LandscapeHost, LandscapePropertyGroup, LandscapePropertySchema, LandscapeQualityConfig, LandscapeSettings, LandscapeSurface, SplatSource, } from '@3driseai/3drise-core';
|
|
2
|
+
export { LANDSCAPE_AUTOSPLAT_SCHEMA, LANDSCAPE_LIVE_AUTOSPLAT_KEYS, LANDSCAPE_LIVE_CONFIG_KEYS, LANDSCAPE_LIVE_QUALITY_KEYS, LANDSCAPE_LIVE_SURFACE_KEYS, LANDSCAPE_QUALITY_SCHEMA, LANDSCAPE_REBUILD_KEYS, LANDSCAPE_SCHEMA, MAX_LANDSCAPE_SURFACES, MAX_OBJECT_SURFACES, defaultAutoSplat, defaultLandscapeConfig, defaultLandscapeQuality, defaultLandscapeSettings, defaultLandscapeSurface, normalizeLandscape, normalizeLandscapeQuality, normalizeLandscapeSettings, normalizeLandscapeSurface, } from '@3driseai/3drise-core';
|
|
218
3
|
//# sourceMappingURL=landscapeConfigs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"landscapeConfigs.d.ts","sourceRoot":"","sources":["../../src/types/landscapeConfigs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"landscapeConfigs.d.ts","sourceRoot":"","sources":["../../src/types/landscapeConfigs.ts"],"names":[],"mappings":"AAEA,YAAY,EACV,eAAe,EACf,cAAc,EACd,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,yBAAyB,EACzB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC"}
|