shaders 3.1.462 → 3.2.464
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/cli.js +2 -2
- package/dist/core/AngularBlur-BwCxKNcQ.js +44 -0
- package/dist/core/Arc-BdSzj8aT.js +45 -0
- package/dist/core/Ascii-3XAIw2Bb.js +321 -0
- package/dist/core/Aurora-aZQ7Sgpi.js +189 -0
- package/dist/core/BarShift-BfLFLroO.js +84 -0
- package/dist/core/BarnDoors-Do1MN34d.js +68 -0
- package/dist/core/Beam-Crszqjl5.js +142 -0
- package/dist/core/Bend-XAqsg_xj.js +56 -0
- package/dist/core/Blob-Sr5tPikb.js +267 -0
- package/dist/core/BlockDissolve-CtvDicJt.js +68 -0
- package/dist/core/BlockNoise-BYCW1y2-.js +42 -0
- package/dist/core/BlueNoise-DqZFPThf.js +40 -0
- package/dist/core/Blur-CbnGAsl9.js +27 -0
- package/dist/core/Boids-CnXob_HY.js +399 -0
- package/dist/core/BokehBlur-DN1DMnaB.js +138 -0
- package/dist/core/BrickPattern-DxfaxjHT.js +189 -0
- package/dist/core/BrightnessContrast-DRSwp0yp.js +47 -0
- package/dist/core/BrushedMetal-BlwYqKiC.js +279 -0
- package/dist/core/Bulge-CWtv1aVG.js +58 -0
- package/dist/core/CRTScreen-CKNOV6IF.js +126 -0
- package/dist/core/CarbonFiber-0PowYOyE.js +302 -0
- package/dist/core/Chalkboard-DNfYEUQN.js +104 -0
- package/dist/core/ChannelBlur-Bl5Slnhm.js +57 -0
- package/dist/core/CheckerWipe-D1Pn4tq3.js +68 -0
- package/dist/core/Checkerboard-DYNjSdWz.js +84 -0
- package/dist/core/Chevron-By9YDPlg.js +137 -0
- package/dist/core/ChromaFlow-BHgHfSHB.js +226 -0
- package/dist/core/ChromaticAberration-CsekFO9W.js +84 -0
- package/dist/core/Chrome-wfGdzbP1.js +370 -0
- package/dist/core/Circle-CBP-iZmQ.js +78 -0
- package/dist/core/ColorWheel-Bt8Yats6.js +130 -0
- package/dist/core/CompressionArtifacts-CN-aj4Cz.js +117 -0
- package/dist/core/ConcentricSpin-CyCJxLJL.js +97 -0
- package/dist/core/ConicGradient-ucJPMdRd.js +93 -0
- package/dist/core/ContourLines-B_CtL8Vu.js +145 -0
- package/dist/core/CornerPin-C76LSuH_.js +86 -0
- package/dist/core/Crescent-D-gZU6vD.js +56 -0
- package/dist/core/Cross-CPbK6WLW.js +57 -0
- package/dist/core/Crystal-BAVRri0F.js +395 -0
- package/dist/core/CurlNoise-B8V3FalE.js +42 -0
- package/dist/core/CursorRipples-Ce_kWhe1.js +155 -0
- package/dist/core/CursorTrail-Dza0OORy.js +245 -0
- package/dist/core/DataMosh-DrJYG80o.js +151 -0
- package/dist/core/DiamondGradient-Dq0DpQpR.js +119 -0
- package/dist/core/DiamondWipe-CcgeiQ3X.js +68 -0
- package/dist/core/DiffuseBlur-DUecWEvv.js +60 -0
- package/dist/core/DisplacementMap-B-yc-a_8.js +108 -0
- package/dist/core/Dither-CFxqATIY.js +157 -0
- package/dist/core/DotGrid-Br5gKbrO.js +112 -0
- package/dist/core/DropShadow-CRe0s6MQ.js +96 -0
- package/dist/core/Duotone-M-wa5I6y.js +65 -0
- package/dist/core/Ellipse-B8SC59iU.js +44 -0
- package/dist/core/{Emboss-hQvpTtH7.js → Emboss-Df9dLMp4.js} +18 -24
- package/dist/core/Engraving-BCfdEBr_.js +149 -0
- package/dist/core/ErosionNoise-cwJc4FgN.js +40 -0
- package/dist/core/Exposure-ILGY3UKH.js +29 -0
- package/dist/core/FallingLines-wUWAGXtD.js +163 -0
- package/dist/core/FilmGrain-ablIumMy.js +60 -0
- package/dist/core/{FilmStock-DrrIlFL2.js → FilmStock-CmpGCyGm.js} +36 -975
- package/dist/core/Flip-tLanxfrx.js +40 -0
- package/dist/core/FloatingParticles-Bi1Llmwz.js +315 -0
- package/dist/core/FlowField-DDFjV4AF.js +110 -0
- package/dist/core/Flower-CQgB1K5v.js +56 -0
- package/dist/core/FlowingGradient-DExZwWd-.js +154 -0
- package/dist/core/FlutedGlass-B3Talps5.js +239 -0
- package/dist/core/Fog-zIXi81Mr.js +297 -0
- package/dist/core/Form3D-JvT_i-8s.js +1714 -0
- package/dist/core/FractalNoise-BclR0vM-.js +135 -0
- package/dist/core/Frost-r3Cn37X0.js +339 -0
- package/dist/core/GaborNoise-DCcdB69a.js +54 -0
- package/dist/core/Glass-U4NJVg8d.js +264 -0
- package/dist/core/GlassTiles-CF1FpanH.js +92 -0
- package/dist/core/Glitch-DOnrgMPv.js +105 -0
- package/dist/core/Glow-C5Xwf4jz.js +59 -0
- package/dist/core/Godrays-DFD0-QUO.js +109 -0
- package/dist/core/Goo-CXruf3Bc.js +412 -0
- package/dist/core/GradientMap-0btW-vE7.js +177 -0
- package/dist/core/Grayscale-CQVfbvqS.js +15 -0
- package/dist/core/Grid-OAYnOEA9.js +136 -0
- package/dist/core/GridDistortion-DeLoOUlh.js +79 -0
- package/dist/core/{Group-BWotpW1u.js → Group-UfbFIE6i.js} +7 -5
- package/dist/core/HTMLInCanvas-DFZW7XjR.js +102 -0
- package/dist/core/Halftone-BK7mr9rb.js +234 -0
- package/dist/core/Heart-BdD0KoOX.js +30 -0
- package/dist/core/Heatmap-BubYsW6_.js +269 -0
- package/dist/core/HexGrid-BVK5rrwR.js +127 -0
- package/dist/core/Hologram-DE3lGk0F.js +334 -0
- package/dist/core/Holographic-DJqswtrS.js +279 -0
- package/dist/core/HueShift-BfopB_hn.js +29 -0
- package/dist/core/ImageTexture-B5gNePC8.js +39 -0
- package/dist/core/InkFlow-9Dy9cgIR.js +455 -0
- package/dist/core/Invert-B5uKr4Bw.js +15 -0
- package/dist/core/IrisWipe-BunsTSPx.js +69 -0
- package/dist/core/IsometricCubes-COoLKav-.js +137 -0
- package/dist/core/Kaleidoscope-D2zB6f60.js +45 -0
- package/dist/core/KeyFrames-QLmC6Sdn.js +196 -0
- package/dist/core/LensDistortion-CxLTKe5L.js +268 -0
- package/dist/core/LensFlare-P1Cc_7_5.js +321 -0
- package/dist/core/{LightEdge-C5pR-9-d.js → LightEdge-B3HMbUyU.js} +122 -132
- package/dist/core/LightLeak-oEDfnsq5.js +154 -0
- package/dist/core/Line-BzGomKXR.js +172 -0
- package/dist/core/LinearBlur-yhxdvssU.js +44 -0
- package/dist/core/LinearGradient-C15kSqLN.js +125 -0
- package/dist/core/LinearWipe-DHxvpnNg.js +68 -0
- package/dist/core/LiquidMetal-Cu2WeYH7.js +280 -0
- package/dist/core/Liquify-DY1EfFNf.js +76 -0
- package/dist/core/MagneticFilings-Bd6Pe_E0.js +356 -0
- package/dist/core/Marble-Bdc_FHzu.js +117 -0
- package/dist/core/MeshGradient-DRRMmZHE.js +185 -0
- package/dist/core/Mirror-5UQjt2Tf.js +32 -0
- package/dist/core/MultiPointGradient-DqdcS8e0.js +183 -0
- package/dist/core/Nebula-BQuiaN-z.js +642 -0
- package/dist/core/{Neon-BKllOVig.js → Neon-BicLpgbo.js} +17 -24
- package/dist/core/NoiseDissolve-DGbFYpRH.js +80 -0
- package/dist/core/ObjectTracker-T8FCXWre.js +345 -0
- package/dist/core/PagePeel-DilPJ9RZ.js +134 -0
- package/dist/core/Paper-l6RxJWBc.js +82 -0
- package/dist/core/Parallelogram-C95JWNsU.js +56 -0
- package/dist/core/ParticleField-aw2g8IBO.js +474 -0
- package/dist/core/ParticleFlow-DTrnGnOB.js +468 -0
- package/dist/core/Particles-Jhwjq6OU.js +682 -0
- package/dist/core/PerlinNoise-D6xOjr7j.js +42 -0
- package/dist/core/Perspective-Bb-9hqX5.js +85 -0
- package/dist/core/PixelSort-INY2qe01.js +222 -0
- package/dist/core/PixelThrow-BWWz7QQi.js +271 -0
- package/dist/core/Pixelate-C3aJ40yf.js +55 -0
- package/dist/core/Plasma-evU7RvjN.js +135 -0
- package/dist/core/Plastic-CdenJzHE.js +378 -0
- package/dist/core/PolarCoordinates-CgSPmcVa.js +58 -0
- package/dist/core/Polygon-CP182yxM.js +57 -0
- package/dist/core/Posterize-g1VAiALB.js +26 -0
- package/dist/core/Prism-ZUtkRwyw.js +172 -0
- package/dist/core/ProgressiveBlur-wUfFxLuq.js +73 -0
- package/dist/core/RadialGradient-BVplFboK.js +119 -0
- package/dist/core/RadialWipe-CEvgkBtN.js +105 -0
- package/dist/core/RandomBars-DznYc1cK.js +80 -0
- package/dist/core/ReactionDiffusion-hEARMWb4.js +551 -0
- package/dist/core/RectangularCoordinates-BKOR8UVl.js +45 -0
- package/dist/core/ReflectivePlane-DrJ1pxMa.js +125 -0
- package/dist/core/Repeater-DTpCf9Lm.js +762 -0
- package/dist/core/Ring-DINywbbr.js +87 -0
- package/dist/core/RippleWipe-CwenaRYy.js +81 -0
- package/dist/core/Ripples-FuYdWcQW.js +123 -0
- package/dist/core/RoundedRect-h_UJqq2W.js +57 -0
- package/dist/core/Saturation-DitLgecu.js +29 -0
- package/dist/core/Scratches-4So8YZag.js +62 -0
- package/dist/core/Sharpness-CZ7h17-W.js +28 -0
- package/dist/core/{Shatter-CSR4Hrfn.js → Shatter-DQ1i7GCD.js} +596 -547
- package/dist/core/SimplexNoise-Cbhm8yTV.js +88 -0
- package/dist/core/SineWave-BULHKSth.js +124 -0
- package/dist/core/SliceWipe-CrxHLUSK.js +57 -0
- package/dist/core/Smoke-C-0NUtDU.js +355 -0
- package/dist/core/SmokeFill-D81FhHmB.js +568 -0
- package/dist/core/SmokeFlow-DirP_Xti.js +290 -0
- package/dist/core/Solarize-DZP3UJ85.js +46 -0
- package/dist/core/{SolidColor-Bp_KSGbp.js → SolidColor-DvatFKwG.js} +7 -4
- package/dist/core/Spherize-sLICbjrn.js +110 -0
- package/dist/core/Spiral-irgoeG4p.js +131 -0
- package/dist/core/Star-CKLN8zIt.js +56 -0
- package/dist/core/{Stone-B5syMjia.js → Stone-D5-LyXDX.js} +8 -5
- package/dist/core/Strands-DhHb1DvF.js +223 -0
- package/dist/core/Stretch-T57H17vt.js +58 -0
- package/dist/core/Stripes-DxWGkOif.js +136 -0
- package/dist/core/StudioBackground-CyNdOTtR.js +294 -0
- package/dist/core/SunBurst-DR13HThp.js +125 -0
- package/dist/core/Surface3D-CpOF-rTd.js +614 -0
- package/dist/core/Swirl-Cn9B5BXA.js +99 -0
- package/dist/core/Teardrop-xVB2Rryt.js +44 -0
- package/dist/core/{Text-_RLMlnlG.js → Text-Bzitt0Bc.js} +138 -435
- package/dist/core/{ThinFilm-ztJ8IZSo.js → ThinFilm-CrslR7Dx.js} +19 -27
- package/dist/core/TiltShift-DxfHWzYk.js +86 -0
- package/dist/core/TimeTrail-CSy6Y7hh.js +360 -0
- package/dist/core/Tint-DOCp2b8s.js +54 -0
- package/dist/core/Trapezoid-CtfXCYGA.js +123 -0
- package/dist/core/TriangularGrid-BmumLNDo.js +153 -0
- package/dist/core/Tritone-B93mcT36.js +76 -0
- package/dist/core/Truchet-CH6G5ozn.js +126 -0
- package/dist/core/Twirl-B9Z9dST8.js +32 -0
- package/dist/core/VHS-BqFaXkMd.js +73 -0
- package/dist/core/VenetianBlinds-DAGlgwNE.js +80 -0
- package/dist/core/Vesica-D-8FK4C2.js +44 -0
- package/dist/core/Vibrance-bJAZ4iks.js +29 -0
- package/dist/core/VideoTexture-LRpjvr-E.js +49 -0
- package/dist/core/Vignette-QPr1Cal2.js +91 -0
- package/dist/core/Voronoi-c4jiH9Rs.js +132 -0
- package/dist/core/Water-D9HuYCj8.js +373 -0
- package/dist/core/Watercolor-DQUk4Fp6.js +91 -0
- package/dist/core/WaveDistortion-7a_HwjyD.js +111 -0
- package/dist/core/WaveletNoise-B87y08nU.js +54 -0
- package/dist/core/Weave-BYnUiQAe.js +83 -0
- package/dist/core/WebcamTexture-B7ldvLMJ.js +50 -0
- package/dist/core/{Wool-ByX7xX7a.js → Wool-BIVLEFAo.js} +10 -7
- package/dist/core/WorleyNoise-BzruBvh3.js +241 -0
- package/dist/core/ZoomBlur-Cg6vOxUb.js +44 -0
- package/dist/core/{aa-BHldiv8b.js → aa-BfXCHL6-.js} +3 -13
- package/dist/core/agents-Ccxns43k.js +15710 -0
- package/dist/core/agents-DbHmHbkU.js +5358 -0
- package/dist/core/blur-CpGmUq81.js +8015 -0
- package/dist/core/blurs-O1YbZEVw.js +1751 -0
- package/dist/core/color-C9iR6boM.js +3620 -0
- package/dist/core/device-DLKcFOd2.js +10 -0
- package/dist/core/feedback-ZMsR_fKB.js +46 -0
- package/dist/core/fields-Cg5kOBDV.js +250 -0
- package/dist/core/figures-Ca2qPDh7.js +116 -0
- package/dist/core/filter-Bw8Ogi4T.js +23 -0
- package/dist/core/fluids-D76EnTFg.js +224 -0
- package/dist/core/frames-BWC4dNMQ.js +58 -0
- package/dist/core/{glass-Di_yYrw1.js → glass-DxE2Cy6_.js} +1 -1
- package/dist/core/gpu/composer.d.ts.map +1 -1
- package/dist/core/gpu/contract.d.ts +10 -0
- package/dist/core/gpu/contract.d.ts.map +1 -1
- package/dist/core/gpu/frame.d.ts +8 -0
- package/dist/core/gpu/frame.d.ts.map +1 -1
- package/dist/core/gpu/index.d.ts +18 -0
- package/dist/core/gpu/index.d.ts.map +1 -1
- package/dist/core/gpu/kit/agents.d.ts +163 -0
- package/dist/core/gpu/kit/agents.d.ts.map +1 -1
- package/dist/core/gpu/kit/blur.d.ts +455 -0
- package/dist/core/gpu/kit/blur.d.ts.map +1 -1
- package/dist/core/gpu/kit/colorMixing.d.ts +6 -0
- package/dist/core/gpu/kit/colorMixing.d.ts.map +1 -1
- package/dist/core/gpu/kit/colorOps.d.ts +102 -0
- package/dist/core/gpu/kit/colorOps.d.ts.map +1 -0
- package/dist/core/gpu/kit/displace.d.ts +14 -0
- package/dist/core/gpu/kit/displace.d.ts.map +1 -0
- package/dist/core/gpu/kit/fields.d.ts +8 -0
- package/dist/core/gpu/kit/fields.d.ts.map +1 -1
- package/dist/core/gpu/kit/gradientPaints.d.ts +38 -0
- package/dist/core/gpu/kit/gradientPaints.d.ts.map +1 -0
- package/dist/core/gpu/kit/host/mediaLifecycle.d.ts +7 -0
- package/dist/core/gpu/kit/host/mediaLifecycle.d.ts.map +1 -1
- package/dist/core/gpu/kit/host/pointer.d.ts +9 -0
- package/dist/core/gpu/kit/host/pointer.d.ts.map +1 -1
- package/dist/core/gpu/kit/index.d.ts +16 -0
- package/dist/core/gpu/kit/index.d.ts.map +1 -1
- package/dist/core/gpu/kit/instanceParts.d.ts +81 -0
- package/dist/core/gpu/kit/instanceParts.d.ts.map +1 -0
- package/dist/core/gpu/kit/lensParts.d.ts +56 -0
- package/dist/core/gpu/kit/lensParts.d.ts.map +1 -0
- package/dist/core/gpu/kit/lightfields.d.ts +49 -0
- package/dist/core/gpu/kit/lightfields.d.ts.map +1 -1
- package/dist/core/gpu/kit/materialParts.d.ts +79 -0
- package/dist/core/gpu/kit/materialParts.d.ts.map +1 -0
- package/dist/core/gpu/kit/media.d.ts +7 -0
- package/dist/core/gpu/kit/media.d.ts.map +1 -1
- package/dist/core/gpu/kit/motionBlur.d.ts +296 -0
- package/dist/core/gpu/kit/motionBlur.d.ts.map +1 -0
- package/dist/core/gpu/kit/noisePaints.d.ts +129 -0
- package/dist/core/gpu/kit/noisePaints.d.ts.map +1 -0
- package/dist/core/gpu/kit/overlayParts.d.ts +117 -0
- package/dist/core/gpu/kit/overlayParts.d.ts.map +1 -0
- package/dist/core/gpu/kit/patternPaints.d.ts +46 -0
- package/dist/core/gpu/kit/patternPaints.d.ts.map +1 -0
- package/dist/core/gpu/kit/reveal.d.ts +40 -0
- package/dist/core/gpu/kit/reveal.d.ts.map +1 -1
- package/dist/core/gpu/kit/scenicPaints.d.ts +18 -0
- package/dist/core/gpu/kit/scenicPaints.d.ts.map +1 -0
- package/dist/core/gpu/kit/sdf.d.ts.map +1 -1
- package/dist/core/gpu/kit/sdf3d.d.ts +65 -5
- package/dist/core/gpu/kit/sdf3d.d.ts.map +1 -1
- package/dist/core/gpu/kit/shapePaints.d.ts +115 -0
- package/dist/core/gpu/kit/shapePaints.d.ts.map +1 -0
- package/dist/core/gpu/kit/stylizePaints.d.ts +19 -0
- package/dist/core/gpu/kit/stylizePaints.d.ts.map +1 -0
- package/dist/core/gpu/kit/trackerSim.d.ts +53 -0
- package/dist/core/gpu/kit/trackerSim.d.ts.map +1 -0
- package/dist/core/gpu/kit/warpMaps.d.ts +257 -0
- package/dist/core/gpu/kit/warpMaps.d.ts.map +1 -0
- package/dist/core/gpu/kit/waves.d.ts +70 -0
- package/dist/core/gpu/kit/waves.d.ts.map +1 -0
- package/dist/core/gpu/porters.d.ts +3 -1
- package/dist/core/gpu/porters.d.ts.map +1 -1
- package/dist/core/gpu/scaffolds/fluids.d.ts +323 -0
- package/dist/core/gpu/scaffolds/fluids.d.ts.map +1 -1
- package/dist/core/gpu/scaffolds/gridKernels.d.ts +485 -0
- package/dist/core/gpu/scaffolds/gridKernels.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/heightField.d.ts +224 -0
- package/dist/core/gpu/scaffolds/heightField.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/pointwiseFilter.d.ts +3 -1
- package/dist/core/gpu/scaffolds/pointwiseFilter.d.ts.map +1 -1
- package/dist/core/gpu/scaffolds/sdfShape.d.ts +8 -16
- package/dist/core/gpu/scaffolds/sdfShape.d.ts.map +1 -1
- package/dist/core/gradientPaints-B6-PoDoK.js +5578 -0
- package/dist/core/gradients-CVEWcxw9.js +159 -0
- package/dist/core/grids-BqY3o2yc.js +149 -0
- package/dist/core/index.js +279 -231
- package/dist/core/lens-ChZyqXRf.js +352 -0
- package/dist/core/light-CJ3dY0iH.js +238 -0
- package/dist/core/{lightfields-C49QCtGR.js → lightfields-BjzpZvFy.js} +903 -3
- package/dist/core/{edges-CV-BHMpI.js → lower-z2vuXP8M.js} +18896 -9374
- package/dist/core/materials-D7QX3H4h.js +2894 -0
- package/dist/core/math-BF-GBlb4.js +47 -0
- package/dist/core/{media-DtmmUThn.js → media-By6o6a83.js} +126 -2
- package/dist/core/{mediaLifecycle-DHrjB2zB.js → mediaLifecycle-DQg13y-f.js} +7 -1
- package/dist/core/motionBlur-BnthNfqm.js +6767 -0
- package/dist/core/{noise-eXd1Bfrw.js → noise-B3Oq1k3_.js} +93 -3
- package/dist/core/noise-DQWgxDEf.js +568 -0
- package/dist/core/{noiseColor-DEQWYLVu.js → noiseColor-CMKVWP1J.js} +4 -12
- package/dist/core/{noiseColor-D0ZXkiHX.js → noiseColor-XppoAmXi.js} +2 -2
- package/dist/core/noisePaints-Cs2Q1Xk9.js +3890 -0
- package/dist/core/noiseStylize-BfLjdB5R.js +65 -0
- package/dist/core/{KeyFrames-CLAIRUfM.js → overlay-Sye7-I6D.js} +493 -257
- package/dist/core/patterns-CUWhLDh0.js +9427 -0
- package/dist/core/pointerFields-CaaXhvvu.js +2339 -0
- package/dist/core/porters-B1UjrM1y.js +30060 -0
- package/dist/core/presetRenderer.d.ts.map +1 -1
- package/dist/core/registry.js +245 -225
- package/dist/core/reveal-xpOj9hSs.js +1689 -0
- package/dist/core/scenic-CJSExiX2.js +5738 -0
- package/dist/core/{sdf3d-B8EwGL7R.js → sdf3d-BD5m6HR6.js} +3206 -135
- package/dist/core/shaderRegistry-Ch1r8XbD.js +435 -0
- package/dist/core/shaderRegistry.d.ts.map +1 -1
- package/dist/core/shaders/AngularBlur/index.d.ts +1 -18
- package/dist/core/shaders/AngularBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/AngularBlur/index.js +12 -9
- package/dist/core/shaders/Arc/index.d.ts +0 -5
- package/dist/core/shaders/Arc/index.d.ts.map +1 -1
- package/dist/core/shaders/Arc/index.js +7 -8
- package/dist/core/shaders/Ascii/index.d.ts +1 -13
- package/dist/core/shaders/Ascii/index.d.ts.map +1 -1
- package/dist/core/shaders/Ascii/index.js +13 -10
- package/dist/core/shaders/Aurora/index.d.ts +0 -4
- package/dist/core/shaders/Aurora/index.d.ts.map +1 -1
- package/dist/core/shaders/Aurora/index.js +13 -12
- package/dist/core/shaders/BarShift/index.d.ts +0 -4
- package/dist/core/shaders/BarShift/index.d.ts.map +1 -1
- package/dist/core/shaders/BarShift/index.js +10 -9
- package/dist/core/shaders/BarnDoors/index.d.ts +0 -2
- package/dist/core/shaders/BarnDoors/index.d.ts.map +1 -1
- package/dist/core/shaders/BarnDoors/index.js +9 -10
- package/dist/core/shaders/Beam/index.d.ts +0 -2
- package/dist/core/shaders/Beam/index.d.ts.map +1 -1
- package/dist/core/shaders/Beam/index.js +13 -11
- package/dist/core/shaders/Bend/index.d.ts +0 -2
- package/dist/core/shaders/Bend/index.d.ts.map +1 -1
- package/dist/core/shaders/Bend/index.js +10 -9
- package/dist/core/shaders/Blob/index.d.ts +0 -4
- package/dist/core/shaders/Blob/index.d.ts.map +1 -1
- package/dist/core/shaders/Blob/index.js +13 -8
- package/dist/core/shaders/BlockDissolve/index.d.ts +0 -2
- package/dist/core/shaders/BlockDissolve/index.d.ts.map +1 -1
- package/dist/core/shaders/BlockDissolve/index.js +9 -12
- package/dist/core/shaders/BlockNoise/index.d.ts +1 -4
- package/dist/core/shaders/BlockNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/BlockNoise/index.js +17 -16
- package/dist/core/shaders/BlueNoise/index.d.ts +1 -4
- package/dist/core/shaders/BlueNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/BlueNoise/index.js +17 -16
- package/dist/core/shaders/Blur/index.d.ts +1 -46
- package/dist/core/shaders/Blur/index.d.ts.map +1 -1
- package/dist/core/shaders/Blur/index.js +12 -9
- package/dist/core/shaders/Boids/index.d.ts +10 -29
- package/dist/core/shaders/Boids/index.d.ts.map +1 -1
- package/dist/core/shaders/Boids/index.js +10 -11
- package/dist/core/shaders/BokehBlur/index.d.ts +0 -135
- package/dist/core/shaders/BokehBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/BokehBlur/index.js +12 -10
- package/dist/core/shaders/BrickPattern/index.d.ts +1 -4
- package/dist/core/shaders/BrickPattern/index.d.ts.map +1 -1
- package/dist/core/shaders/BrickPattern/index.js +16 -13
- package/dist/core/shaders/BrightnessContrast/index.d.ts +0 -2
- package/dist/core/shaders/BrightnessContrast/index.d.ts.map +1 -1
- package/dist/core/shaders/BrightnessContrast/index.js +9 -8
- package/dist/core/shaders/BrushedMetal/index.d.ts +0 -17
- package/dist/core/shaders/BrushedMetal/index.d.ts.map +1 -1
- package/dist/core/shaders/BrushedMetal/index.js +13 -15
- package/dist/core/shaders/Bulge/index.d.ts +0 -2
- package/dist/core/shaders/Bulge/index.d.ts.map +1 -1
- package/dist/core/shaders/Bulge/index.js +10 -8
- package/dist/core/shaders/CRTScreen/index.d.ts +1 -6
- package/dist/core/shaders/CRTScreen/index.d.ts.map +1 -1
- package/dist/core/shaders/CRTScreen/index.js +12 -8
- package/dist/core/shaders/CarbonFiber/index.d.ts +0 -16
- package/dist/core/shaders/CarbonFiber/index.d.ts.map +1 -1
- package/dist/core/shaders/CarbonFiber/index.js +13 -15
- package/dist/core/shaders/Chalkboard/index.d.ts +1 -5
- package/dist/core/shaders/Chalkboard/index.d.ts.map +1 -1
- package/dist/core/shaders/Chalkboard/index.js +11 -10
- package/dist/core/shaders/ChannelBlur/index.d.ts +1 -19
- package/dist/core/shaders/ChannelBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/ChannelBlur/index.js +12 -9
- package/dist/core/shaders/CheckerWipe/index.d.ts +0 -2
- package/dist/core/shaders/CheckerWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/CheckerWipe/index.js +9 -10
- package/dist/core/shaders/Checkerboard/index.d.ts +1 -4
- package/dist/core/shaders/Checkerboard/index.d.ts.map +1 -1
- package/dist/core/shaders/Checkerboard/index.js +16 -11
- package/dist/core/shaders/Chevron/index.d.ts +1 -4
- package/dist/core/shaders/Chevron/index.d.ts.map +1 -1
- package/dist/core/shaders/Chevron/index.js +16 -11
- package/dist/core/shaders/ChromaFlow/index.d.ts +0 -9
- package/dist/core/shaders/ChromaFlow/index.d.ts.map +1 -1
- package/dist/core/shaders/ChromaFlow/index.js +10 -8
- package/dist/core/shaders/ChromaticAberration/index.d.ts +0 -2
- package/dist/core/shaders/ChromaticAberration/index.d.ts.map +1 -1
- package/dist/core/shaders/ChromaticAberration/index.js +13 -8
- package/dist/core/shaders/Chrome/index.d.ts +0 -11
- package/dist/core/shaders/Chrome/index.d.ts.map +1 -1
- package/dist/core/shaders/Chrome/index.js +12 -15
- package/dist/core/shaders/Circle/index.d.ts +0 -5
- package/dist/core/shaders/Circle/index.d.ts.map +1 -1
- package/dist/core/shaders/Circle/index.js +7 -8
- package/dist/core/shaders/ColorWheel/index.d.ts +0 -5
- package/dist/core/shaders/ColorWheel/index.d.ts.map +1 -1
- package/dist/core/shaders/ColorWheel/index.js +13 -10
- package/dist/core/shaders/CompressionArtifacts/index.d.ts +18 -27
- package/dist/core/shaders/CompressionArtifacts/index.d.ts.map +1 -1
- package/dist/core/shaders/CompressionArtifacts/index.js +9 -8
- package/dist/core/shaders/ConcentricSpin/index.d.ts +0 -4
- package/dist/core/shaders/ConcentricSpin/index.d.ts.map +1 -1
- package/dist/core/shaders/ConcentricSpin/index.js +10 -9
- package/dist/core/shaders/ConicGradient/index.d.ts +0 -2
- package/dist/core/shaders/ConicGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/ConicGradient/index.js +13 -12
- package/dist/core/shaders/ContourLines/index.d.ts +0 -4
- package/dist/core/shaders/ContourLines/index.d.ts.map +1 -1
- package/dist/core/shaders/ContourLines/index.js +8 -10
- package/dist/core/shaders/CornerPin/index.d.ts +0 -7
- package/dist/core/shaders/CornerPin/index.d.ts.map +1 -1
- package/dist/core/shaders/CornerPin/index.js +10 -8
- package/dist/core/shaders/Crescent/index.d.ts +0 -5
- package/dist/core/shaders/Crescent/index.d.ts.map +1 -1
- package/dist/core/shaders/Crescent/index.js +6 -8
- package/dist/core/shaders/Cross/index.d.ts +0 -5
- package/dist/core/shaders/Cross/index.d.ts.map +1 -1
- package/dist/core/shaders/Cross/index.js +6 -8
- package/dist/core/shaders/Crystal/index.d.ts +5 -38
- package/dist/core/shaders/Crystal/index.d.ts.map +1 -1
- package/dist/core/shaders/Crystal/index.js +13 -14
- package/dist/core/shaders/CurlNoise/index.d.ts +1 -4
- package/dist/core/shaders/CurlNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/CurlNoise/index.js +17 -16
- package/dist/core/shaders/CursorRipples/index.d.ts +0 -14
- package/dist/core/shaders/CursorRipples/index.d.ts.map +1 -1
- package/dist/core/shaders/CursorRipples/index.js +7 -9
- package/dist/core/shaders/CursorTrail/index.d.ts +13 -17
- package/dist/core/shaders/CursorTrail/index.d.ts.map +1 -1
- package/dist/core/shaders/CursorTrail/index.js +9 -9
- package/dist/core/shaders/DataMosh/index.d.ts +2 -6
- package/dist/core/shaders/DataMosh/index.d.ts.map +1 -1
- package/dist/core/shaders/DataMosh/index.js +9 -10
- package/dist/core/shaders/DiamondGradient/index.d.ts +0 -2
- package/dist/core/shaders/DiamondGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/DiamondGradient/index.js +13 -12
- package/dist/core/shaders/DiamondWipe/index.d.ts +0 -2
- package/dist/core/shaders/DiamondWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/DiamondWipe/index.js +9 -10
- package/dist/core/shaders/DiffuseBlur/index.d.ts +1 -5
- package/dist/core/shaders/DiffuseBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/DiffuseBlur/index.js +12 -10
- package/dist/core/shaders/DisplacementMap/index.d.ts +0 -5
- package/dist/core/shaders/DisplacementMap/index.d.ts.map +1 -1
- package/dist/core/shaders/DisplacementMap/index.js +10 -9
- package/dist/core/shaders/Dither/index.d.ts +1 -17
- package/dist/core/shaders/Dither/index.d.ts.map +1 -1
- package/dist/core/shaders/Dither/index.js +16 -10
- package/dist/core/shaders/DotGrid/index.d.ts +1 -4
- package/dist/core/shaders/DotGrid/index.d.ts.map +1 -1
- package/dist/core/shaders/DotGrid/index.js +16 -13
- package/dist/core/shaders/DropShadow/index.d.ts +1 -15
- package/dist/core/shaders/DropShadow/index.d.ts.map +1 -1
- package/dist/core/shaders/DropShadow/index.js +12 -10
- package/dist/core/shaders/Duotone/index.d.ts +0 -2
- package/dist/core/shaders/Duotone/index.d.ts.map +1 -1
- package/dist/core/shaders/Duotone/index.js +8 -8
- package/dist/core/shaders/Ellipse/index.d.ts +0 -5
- package/dist/core/shaders/Ellipse/index.d.ts.map +1 -1
- package/dist/core/shaders/Ellipse/index.js +6 -8
- package/dist/core/shaders/Emboss/index.d.ts.map +1 -1
- package/dist/core/shaders/Emboss/index.js +10 -9
- package/dist/core/shaders/Engraving/index.d.ts +0 -4
- package/dist/core/shaders/Engraving/index.d.ts.map +1 -1
- package/dist/core/shaders/Engraving/index.js +11 -11
- package/dist/core/shaders/ErosionNoise/index.d.ts +1 -4
- package/dist/core/shaders/ErosionNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/ErosionNoise/index.js +17 -16
- package/dist/core/shaders/Exposure/index.d.ts +0 -2
- package/dist/core/shaders/Exposure/index.d.ts.map +1 -1
- package/dist/core/shaders/Exposure/index.js +9 -8
- package/dist/core/shaders/FallingLines/index.d.ts +1 -4
- package/dist/core/shaders/FallingLines/index.d.ts.map +1 -1
- package/dist/core/shaders/FallingLines/index.js +16 -11
- package/dist/core/shaders/FilmGrain/index.d.ts +0 -2
- package/dist/core/shaders/FilmGrain/index.d.ts.map +1 -1
- package/dist/core/shaders/FilmGrain/index.js +9 -10
- package/dist/core/shaders/FilmStock/index.d.ts +0 -61
- package/dist/core/shaders/FilmStock/index.d.ts.map +1 -1
- package/dist/core/shaders/FilmStock/index.js +15 -9
- package/dist/core/shaders/Flip/index.d.ts +0 -2
- package/dist/core/shaders/Flip/index.d.ts.map +1 -1
- package/dist/core/shaders/Flip/index.js +10 -8
- package/dist/core/shaders/FloatingParticles/index.d.ts +10 -27
- package/dist/core/shaders/FloatingParticles/index.d.ts.map +1 -1
- package/dist/core/shaders/FloatingParticles/index.js +10 -11
- package/dist/core/shaders/FlowField/index.d.ts +0 -2
- package/dist/core/shaders/FlowField/index.d.ts.map +1 -1
- package/dist/core/shaders/FlowField/index.js +10 -11
- package/dist/core/shaders/Flower/index.d.ts +0 -5
- package/dist/core/shaders/Flower/index.d.ts.map +1 -1
- package/dist/core/shaders/Flower/index.js +6 -8
- package/dist/core/shaders/FlowingGradient/index.d.ts +0 -3
- package/dist/core/shaders/FlowingGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/FlowingGradient/index.js +13 -11
- package/dist/core/shaders/FlutedGlass/index.d.ts +0 -11
- package/dist/core/shaders/FlutedGlass/index.d.ts.map +1 -1
- package/dist/core/shaders/FlutedGlass/index.js +13 -9
- package/dist/core/shaders/Fog/index.d.ts.map +1 -1
- package/dist/core/shaders/Fog/index.js +8 -11
- package/dist/core/shaders/Form3D/index.d.ts +0 -3
- package/dist/core/shaders/Form3D/index.d.ts.map +1 -1
- package/dist/core/shaders/Form3D/index.js +9 -9
- package/dist/core/shaders/FractalNoise/index.d.ts +1 -4
- package/dist/core/shaders/FractalNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/FractalNoise/index.js +16 -15
- package/dist/core/shaders/Frost/index.d.ts +0 -2
- package/dist/core/shaders/Frost/index.d.ts.map +1 -1
- package/dist/core/shaders/Frost/index.js +13 -14
- package/dist/core/shaders/GaborNoise/index.d.ts +1 -4
- package/dist/core/shaders/GaborNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/GaborNoise/index.js +17 -16
- package/dist/core/shaders/Glass/index.d.ts +0 -19
- package/dist/core/shaders/Glass/index.d.ts.map +1 -1
- package/dist/core/shaders/Glass/index.js +12 -10
- package/dist/core/shaders/GlassTiles/index.d.ts +1 -5
- package/dist/core/shaders/GlassTiles/index.d.ts.map +1 -1
- package/dist/core/shaders/GlassTiles/index.js +10 -9
- package/dist/core/shaders/Glitch/index.d.ts +1 -28
- package/dist/core/shaders/Glitch/index.d.ts.map +1 -1
- package/dist/core/shaders/Glitch/index.js +12 -10
- package/dist/core/shaders/Glow/index.d.ts +1 -94
- package/dist/core/shaders/Glow/index.d.ts.map +1 -1
- package/dist/core/shaders/Glow/index.js +13 -9
- package/dist/core/shaders/Godrays/index.d.ts +0 -2
- package/dist/core/shaders/Godrays/index.d.ts.map +1 -1
- package/dist/core/shaders/Godrays/index.js +13 -13
- package/dist/core/shaders/Goo/index.d.ts +0 -2
- package/dist/core/shaders/Goo/index.d.ts.map +1 -1
- package/dist/core/shaders/Goo/index.js +13 -11
- package/dist/core/shaders/GradientMap/index.d.ts +0 -6
- package/dist/core/shaders/GradientMap/index.d.ts.map +1 -1
- package/dist/core/shaders/GradientMap/index.js +9 -9
- package/dist/core/shaders/Grayscale/index.d.ts +0 -2
- package/dist/core/shaders/Grayscale/index.d.ts.map +1 -1
- package/dist/core/shaders/Grayscale/index.js +8 -8
- package/dist/core/shaders/Grid/index.d.ts +1 -5
- package/dist/core/shaders/Grid/index.d.ts.map +1 -1
- package/dist/core/shaders/Grid/index.js +16 -13
- package/dist/core/shaders/GridDistortion/index.d.ts +0 -10
- package/dist/core/shaders/GridDistortion/index.d.ts.map +1 -1
- package/dist/core/shaders/GridDistortion/index.js +13 -8
- package/dist/core/shaders/Group/index.d.ts.map +1 -1
- package/dist/core/shaders/Group/index.js +7 -7
- package/dist/core/shaders/HTMLInCanvas/index.d.ts.map +1 -1
- package/dist/core/shaders/HTMLInCanvas/index.js +8 -8
- package/dist/core/shaders/Halftone/index.d.ts +1 -11
- package/dist/core/shaders/Halftone/index.d.ts.map +1 -1
- package/dist/core/shaders/Halftone/index.js +16 -9
- package/dist/core/shaders/Heart/index.d.ts +0 -5
- package/dist/core/shaders/Heart/index.d.ts.map +1 -1
- package/dist/core/shaders/Heart/index.js +6 -8
- package/dist/core/shaders/Heatmap/index.d.ts +0 -4
- package/dist/core/shaders/Heatmap/index.d.ts.map +1 -1
- package/dist/core/shaders/Heatmap/index.js +13 -13
- package/dist/core/shaders/HexGrid/index.d.ts +1 -4
- package/dist/core/shaders/HexGrid/index.d.ts.map +1 -1
- package/dist/core/shaders/HexGrid/index.js +16 -13
- package/dist/core/shaders/Hologram/index.d.ts +0 -4
- package/dist/core/shaders/Hologram/index.d.ts.map +1 -1
- package/dist/core/shaders/Hologram/index.js +12 -13
- package/dist/core/shaders/Holographic/index.d.ts +0 -3
- package/dist/core/shaders/Holographic/index.d.ts.map +1 -1
- package/dist/core/shaders/Holographic/index.js +12 -14
- package/dist/core/shaders/HueShift/index.d.ts +0 -2
- package/dist/core/shaders/HueShift/index.d.ts.map +1 -1
- package/dist/core/shaders/HueShift/index.js +9 -9
- package/dist/core/shaders/ImageTexture/index.d.ts.map +1 -1
- package/dist/core/shaders/ImageTexture/index.js +6 -7
- package/dist/core/shaders/InkFlow/index.d.ts +0 -1
- package/dist/core/shaders/InkFlow/index.d.ts.map +1 -1
- package/dist/core/shaders/InkFlow/index.js +10 -9
- package/dist/core/shaders/Invert/index.d.ts +0 -2
- package/dist/core/shaders/Invert/index.d.ts.map +1 -1
- package/dist/core/shaders/Invert/index.js +8 -8
- package/dist/core/shaders/IrisWipe/index.d.ts +0 -2
- package/dist/core/shaders/IrisWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/IrisWipe/index.js +9 -10
- package/dist/core/shaders/IsometricCubes/index.d.ts +1 -4
- package/dist/core/shaders/IsometricCubes/index.d.ts.map +1 -1
- package/dist/core/shaders/IsometricCubes/index.js +16 -13
- package/dist/core/shaders/Kaleidoscope/index.d.ts +0 -2
- package/dist/core/shaders/Kaleidoscope/index.d.ts.map +1 -1
- package/dist/core/shaders/Kaleidoscope/index.js +10 -9
- package/dist/core/shaders/KeyFrames/index.d.ts +10 -22
- package/dist/core/shaders/KeyFrames/index.d.ts.map +1 -1
- package/dist/core/shaders/KeyFrames/index.js +12 -9
- package/dist/core/shaders/LensDistortion/index.d.ts.map +1 -1
- package/dist/core/shaders/LensDistortion/index.js +6 -7
- package/dist/core/shaders/LensFlare/index.d.ts +1 -4
- package/dist/core/shaders/LensFlare/index.d.ts.map +1 -1
- package/dist/core/shaders/LensFlare/index.js +13 -12
- package/dist/core/shaders/LightEdge/index.d.ts +0 -41
- package/dist/core/shaders/LightEdge/index.d.ts.map +1 -1
- package/dist/core/shaders/LightEdge/index.js +12 -13
- package/dist/core/shaders/LightLeak/index.d.ts +0 -3
- package/dist/core/shaders/LightLeak/index.d.ts.map +1 -1
- package/dist/core/shaders/LightLeak/index.js +13 -13
- package/dist/core/shaders/Line/index.d.ts +0 -2
- package/dist/core/shaders/Line/index.d.ts.map +1 -1
- package/dist/core/shaders/Line/index.js +13 -8
- package/dist/core/shaders/LinearBlur/index.d.ts +1 -13
- package/dist/core/shaders/LinearBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/LinearBlur/index.js +12 -10
- package/dist/core/shaders/LinearGradient/index.d.ts +0 -14
- package/dist/core/shaders/LinearGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/LinearGradient/index.js +13 -10
- package/dist/core/shaders/LinearWipe/index.d.ts +0 -2
- package/dist/core/shaders/LinearWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/LinearWipe/index.js +9 -10
- package/dist/core/shaders/LiquidMetal/index.d.ts +0 -19
- package/dist/core/shaders/LiquidMetal/index.d.ts.map +1 -1
- package/dist/core/shaders/LiquidMetal/index.js +13 -15
- package/dist/core/shaders/Liquify/index.d.ts +0 -8
- package/dist/core/shaders/Liquify/index.d.ts.map +1 -1
- package/dist/core/shaders/Liquify/index.js +12 -8
- package/dist/core/shaders/MagneticFilings/index.d.ts +8 -21
- package/dist/core/shaders/MagneticFilings/index.d.ts.map +1 -1
- package/dist/core/shaders/MagneticFilings/index.js +10 -11
- package/dist/core/shaders/Marble/index.d.ts +1 -4
- package/dist/core/shaders/Marble/index.d.ts.map +1 -1
- package/dist/core/shaders/Marble/index.js +16 -12
- package/dist/core/shaders/MeshGradient/index.d.ts +0 -5
- package/dist/core/shaders/MeshGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/MeshGradient/index.js +13 -16
- package/dist/core/shaders/Mirror/index.d.ts +0 -2
- package/dist/core/shaders/Mirror/index.d.ts.map +1 -1
- package/dist/core/shaders/Mirror/index.js +10 -9
- package/dist/core/shaders/MultiPointGradient/index.d.ts +0 -2
- package/dist/core/shaders/MultiPointGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/MultiPointGradient/index.js +13 -9
- package/dist/core/shaders/Nebula/index.d.ts +172 -0
- package/dist/core/shaders/Nebula/index.d.ts.map +1 -0
- package/dist/core/shaders/Nebula/index.js +13 -0
- package/dist/core/shaders/Neon/index.d.ts.map +1 -1
- package/dist/core/shaders/Neon/index.js +10 -7
- package/dist/core/shaders/NoiseDissolve/index.d.ts +0 -2
- package/dist/core/shaders/NoiseDissolve/index.d.ts.map +1 -1
- package/dist/core/shaders/NoiseDissolve/index.js +9 -12
- package/dist/core/shaders/ObjectTracker/index.d.ts +8 -0
- package/dist/core/shaders/ObjectTracker/index.d.ts.map +1 -1
- package/dist/core/shaders/ObjectTracker/index.js +11 -10
- package/dist/core/shaders/PagePeel/index.d.ts +0 -28
- package/dist/core/shaders/PagePeel/index.d.ts.map +1 -1
- package/dist/core/shaders/PagePeel/index.js +12 -9
- package/dist/core/shaders/Paper/index.d.ts +1 -5
- package/dist/core/shaders/Paper/index.d.ts.map +1 -1
- package/dist/core/shaders/Paper/index.js +10 -10
- package/dist/core/shaders/Parallelogram/index.d.ts +0 -5
- package/dist/core/shaders/Parallelogram/index.d.ts.map +1 -1
- package/dist/core/shaders/Parallelogram/index.js +6 -8
- package/dist/core/shaders/ParticleField/index.d.ts +9 -27
- package/dist/core/shaders/ParticleField/index.d.ts.map +1 -1
- package/dist/core/shaders/ParticleField/index.js +10 -11
- package/dist/core/shaders/ParticleFlow/index.d.ts +12 -27
- package/dist/core/shaders/ParticleFlow/index.d.ts.map +1 -1
- package/dist/core/shaders/ParticleFlow/index.js +11 -11
- package/dist/core/shaders/Particles/index.d.ts +15 -30
- package/dist/core/shaders/Particles/index.d.ts.map +1 -1
- package/dist/core/shaders/Particles/index.js +10 -12
- package/dist/core/shaders/PerlinNoise/index.d.ts +1 -4
- package/dist/core/shaders/PerlinNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/PerlinNoise/index.js +17 -16
- package/dist/core/shaders/Perspective/index.d.ts +0 -2
- package/dist/core/shaders/Perspective/index.d.ts.map +1 -1
- package/dist/core/shaders/Perspective/index.js +10 -9
- package/dist/core/shaders/PixelSort/index.d.ts +72 -17
- package/dist/core/shaders/PixelSort/index.d.ts.map +1 -1
- package/dist/core/shaders/PixelSort/index.js +10 -10
- package/dist/core/shaders/PixelThrow/index.d.ts +12 -20
- package/dist/core/shaders/PixelThrow/index.d.ts.map +1 -1
- package/dist/core/shaders/PixelThrow/index.js +10 -8
- package/dist/core/shaders/Pixelate/index.d.ts +1 -5
- package/dist/core/shaders/Pixelate/index.d.ts.map +1 -1
- package/dist/core/shaders/Pixelate/index.js +12 -8
- package/dist/core/shaders/Plasma/index.d.ts +0 -3
- package/dist/core/shaders/Plasma/index.d.ts.map +1 -1
- package/dist/core/shaders/Plasma/index.js +13 -15
- package/dist/core/shaders/Plastic/index.d.ts +0 -5
- package/dist/core/shaders/Plastic/index.d.ts.map +1 -1
- package/dist/core/shaders/Plastic/index.js +13 -14
- package/dist/core/shaders/PolarCoordinates/index.d.ts +0 -2
- package/dist/core/shaders/PolarCoordinates/index.d.ts.map +1 -1
- package/dist/core/shaders/PolarCoordinates/index.js +10 -9
- package/dist/core/shaders/Polygon/index.d.ts +0 -5
- package/dist/core/shaders/Polygon/index.d.ts.map +1 -1
- package/dist/core/shaders/Polygon/index.js +7 -8
- package/dist/core/shaders/Posterize/index.d.ts +0 -2
- package/dist/core/shaders/Posterize/index.d.ts.map +1 -1
- package/dist/core/shaders/Posterize/index.js +8 -8
- package/dist/core/shaders/Prism/index.d.ts +0 -17
- package/dist/core/shaders/Prism/index.d.ts.map +1 -1
- package/dist/core/shaders/Prism/index.js +14 -8
- package/dist/core/shaders/ProgressiveBlur/index.d.ts +1 -103
- package/dist/core/shaders/ProgressiveBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/ProgressiveBlur/index.js +12 -10
- package/dist/core/shaders/RadialGradient/index.d.ts +0 -2
- package/dist/core/shaders/RadialGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/RadialGradient/index.js +13 -12
- package/dist/core/shaders/RadialWipe/index.d.ts +0 -2
- package/dist/core/shaders/RadialWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/RadialWipe/index.js +9 -10
- package/dist/core/shaders/RandomBars/index.d.ts +0 -2
- package/dist/core/shaders/RandomBars/index.d.ts.map +1 -1
- package/dist/core/shaders/RandomBars/index.js +9 -12
- package/dist/core/shaders/ReactionDiffusion/index.d.ts +3 -20
- package/dist/core/shaders/ReactionDiffusion/index.d.ts.map +1 -1
- package/dist/core/shaders/ReactionDiffusion/index.js +10 -12
- package/dist/core/shaders/RectangularCoordinates/index.d.ts +0 -2
- package/dist/core/shaders/RectangularCoordinates/index.d.ts.map +1 -1
- package/dist/core/shaders/RectangularCoordinates/index.js +10 -9
- package/dist/core/shaders/ReflectivePlane/index.d.ts +0 -41
- package/dist/core/shaders/ReflectivePlane/index.d.ts.map +1 -1
- package/dist/core/shaders/ReflectivePlane/index.js +12 -9
- package/dist/core/shaders/Repeater/index.d.ts.map +1 -1
- package/dist/core/shaders/Repeater/index.js +5 -7
- package/dist/core/shaders/Ring/index.d.ts +0 -5
- package/dist/core/shaders/Ring/index.d.ts.map +1 -1
- package/dist/core/shaders/Ring/index.js +6 -8
- package/dist/core/shaders/RippleWipe/index.d.ts +0 -2
- package/dist/core/shaders/RippleWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/RippleWipe/index.js +9 -10
- package/dist/core/shaders/Ripples/index.d.ts +1 -4
- package/dist/core/shaders/Ripples/index.d.ts.map +1 -1
- package/dist/core/shaders/Ripples/index.js +16 -8
- package/dist/core/shaders/RoundedRect/index.d.ts +0 -5
- package/dist/core/shaders/RoundedRect/index.d.ts.map +1 -1
- package/dist/core/shaders/RoundedRect/index.js +6 -8
- package/dist/core/shaders/Saturation/index.d.ts +0 -2
- package/dist/core/shaders/Saturation/index.d.ts.map +1 -1
- package/dist/core/shaders/Saturation/index.js +9 -8
- package/dist/core/shaders/Scratches/index.d.ts +1 -5
- package/dist/core/shaders/Scratches/index.d.ts.map +1 -1
- package/dist/core/shaders/Scratches/index.js +17 -13
- package/dist/core/shaders/Sharpness/index.d.ts +1 -6
- package/dist/core/shaders/Sharpness/index.d.ts.map +1 -1
- package/dist/core/shaders/Sharpness/index.js +13 -8
- package/dist/core/shaders/Shatter/index.d.ts +0 -20
- package/dist/core/shaders/Shatter/index.d.ts.map +1 -1
- package/dist/core/shaders/Shatter/index.js +8 -8
- package/dist/core/shaders/SimplexNoise/index.d.ts +1 -4
- package/dist/core/shaders/SimplexNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/SimplexNoise/index.js +17 -16
- package/dist/core/shaders/SineWave/index.d.ts +0 -2
- package/dist/core/shaders/SineWave/index.d.ts.map +1 -1
- package/dist/core/shaders/SineWave/index.js +13 -9
- package/dist/core/shaders/SliceWipe/index.d.ts +0 -2
- package/dist/core/shaders/SliceWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/SliceWipe/index.js +10 -9
- package/dist/core/shaders/Smoke/index.d.ts.map +1 -1
- package/dist/core/shaders/Smoke/index.js +8 -8
- package/dist/core/shaders/SmokeFill/index.d.ts +1 -3
- package/dist/core/shaders/SmokeFill/index.d.ts.map +1 -1
- package/dist/core/shaders/SmokeFill/index.js +12 -11
- package/dist/core/shaders/SmokeFlow/index.d.ts.map +1 -1
- package/dist/core/shaders/SmokeFlow/index.js +8 -8
- package/dist/core/shaders/Solarize/index.d.ts +0 -2
- package/dist/core/shaders/Solarize/index.d.ts.map +1 -1
- package/dist/core/shaders/Solarize/index.js +9 -8
- package/dist/core/shaders/SolidColor/index.d.ts.map +1 -1
- package/dist/core/shaders/SolidColor/index.js +12 -2
- package/dist/core/shaders/Spherize/index.d.ts +1 -12
- package/dist/core/shaders/Spherize/index.d.ts.map +1 -1
- package/dist/core/shaders/Spherize/index.js +12 -8
- package/dist/core/shaders/Spiral/index.d.ts +0 -3
- package/dist/core/shaders/Spiral/index.d.ts.map +1 -1
- package/dist/core/shaders/Spiral/index.js +13 -10
- package/dist/core/shaders/Star/index.d.ts +0 -5
- package/dist/core/shaders/Star/index.d.ts.map +1 -1
- package/dist/core/shaders/Star/index.js +6 -8
- package/dist/core/shaders/Stone/index.d.ts +1 -3
- package/dist/core/shaders/Stone/index.d.ts.map +1 -1
- package/dist/core/shaders/Stone/index.js +16 -6
- package/dist/core/shaders/Strands/index.d.ts +1 -4
- package/dist/core/shaders/Strands/index.d.ts.map +1 -1
- package/dist/core/shaders/Strands/index.js +16 -9
- package/dist/core/shaders/Stretch/index.d.ts +0 -2
- package/dist/core/shaders/Stretch/index.d.ts.map +1 -1
- package/dist/core/shaders/Stretch/index.js +10 -9
- package/dist/core/shaders/Stripes/index.d.ts +1 -5
- package/dist/core/shaders/Stripes/index.d.ts.map +1 -1
- package/dist/core/shaders/Stripes/index.js +16 -12
- package/dist/core/shaders/StudioBackground/index.d.ts +0 -2
- package/dist/core/shaders/StudioBackground/index.d.ts.map +1 -1
- package/dist/core/shaders/StudioBackground/index.js +16 -11
- package/dist/core/shaders/SunBurst/index.d.ts +0 -2
- package/dist/core/shaders/SunBurst/index.d.ts.map +1 -1
- package/dist/core/shaders/SunBurst/index.js +13 -11
- package/dist/core/shaders/Surface3D/index.d.ts +0 -10
- package/dist/core/shaders/Surface3D/index.d.ts.map +1 -1
- package/dist/core/shaders/Surface3D/index.js +10 -11
- package/dist/core/shaders/Swirl/index.d.ts +0 -2
- package/dist/core/shaders/Swirl/index.d.ts.map +1 -1
- package/dist/core/shaders/Swirl/index.js +13 -8
- package/dist/core/shaders/Teardrop/index.d.ts +0 -5
- package/dist/core/shaders/Teardrop/index.d.ts.map +1 -1
- package/dist/core/shaders/Teardrop/index.js +6 -8
- package/dist/core/shaders/Text/index.d.ts +0 -9
- package/dist/core/shaders/Text/index.d.ts.map +1 -1
- package/dist/core/shaders/Text/index.js +14 -12
- package/dist/core/shaders/ThinFilm/index.d.ts.map +1 -1
- package/dist/core/shaders/ThinFilm/index.js +10 -9
- package/dist/core/shaders/TiltShift/index.d.ts +1 -108
- package/dist/core/shaders/TiltShift/index.d.ts.map +1 -1
- package/dist/core/shaders/TiltShift/index.js +12 -10
- package/dist/core/shaders/TimeTrail/index.d.ts +1 -60
- package/dist/core/shaders/TimeTrail/index.d.ts.map +1 -1
- package/dist/core/shaders/TimeTrail/index.js +10 -8
- package/dist/core/shaders/Tint/index.d.ts +0 -3
- package/dist/core/shaders/Tint/index.d.ts.map +1 -1
- package/dist/core/shaders/Tint/index.js +8 -8
- package/dist/core/shaders/Trapezoid/index.d.ts +0 -5
- package/dist/core/shaders/Trapezoid/index.d.ts.map +1 -1
- package/dist/core/shaders/Trapezoid/index.js +6 -8
- package/dist/core/shaders/TriangularGrid/index.d.ts +1 -4
- package/dist/core/shaders/TriangularGrid/index.d.ts.map +1 -1
- package/dist/core/shaders/TriangularGrid/index.js +16 -13
- package/dist/core/shaders/Tritone/index.d.ts +0 -2
- package/dist/core/shaders/Tritone/index.d.ts.map +1 -1
- package/dist/core/shaders/Tritone/index.js +8 -8
- package/dist/core/shaders/Truchet/index.d.ts +1 -4
- package/dist/core/shaders/Truchet/index.d.ts.map +1 -1
- package/dist/core/shaders/Truchet/index.js +16 -13
- package/dist/core/shaders/Twirl/index.d.ts +0 -2
- package/dist/core/shaders/Twirl/index.d.ts.map +1 -1
- package/dist/core/shaders/Twirl/index.js +10 -8
- package/dist/core/shaders/VHS/index.d.ts +1 -8
- package/dist/core/shaders/VHS/index.d.ts.map +1 -1
- package/dist/core/shaders/VHS/index.js +12 -10
- package/dist/core/shaders/VenetianBlinds/index.d.ts +0 -2
- package/dist/core/shaders/VenetianBlinds/index.d.ts.map +1 -1
- package/dist/core/shaders/VenetianBlinds/index.js +9 -10
- package/dist/core/shaders/Vesica/index.d.ts +0 -5
- package/dist/core/shaders/Vesica/index.d.ts.map +1 -1
- package/dist/core/shaders/Vesica/index.js +6 -8
- package/dist/core/shaders/Vibrance/index.d.ts +0 -2
- package/dist/core/shaders/Vibrance/index.d.ts.map +1 -1
- package/dist/core/shaders/Vibrance/index.js +9 -8
- package/dist/core/shaders/VideoTexture/index.d.ts.map +1 -1
- package/dist/core/shaders/VideoTexture/index.js +6 -7
- package/dist/core/shaders/Vignette/index.d.ts +0 -2
- package/dist/core/shaders/Vignette/index.d.ts.map +1 -1
- package/dist/core/shaders/Vignette/index.js +8 -8
- package/dist/core/shaders/Voronoi/index.d.ts +1 -4
- package/dist/core/shaders/Voronoi/index.d.ts.map +1 -1
- package/dist/core/shaders/Voronoi/index.js +16 -13
- package/dist/core/shaders/Water/index.d.ts +0 -5
- package/dist/core/shaders/Water/index.d.ts.map +1 -1
- package/dist/core/shaders/Water/index.js +13 -14
- package/dist/core/shaders/Watercolor/index.d.ts +1 -7
- package/dist/core/shaders/Watercolor/index.d.ts.map +1 -1
- package/dist/core/shaders/Watercolor/index.js +12 -10
- package/dist/core/shaders/WaveDistortion/index.d.ts +0 -8
- package/dist/core/shaders/WaveDistortion/index.d.ts.map +1 -1
- package/dist/core/shaders/WaveDistortion/index.js +10 -9
- package/dist/core/shaders/WaveletNoise/index.d.ts +1 -4
- package/dist/core/shaders/WaveletNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/WaveletNoise/index.js +17 -16
- package/dist/core/shaders/Weave/index.d.ts +1 -4
- package/dist/core/shaders/Weave/index.d.ts.map +1 -1
- package/dist/core/shaders/Weave/index.js +16 -13
- package/dist/core/shaders/WebcamTexture/index.d.ts +0 -7
- package/dist/core/shaders/WebcamTexture/index.d.ts.map +1 -1
- package/dist/core/shaders/WebcamTexture/index.js +7 -10
- package/dist/core/shaders/Wool/index.d.ts +1 -3
- package/dist/core/shaders/Wool/index.d.ts.map +1 -1
- package/dist/core/shaders/Wool/index.js +16 -6
- package/dist/core/shaders/WorleyNoise/index.d.ts +3 -7
- package/dist/core/shaders/WorleyNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/WorleyNoise/index.js +16 -14
- package/dist/core/shaders/ZoomBlur/index.d.ts +1 -16
- package/dist/core/shaders/ZoomBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/ZoomBlur/index.js +12 -9
- package/dist/core/shape-BMO1cLTt.js +20 -0
- package/dist/core/shapePaints-G_Ap8xID.js +4600 -0
- package/dist/core/slots-BqeQDVxy.js +32 -0
- package/dist/core/std/effects/blurs.d.ts +448 -0
- package/dist/core/std/effects/blurs.d.ts.map +1 -0
- package/dist/core/std/effects/color.d.ts +131 -0
- package/dist/core/std/effects/color.d.ts.map +1 -0
- package/dist/core/std/effects/edgeGlow.d.ts +64 -0
- package/dist/core/std/effects/edgeGlow.d.ts.map +1 -0
- package/dist/core/std/effects/fracture.d.ts +55 -0
- package/dist/core/std/effects/fracture.d.ts.map +1 -0
- package/dist/core/std/effects/instances.d.ts +84 -0
- package/dist/core/std/effects/instances.d.ts.map +1 -0
- package/dist/core/std/effects/lens.d.ts +53 -0
- package/dist/core/std/effects/lens.d.ts.map +1 -0
- package/dist/core/std/effects/overlay.d.ts +66 -0
- package/dist/core/std/effects/overlay.d.ts.map +1 -0
- package/dist/core/std/effects/pointerFields.d.ts +50 -0
- package/dist/core/std/effects/pointerFields.d.ts.map +1 -0
- package/dist/core/std/effects/reveal.d.ts +106 -0
- package/dist/core/std/effects/reveal.d.ts.map +1 -0
- package/dist/core/std/effects/stylize.d.ts +177 -0
- package/dist/core/std/effects/stylize.d.ts.map +1 -0
- package/dist/core/std/filter.d.ts +46 -0
- package/dist/core/std/filter.d.ts.map +1 -0
- package/dist/core/std/frames.d.ts +54 -0
- package/dist/core/std/frames.d.ts.map +1 -0
- package/dist/core/std/index.d.ts +31 -0
- package/dist/core/std/index.d.ts.map +1 -0
- package/dist/core/std/invoke.d.ts +45 -0
- package/dist/core/std/invoke.d.ts.map +1 -0
- package/dist/core/std/lower.d.ts +7 -0
- package/dist/core/std/lower.d.ts.map +1 -0
- package/dist/core/std/mask.d.ts +12 -0
- package/dist/core/std/mask.d.ts.map +1 -0
- package/dist/core/std/math.d.ts +52 -0
- package/dist/core/std/math.d.ts.map +1 -0
- package/dist/core/std/motion.d.ts +53 -0
- package/dist/core/std/motion.d.ts.map +1 -0
- package/dist/core/std/paint/compose.d.ts +14 -0
- package/dist/core/std/paint/compose.d.ts.map +1 -0
- package/dist/core/std/paint/fields.d.ts +179 -0
- package/dist/core/std/paint/fields.d.ts.map +1 -0
- package/dist/core/std/paint/figures.d.ts +87 -0
- package/dist/core/std/paint/figures.d.ts.map +1 -0
- package/dist/core/std/paint/gradients.d.ts +89 -0
- package/dist/core/std/paint/gradients.d.ts.map +1 -0
- package/dist/core/std/paint/light.d.ts +218 -0
- package/dist/core/std/paint/light.d.ts.map +1 -0
- package/dist/core/std/paint/materials.d.ts +328 -0
- package/dist/core/std/paint/materials.d.ts.map +1 -0
- package/dist/core/std/paint/media.d.ts +76 -0
- package/dist/core/std/paint/media.d.ts.map +1 -0
- package/dist/core/std/paint/noise.d.ts +243 -0
- package/dist/core/std/paint/noise.d.ts.map +1 -0
- package/dist/core/std/paint/patterns.d.ts +319 -0
- package/dist/core/std/paint/patterns.d.ts.map +1 -0
- package/dist/core/std/paint/scenic.d.ts +111 -0
- package/dist/core/std/paint/scenic.d.ts.map +1 -0
- package/dist/core/std/paint/volume.d.ts +104 -0
- package/dist/core/std/paint/volume.d.ts.map +1 -0
- package/dist/core/std/shape.d.ts +22 -0
- package/dist/core/std/shape.d.ts.map +1 -0
- package/dist/core/std/signal.d.ts +23 -0
- package/dist/core/std/signal.d.ts.map +1 -0
- package/dist/core/std/sim/agentForces.d.ts +450 -0
- package/dist/core/std/sim/agentForces.d.ts.map +1 -0
- package/dist/core/std/sim/agentFrame.d.ts +102 -0
- package/dist/core/std/sim/agentFrame.d.ts.map +1 -0
- package/dist/core/std/sim/agentRender.d.ts +274 -0
- package/dist/core/std/sim/agentRender.d.ts.map +1 -0
- package/dist/core/std/sim/agents.d.ts +119 -0
- package/dist/core/std/sim/agents.d.ts.map +1 -0
- package/dist/core/std/sim/feedback.d.ts +51 -0
- package/dist/core/std/sim/feedback.d.ts.map +1 -0
- package/dist/core/std/sim/fluids.d.ts +207 -0
- package/dist/core/std/sim/fluids.d.ts.map +1 -0
- package/dist/core/std/sim/grids.d.ts +161 -0
- package/dist/core/std/sim/grids.d.ts.map +1 -0
- package/dist/core/std/sim/shapeFields.d.ts +87 -0
- package/dist/core/std/sim/shapeFields.d.ts.map +1 -0
- package/dist/core/std/sim.d.ts +62 -0
- package/dist/core/std/sim.d.ts.map +1 -0
- package/dist/core/std/slots.d.ts +15 -0
- package/dist/core/std/slots.d.ts.map +1 -0
- package/dist/core/std/types.d.ts +198 -0
- package/dist/core/std/types.d.ts.map +1 -0
- package/dist/core/std/values.d.ts +49 -0
- package/dist/core/std/values.d.ts.map +1 -0
- package/dist/core/std/warps.d.ts +224 -0
- package/dist/core/std/warps.d.ts.map +1 -0
- package/dist/core/stylize-DuY5wWZo.js +4542 -0
- package/dist/core/telemetry/index.js +1 -1
- package/dist/core/{tone-Bm6RiwOF.js → tone-BA0D_veZ.js} +3 -3
- package/dist/core/utilities/propConfigs.d.ts +27 -0
- package/dist/core/utilities/propConfigs.d.ts.map +1 -1
- package/dist/core/utilities/sdf3d.d.ts +8 -0
- package/dist/core/utilities/sdf3d.d.ts.map +1 -1
- package/dist/core/utilities/transformations/index.js +1 -1
- package/dist/core/warpMaps-CPjWFW4W.js +10774 -0
- package/dist/core/warps-B_sbWWsN.js +276 -0
- package/dist/js/bundle.js +199 -195
- package/dist/js/createShader.js +1 -1
- package/dist/js/utils/generatePresetCode.d.ts.map +1 -1
- package/dist/js/utils/generatePresetCode.js +35 -0
- package/dist/react/Nebula.js +226 -0
- package/dist/react/Preview.js +1 -0
- package/dist/react/Shader.js +1 -1
- package/dist/react/bundle.js +201 -197
- package/dist/react/components/BrushedMetal.d.ts +3 -1
- package/dist/react/components/BrushedMetal.d.ts.map +1 -1
- package/dist/react/components/CarbonFiber.d.ts +3 -1
- package/dist/react/components/CarbonFiber.d.ts.map +1 -1
- package/dist/react/components/Chrome.d.ts +2 -1
- package/dist/react/components/Chrome.d.ts.map +1 -1
- package/dist/react/components/CursorTrail.d.ts +4 -2
- package/dist/react/components/CursorTrail.d.ts.map +1 -1
- package/dist/react/components/LiquidMetal.d.ts +4 -1
- package/dist/react/components/LiquidMetal.d.ts.map +1 -1
- package/dist/react/components/Nebula.d.ts +52 -0
- package/dist/react/components/Nebula.d.ts.map +1 -0
- package/dist/react/engine/Preview.d.ts.map +1 -1
- package/dist/react/index.d.ts +1 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +2 -1
- package/dist/react/utils/generatePresetCode.d.ts.map +1 -1
- package/dist/react/utils/generatePresetCode.js +35 -0
- package/dist/registry.js +1082 -155
- package/dist/solid/components/BrushedMetal.d.ts +3 -1
- package/dist/solid/components/BrushedMetal.d.ts.map +1 -1
- package/dist/solid/components/CarbonFiber.d.ts +3 -1
- package/dist/solid/components/CarbonFiber.d.ts.map +1 -1
- package/dist/solid/components/Chrome.d.ts +2 -1
- package/dist/solid/components/Chrome.d.ts.map +1 -1
- package/dist/solid/components/CursorTrail.d.ts +4 -2
- package/dist/solid/components/CursorTrail.d.ts.map +1 -1
- package/dist/solid/components/LiquidMetal.d.ts +4 -1
- package/dist/solid/components/LiquidMetal.d.ts.map +1 -1
- package/dist/solid/components/Nebula.d.ts +49 -0
- package/dist/solid/components/Nebula.d.ts.map +1 -0
- package/dist/solid/components/Nebula.js +232 -0
- package/dist/solid/engine/Preview.d.ts.map +1 -1
- package/dist/solid/engine/Preview.js +225 -223
- package/dist/solid/engine/Shader.js +1 -1
- package/dist/solid/index.d.ts +1 -0
- package/dist/solid/index.d.ts.map +1 -1
- package/dist/solid/index.js +170 -168
- package/dist/solid/utils/generatePresetCode.d.ts.map +1 -1
- package/dist/solid/utils/generatePresetCode.js +35 -0
- package/dist/svelte/components/BrushedMetal.svelte.d.ts +2 -0
- package/dist/svelte/components/CarbonFiber.svelte.d.ts +2 -0
- package/dist/svelte/components/Chrome.svelte.d.ts +1 -0
- package/dist/svelte/components/CursorTrail.svelte.d.ts +2 -1
- package/dist/svelte/components/LiquidMetal.svelte.d.ts +3 -0
- package/dist/svelte/components/Nebula.svelte.d.ts +39 -0
- package/dist/svelte/index.d.ts +1 -0
- package/dist/svelte/index.js +2774 -2567
- package/dist/svelte/source/components/BrushedMetal.svelte +2 -0
- package/dist/svelte/source/components/CarbonFiber.svelte +2 -0
- package/dist/svelte/source/components/Chrome.svelte +1 -0
- package/dist/svelte/source/components/CursorTrail.svelte +1 -0
- package/dist/svelte/source/components/LiquidMetal.svelte +3 -0
- package/dist/svelte/source/components/Nebula.svelte +363 -0
- package/dist/svelte/source/engine/Preview.svelte +2 -0
- package/dist/svelte/source/index.js +1 -0
- package/dist/svelte/utils/generatePresetCode.js +35 -0
- package/dist/vue/BrushedMetal.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/vue/CarbonFiber.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/vue/Chrome.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/vue/CursorTrail.vue_vue_type_script_setup_true_lang.js +1 -0
- package/dist/vue/LiquidMetal.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/vue/Nebula.js +3 -0
- package/dist/vue/Nebula.vue_vue_type_script_setup_true_lang.js +253 -0
- package/dist/vue/Preview.vue_vue_type_script_setup_true_lang.js +2 -0
- package/dist/vue/Shader.vue_vue_type_script_setup_true_lang.js +5 -1
- package/dist/vue/components/BrushedMetal.vue.d.ts +2 -0
- package/dist/vue/components/BrushedMetal.vue.d.ts.map +1 -1
- package/dist/vue/components/CarbonFiber.vue.d.ts +2 -0
- package/dist/vue/components/CarbonFiber.vue.d.ts.map +1 -1
- package/dist/vue/components/Chrome.vue.d.ts +1 -0
- package/dist/vue/components/Chrome.vue.d.ts.map +1 -1
- package/dist/vue/components/CursorTrail.vue.d.ts +2 -1
- package/dist/vue/components/CursorTrail.vue.d.ts.map +1 -1
- package/dist/vue/components/LiquidMetal.vue.d.ts +3 -0
- package/dist/vue/components/LiquidMetal.vue.d.ts.map +1 -1
- package/dist/vue/components/Nebula.vue.d.ts +74 -0
- package/dist/vue/components/Nebula.vue.d.ts.map +1 -0
- package/dist/vue/engine/Shader.vue.d.ts +1 -0
- package/dist/vue/engine/Shader.vue.d.ts.map +1 -1
- package/dist/vue/index.d.ts +1 -0
- package/dist/vue/index.d.ts.map +1 -1
- package/dist/vue/index.js +2 -1
- package/dist/vue/utils/generatePresetCode.d.ts.map +1 -1
- package/dist/vue/utils/generatePresetCode.js +35 -0
- package/package.json +9 -1
- package/dist/core/AngularBlur-k32I0pzC.js +0 -296
- package/dist/core/Arc-BYqLSJWW.js +0 -172
- package/dist/core/Ascii-D4tzJH13.js +0 -1099
- package/dist/core/Aurora-SVhoYirL.js +0 -1639
- package/dist/core/BarShift-C8PE0HAM.js +0 -624
- package/dist/core/BarnDoors-KHrJyvtH.js +0 -158
- package/dist/core/Beam-Y2kxJf6h.js +0 -455
- package/dist/core/Bend-S7HKN8T2.js +0 -692
- package/dist/core/Blob-A8scGEOB.js +0 -1520
- package/dist/core/BlockDissolve-UfOKRmLl.js +0 -163
- package/dist/core/BlockNoise-CjbdsEFZ.js +0 -116
- package/dist/core/BlueNoise-CWEODGh_.js +0 -91
- package/dist/core/Blur-Dx2gGvc1.js +0 -355
- package/dist/core/Boids-CUygeMPX.js +0 -3809
- package/dist/core/BokehBlur-BzPuSJaC.js +0 -2807
- package/dist/core/BrickPattern-CufxLy4C.js +0 -733
- package/dist/core/BrightnessContrast-Cvl0Hias.js +0 -169
- package/dist/core/BrushedMetal-tHX8tRMA.js +0 -2218
- package/dist/core/Bulge-kl76AYcI.js +0 -372
- package/dist/core/CRTScreen-BY4EuaEH.js +0 -740
- package/dist/core/CarbonFiber-pNfF1UIk.js +0 -2215
- package/dist/core/Chalkboard-CTpNV4jZ.js +0 -1242
- package/dist/core/ChannelBlur-CztAo61H.js +0 -273
- package/dist/core/CheckerWipe-cUzlH7zB.js +0 -286
- package/dist/core/Checkerboard-zKhQEZ0i.js +0 -153
- package/dist/core/Chevron-i0bQwbRB.js +0 -389
- package/dist/core/ChromaFlow-BN9LiEJu.js +0 -789
- package/dist/core/ChromaticAberration-Db2jqHvH.js +0 -224
- package/dist/core/Chrome-Bn8Hgt-V.js +0 -3048
- package/dist/core/Circle-_anR8qFx.js +0 -251
- package/dist/core/ColorWheel-CsWS484T.js +0 -511
- package/dist/core/CompressionArtifacts-CnaUlK7r.js +0 -2032
- package/dist/core/ConcentricSpin-ANZiJpNp.js +0 -768
- package/dist/core/ConicGradient-9gNpue0r.js +0 -224
- package/dist/core/ContourLines-BTO4gDYR.js +0 -495
- package/dist/core/CornerPin-QBHxQ6-G.js +0 -1727
- package/dist/core/Crescent-BkAafdze.js +0 -178
- package/dist/core/Cross-ob_ftCiT.js +0 -179
- package/dist/core/Crystal-D434DG-P.js +0 -4283
- package/dist/core/CurlNoise-BdNjQeqg.js +0 -123
- package/dist/core/CursorRipples-DB-pXdOa.js +0 -1339
- package/dist/core/CursorTrail-Dk3-1Y0B.js +0 -1224
- package/dist/core/DataMosh-DOv5w8mq.js +0 -2213
- package/dist/core/DiamondGradient-BjqWyhxG.js +0 -355
- package/dist/core/DiamondWipe-KFEhDDoA.js +0 -202
- package/dist/core/DiffuseBlur-I5qOL2SL.js +0 -169
- package/dist/core/DisplacementMap-BcqxOWwt.js +0 -499
- package/dist/core/Dither-Aj5wYGgJ.js +0 -2334
- package/dist/core/DotGrid-CE4NTMPO.js +0 -500
- package/dist/core/DropShadow-CsQTZ3hH.js +0 -678
- package/dist/core/Duotone-nubY3y8D.js +0 -130
- package/dist/core/Ellipse-BrbLKp5r.js +0 -159
- package/dist/core/Engraving-45eoh3M1.js +0 -1222
- package/dist/core/ErosionNoise-DwCsPxg7.js +0 -110
- package/dist/core/Exposure-koKL0UYt.js +0 -75
- package/dist/core/FallingLines-CRgCDqBt.js +0 -943
- package/dist/core/FilmGrain-DMrHbRdC.js +0 -287
- package/dist/core/Flip-vzejThsP.js +0 -143
- package/dist/core/FloatingParticles-n4upxu-l.js +0 -2321
- package/dist/core/FlowField-B4UfuI6k.js +0 -706
- package/dist/core/Flower-DzK5D1gw.js +0 -178
- package/dist/core/FlowingGradient-BbBfNWVt.js +0 -1139
- package/dist/core/FlutedGlass-tleahatl.js +0 -966
- package/dist/core/Fog-Df_ScuGu.js +0 -1992
- package/dist/core/Form3D-Cbw2Sc7x.js +0 -4639
- package/dist/core/FractalNoise-Cp5VzY-P.js +0 -402
- package/dist/core/Frost-CH3pDx11.js +0 -2259
- package/dist/core/GaborNoise-D1K3fmpq.js +0 -140
- package/dist/core/Glass-D0EJB7H-.js +0 -353
- package/dist/core/GlassTiles-CUxxu8bw.js +0 -593
- package/dist/core/Glitch-DmYoD4Qz.js +0 -1760
- package/dist/core/Glow-YQGEdxFK.js +0 -189
- package/dist/core/Godrays-D8tVHKWH.js +0 -1119
- package/dist/core/Goo-DTPGEuhD.js +0 -2165
- package/dist/core/GradientMap-C2jRL9K2.js +0 -836
- package/dist/core/Grayscale-DD6oDBMS.js +0 -69
- package/dist/core/Grid-CjQH1sh7.js +0 -613
- package/dist/core/GridDistortion-TQmwWLGI.js +0 -1133
- package/dist/core/HTMLInCanvas-D-wwJDXY.js +0 -96
- package/dist/core/Halftone-TqfKkAKa.js +0 -1212
- package/dist/core/Heart-DZGnuzjT.js +0 -135
- package/dist/core/Heatmap-De4wTDbd.js +0 -1420
- package/dist/core/HexGrid-CIyDIGhg.js +0 -541
- package/dist/core/Hologram-nTG7_1Au.js +0 -1815
- package/dist/core/Holographic-B7T5PO7A.js +0 -2016
- package/dist/core/HueShift-NPrgvT8i.js +0 -369
- package/dist/core/ImageTexture-D_DuE22Q.js +0 -58
- package/dist/core/InkFlow-Bm5pXn7t.js +0 -1071
- package/dist/core/Invert-DSL_1AHp.js +0 -71
- package/dist/core/IrisWipe-DHqJsmdN.js +0 -154
- package/dist/core/IsometricCubes-BvXPOglM.js +0 -709
- package/dist/core/Kaleidoscope-CMcsOqEB.js +0 -347
- package/dist/core/LensDistortion-29Svh3iK.js +0 -435
- package/dist/core/LensFlare-MGtdMge_.js +0 -2636
- package/dist/core/LightLeak-Do_WscDZ.js +0 -1332
- package/dist/core/Line-D3k4CZMP.js +0 -1192
- package/dist/core/LinearBlur-CRygLDig.js +0 -237
- package/dist/core/LinearGradient-7kyKz9jj.js +0 -641
- package/dist/core/LinearWipe-3mgYw2fW.js +0 -153
- package/dist/core/LiquidMetal-DhHYpeke.js +0 -2146
- package/dist/core/Liquify-DBPrHpd-.js +0 -1670
- package/dist/core/MagneticFilings-rWy0FGXl.js +0 -2711
- package/dist/core/Marble-BZ4BXWmR.js +0 -531
- package/dist/core/MeshGradient-C7N0s7cE.js +0 -1508
- package/dist/core/Mirror-C9vpald9.js +0 -305
- package/dist/core/MultiPointGradient-DqNHo9YZ.js +0 -654
- package/dist/core/NoiseDissolve-BuD5B-yj.js +0 -385
- package/dist/core/ObjectTracker-dN9-Jxz9.js +0 -617
- package/dist/core/PagePeel-CM0kk9ku.js +0 -1169
- package/dist/core/Paper-CZxfSpk0.js +0 -293
- package/dist/core/Parallelogram-iC4nDSz9.js +0 -178
- package/dist/core/ParticleField-Br2-UoOj.js +0 -4204
- package/dist/core/ParticleFlow-D5LhGlwp.js +0 -3919
- package/dist/core/Particles-qM7v4_ds.js +0 -5600
- package/dist/core/PerlinNoise-B94uI7_O.js +0 -116
- package/dist/core/Perspective-V0EYI6XF.js +0 -481
- package/dist/core/PixelSort-Cb_YKX9c.js +0 -1983
- package/dist/core/PixelThrow-FCMohpIC.js +0 -508
- package/dist/core/Pixelate-CzWIC3uh.js +0 -407
- package/dist/core/Plasma-C-P060ej.js +0 -331
- package/dist/core/Plastic-C-1qobD6.js +0 -2507
- package/dist/core/PolarCoordinates-DcRR_meI.js +0 -243
- package/dist/core/Polygon-DBDjnwTW.js +0 -213
- package/dist/core/Posterize-CFULQdkJ.js +0 -157
- package/dist/core/Prism-CihUVTWk.js +0 -922
- package/dist/core/ProgressiveBlur-DSQu7xZi.js +0 -793
- package/dist/core/RadialGradient-Sr3KGVMn.js +0 -336
- package/dist/core/RadialWipe-RcvBZdZS.js +0 -213
- package/dist/core/RandomBars-Cz8Q4TbS.js +0 -212
- package/dist/core/ReactionDiffusion-C7YAM_2K.js +0 -3262
- package/dist/core/RectangularCoordinates-DMlN9TZ6.js +0 -207
- package/dist/core/ReflectivePlane-BCMn97BD.js +0 -575
- package/dist/core/Repeater-C5MAYSa4.js +0 -578
- package/dist/core/Ring-CR_H7Kx6.js +0 -257
- package/dist/core/RippleWipe-Dj8H_mZx.js +0 -227
- package/dist/core/Ripples-Dz4uXSfW.js +0 -352
- package/dist/core/RoundedRect-DoUnmzii.js +0 -179
- package/dist/core/Saturation-BW5xLi-M.js +0 -158
- package/dist/core/Scratches-DczKzFK-.js +0 -195
- package/dist/core/Sharpness-IGLEKM4A.js +0 -365
- package/dist/core/SimplexNoise-CNEC7KTy.js +0 -197
- package/dist/core/SineWave-BJT7tIrR.js +0 -462
- package/dist/core/SliceWipe-BpL6ESuf.js +0 -417
- package/dist/core/Smoke-B7-Lg6sy.js +0 -1173
- package/dist/core/SmokeFill-g6J2PhDW.js +0 -2868
- package/dist/core/SmokeFlow-Cin8S6uq.js +0 -842
- package/dist/core/Solarize-DgNG5mG2.js +0 -229
- package/dist/core/Spherize-DdJ0QnmX.js +0 -814
- package/dist/core/Spiral-B38GVowo.js +0 -703
- package/dist/core/Star-C9g1lgSg.js +0 -178
- package/dist/core/Strands-BCq5D5ge.js +0 -1377
- package/dist/core/Stretch-Cg8j1X2l.js +0 -378
- package/dist/core/Stripes-CIpusngF.js +0 -360
- package/dist/core/StudioBackground-BrkW9onU.js +0 -2236
- package/dist/core/SunBurst-WsglIVYI.js +0 -384
- package/dist/core/Surface3D-Bm2kKZP9.js +0 -4776
- package/dist/core/Swirl-BGiBr9ok.js +0 -1066
- package/dist/core/Teardrop-DVfRGIXe.js +0 -159
- package/dist/core/TiltShift-AvLZaRdU.js +0 -888
- package/dist/core/TimeTrail-BBQA-QYh.js +0 -1928
- package/dist/core/Tint-BiFVLGge.js +0 -361
- package/dist/core/Trapezoid-CLBGzCCL.js +0 -245
- package/dist/core/TriangularGrid-BWN0dMZS.js +0 -649
- package/dist/core/Tritone-B-36klV4.js +0 -204
- package/dist/core/Truchet-aVDkUikX.js +0 -627
- package/dist/core/Twirl-ClRyml4d.js +0 -256
- package/dist/core/VHS-C36Zl8sj.js +0 -1482
- package/dist/core/VenetianBlinds-yfoS8W2i.js +0 -176
- package/dist/core/Vesica-WXhe-d_M.js +0 -159
- package/dist/core/Vibrance-BCyZr3kn.js +0 -212
- package/dist/core/VideoTexture-DOYMX8BL.js +0 -58
- package/dist/core/Vignette-hkT5ms9c.js +0 -340
- package/dist/core/Voronoi-CKMJoajk.js +0 -338
- package/dist/core/Water-BbKR6fSY.js +0 -3300
- package/dist/core/Watercolor-DZ7_6AdJ.js +0 -1228
- package/dist/core/WaveDistortion-Btt0BlER.js +0 -981
- package/dist/core/WaveletNoise-CAvOypac.js +0 -140
- package/dist/core/Weave-BcbL3auw.js +0 -598
- package/dist/core/WebcamTexture-YMfcROPm.js +0 -121
- package/dist/core/WorleyNoise-D2jP9Pwt.js +0 -532
- package/dist/core/ZoomBlur-B7gpP676.js +0 -252
- package/dist/core/agents-CxygFSH4.js +0 -1388
- package/dist/core/bevel-ChIxQ9oM.js +0 -101
- package/dist/core/blur-CXouokcq.js +0 -3415
- package/dist/core/cells-C-mOgwV1.js +0 -943
- package/dist/core/cellular-DoC-O8KM.js +0 -1342
- package/dist/core/constants-BKlzQFdJ.js +0 -9
- package/dist/core/derivative-CR__I1Rp.js +0 -93
- package/dist/core/device-DKcu50_C.js +0 -5025
- package/dist/core/fields-Ch0s1PTq.js +0 -1147
- package/dist/core/geom-BS390xIn.js +0 -927
- package/dist/core/lighting-CBczjo6Y.js +0 -1133
- package/dist/core/noiseStylize-CZRUH_jm.js +0 -344
- package/dist/core/pointer-DKBz1Qcc.js +0 -88
- package/dist/core/porters-j7yWJYy2.js +0 -10700
- package/dist/core/propConfigs-CvzF7Ot8.js +0 -190
- package/dist/core/reveal-B6lBXQJl.js +0 -912
- package/dist/core/shaderRegistry-CpApZw3f.js +0 -433
- /package/dist/core/{canvasRaster-B41z007g.js → canvasRaster-Clio8jcl.js} +0 -0
- /package/dist/core/{fonts-BMxmjoBM.js → fonts-Dyp7nl7T.js} +0 -0
- /package/dist/core/{support-DVuLvN48.js → support-ULZQgbko.js} +0 -0
- /package/dist/core/{transformations-u-UZrXjj.js → transformations-CoIwF5JU.js} +0 -0
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import { GpuComputeNode, GpuFragmentParams } from '../../gpu/contract';
|
|
2
|
+
import { ComputeStep, KitComputePipeline } from '../../gpu/compute';
|
|
3
|
+
import { StableFluidsKernels } from '../../gpu/scaffolds/fluids';
|
|
4
|
+
import { PointerFrame, PointerLike, PointerVelocityTrackerOptions } from '../../gpu/kit/host/pointer';
|
|
5
|
+
|
|
6
|
+
/** The TypeGPU root, via the contract (direct `typegpu` imports are restricted to src/gpu/). */
|
|
7
|
+
export type FluidRoot = NonNullable<GpuFragmentParams['gpu']>['root'];
|
|
8
|
+
/** A 2D-dispatched TGSL kernel over the N×N grid. */
|
|
9
|
+
export type FluidKernel = (cx: number, cy: number) => void;
|
|
10
|
+
/** The renderer's per-frame params, as the fluid consumers read them. */
|
|
11
|
+
export interface FluidFrameParams {
|
|
12
|
+
pointer?: PointerLike;
|
|
13
|
+
deltaTime?: number;
|
|
14
|
+
dimensions?: {
|
|
15
|
+
width: number;
|
|
16
|
+
height: number;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/** One frame of the simulation, handed to every part and to `values`. */
|
|
20
|
+
export interface FluidFrame {
|
|
21
|
+
/** Frame delta, clamped to `maxDeltaTime` (0.033 s default). */
|
|
22
|
+
dt: number;
|
|
23
|
+
/** `Date.now()` this frame — the idle gates' clock. */
|
|
24
|
+
now: number;
|
|
25
|
+
/** Local clock: sum of clamped deltas. An init part may reset it (Fog's warm-up). */
|
|
26
|
+
readonly elapsed: number;
|
|
27
|
+
setElapsed(t: number): void;
|
|
28
|
+
/** The noun-owned tracker's sample (config `pointer`), or null. Ribbons own their own. */
|
|
29
|
+
ptr: PointerFrame | null;
|
|
30
|
+
num(key: string, fallback: number): number;
|
|
31
|
+
getCpuValue(key: string): unknown;
|
|
32
|
+
frameParams: FluidFrameParams;
|
|
33
|
+
/** Write the params uniform directly (per-stamp rewrites inside ribbon thunks). */
|
|
34
|
+
writeParams(v: unknown): void;
|
|
35
|
+
}
|
|
36
|
+
/** What parts get to build their pipelines against at composition time. */
|
|
37
|
+
export interface FluidSetupCtx {
|
|
38
|
+
params: GpuFragmentParams;
|
|
39
|
+
root: FluidRoot;
|
|
40
|
+
/** Grid resolution per axis. */
|
|
41
|
+
n: number;
|
|
42
|
+
buffers: {
|
|
43
|
+
velA: unknown;
|
|
44
|
+
velB: unknown;
|
|
45
|
+
dyeA: unknown;
|
|
46
|
+
dyeB: unknown;
|
|
47
|
+
pressure: unknown;
|
|
48
|
+
divergence: unknown;
|
|
49
|
+
maskBuf?: unknown;
|
|
50
|
+
};
|
|
51
|
+
/** The params uniform's buffer (for a part's own bind group). */
|
|
52
|
+
paramsBuffer: unknown;
|
|
53
|
+
/** The solve bind group every solver pass runs on. */
|
|
54
|
+
fluidBindGroup: unknown;
|
|
55
|
+
/** One kernel as a guarded pass — on the fluid bind group unless another is given. */
|
|
56
|
+
pass(kernel: FluidKernel, bindGroup?: unknown): KitComputePipeline;
|
|
57
|
+
}
|
|
58
|
+
/** An emission part: pre-gate bookkeeping, an optional idle gate, and this frame's dispatches. */
|
|
59
|
+
export interface FluidEmitter<TParams = unknown> {
|
|
60
|
+
setup?(ctx: FluidSetupCtx): void;
|
|
61
|
+
/** Pre-gate bookkeeping (pointer sampling, colour-cycle drift, markActive). */
|
|
62
|
+
tick?(f: FluidFrame): void;
|
|
63
|
+
/** Idle gate: true → the whole frame is skipped (the settled field persists on screen). */
|
|
64
|
+
skip?(f: FluidFrame): boolean;
|
|
65
|
+
/** Push this frame's emission dispatches (they run before the solve chain). */
|
|
66
|
+
emit?(f: FluidFrame, nodes: ComputeStep[], values: TParams): void;
|
|
67
|
+
}
|
|
68
|
+
/** A per-SOLVE stage: runs inside every solve, including an init part's warm-up steps. */
|
|
69
|
+
export interface FluidSolveStage {
|
|
70
|
+
stage: 'pre' | 'post';
|
|
71
|
+
kernel: FluidKernel;
|
|
72
|
+
}
|
|
73
|
+
/** Ambient body force (Fog's turbulence field) — dispatched before every solve chain. */
|
|
74
|
+
export declare const ambientForce: (kernel: FluidKernel) => FluidSolveStage;
|
|
75
|
+
/** Restoration pass (Fog's colour re-seed against numerical diffusion) — after every solve chain. */
|
|
76
|
+
export declare const restoreToward: (kernel: FluidKernel) => FluidSolveStage;
|
|
77
|
+
/** What an init part gets to append with. `writeParams` returns a QUEUED thunk (device.queue order). */
|
|
78
|
+
export interface FluidInitIo<TParams> {
|
|
79
|
+
nodes: ComputeStep[];
|
|
80
|
+
writeParams(v: TParams): ComputeStep;
|
|
81
|
+
solve(nodes: ComputeStep[], jacobiIters: number): void;
|
|
82
|
+
}
|
|
83
|
+
export interface FluidInitPart<TParams = unknown> {
|
|
84
|
+
setup?(ctx: FluidSetupCtx): void;
|
|
85
|
+
stale(f: FluidFrame): boolean;
|
|
86
|
+
run(f: FluidFrame, io: FluidInitIo<TParams>): void;
|
|
87
|
+
}
|
|
88
|
+
/** What a container part (SmokeFill's confining shape) contributes. */
|
|
89
|
+
export interface FluidContainerParts {
|
|
90
|
+
/** The mask pass, dispatched after the params write and before emission. */
|
|
91
|
+
maskPass: KitComputePipeline;
|
|
92
|
+
/** Extra compute outputs to expose (the volumetric field texture). */
|
|
93
|
+
outputs?: Record<string, unknown>;
|
|
94
|
+
/**
|
|
95
|
+
* Per-frame pre-nodes (the volumetric field pre-march). They run FIRST, and they are what a
|
|
96
|
+
* sub-millisecond frame still returns — a pending march is never dropped.
|
|
97
|
+
*/
|
|
98
|
+
preFrame?(frameParams: unknown): ComputeStep[] | null;
|
|
99
|
+
}
|
|
100
|
+
export interface FluidSimConfig<TParams> {
|
|
101
|
+
/** Grid resolution per axis (structural — the kernels are baked against it). */
|
|
102
|
+
resolution: number;
|
|
103
|
+
/** The shader's fluid bind-group layout (the scaffolds/fluids entry-name contract). */
|
|
104
|
+
layout: unknown;
|
|
105
|
+
/** The output pass's layout (`dyeA` read-only + `outTex`). */
|
|
106
|
+
outputLayout: unknown;
|
|
107
|
+
/** The shader's per-frame params struct. */
|
|
108
|
+
paramsSchema: unknown;
|
|
109
|
+
solver: {
|
|
110
|
+
kernels: StableFluidsKernels;
|
|
111
|
+
jacobiIters: number;
|
|
112
|
+
};
|
|
113
|
+
/** The dye→texture publish pass and the `outputs` key the fragment samples it under. */
|
|
114
|
+
output: {
|
|
115
|
+
kernel: FluidKernel;
|
|
116
|
+
key: string;
|
|
117
|
+
};
|
|
118
|
+
/** How the per-frame params reach the GPU: one direct write (default) or a queued thunk. */
|
|
119
|
+
write?: 'direct' | 'thunk';
|
|
120
|
+
/** Noun-owned pointer tracker for cursor-force consumers; ribbon emitters own their own. */
|
|
121
|
+
pointer?: PointerVelocityTrackerOptions;
|
|
122
|
+
/** Confining shape container (allocates `maskBuf`, dispatches its mask pass every frame). */
|
|
123
|
+
container?: {
|
|
124
|
+
setup(ctx: FluidSetupCtx): FluidContainerParts;
|
|
125
|
+
};
|
|
126
|
+
init?: FluidInitPart<TParams>;
|
|
127
|
+
inject?: FluidEmitter<TParams>[];
|
|
128
|
+
solve?: FluidSolveStage[];
|
|
129
|
+
/** The per-frame params derivation — the one runtime surface. */
|
|
130
|
+
values(f: FluidFrame): TParams;
|
|
131
|
+
/** Upper bound on the frame delta. Default 0.033 s (every current consumer's clamp). */
|
|
132
|
+
maxDeltaTime?: number;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* The fluid-simulation noun. Spread it into a definition: `...fluidSim((params, root) => ({...}))`.
|
|
136
|
+
*
|
|
137
|
+
* The build callback runs at COMPUTE-NODE creation (per instance, after the no-device bail), so
|
|
138
|
+
* parts and closures created inside it are instance state.
|
|
139
|
+
*/
|
|
140
|
+
export declare function fluidSim<TParams>(build: (params: GpuFragmentParams, root: FluidRoot) => FluidSimConfig<TParams>): {
|
|
141
|
+
compute: GpuComputeNode;
|
|
142
|
+
};
|
|
143
|
+
/** A fixed-source emission pass (Smoke's cone, SmokeFill's confined cone): one dispatch per frame. */
|
|
144
|
+
export declare function splat<TParams = unknown>(opts: {
|
|
145
|
+
kernel: FluidKernel;
|
|
146
|
+
} | {
|
|
147
|
+
setup: (ctx: FluidSetupCtx) => KitComputePipeline;
|
|
148
|
+
}): FluidEmitter<TParams>;
|
|
149
|
+
/** One ribbon's stamp geometry + payload, resolved per frame. */
|
|
150
|
+
export interface CursorRibbonSpec<TPrepared> {
|
|
151
|
+
/** Spacing between stamps, in viewport UV. */
|
|
152
|
+
stepSize: number;
|
|
153
|
+
/** Hard cap on stamps per frame. */
|
|
154
|
+
maxSteps: number;
|
|
155
|
+
/** Per-stamp payload advanced at BUILD time in stamp order (InkFlow's colour cycle). */
|
|
156
|
+
prepare?: (t: number) => TPrepared;
|
|
157
|
+
/** Write the stamp's uniform — runs in a thunk right before that stamp's dispatch. */
|
|
158
|
+
write: (posX: number, posY: number, t: number, prepared: TPrepared) => void;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Stroke emission: a pointer-velocity tracker (teleport/drag policy as data), an idle gate that
|
|
162
|
+
* freezes the sim once the field has faded after the last stroke, and a per-frame ribbon of stamps
|
|
163
|
+
* interpolated along the drag path (`pathStampRibbon` — no dotted gaps on a fast flick).
|
|
164
|
+
*
|
|
165
|
+
* The part owns its tracker; read the frame's sample back via `.ptr()` / `.active()` (SmokeFlow's
|
|
166
|
+
* `values` derives the cursor fields from them).
|
|
167
|
+
*/
|
|
168
|
+
export declare function cursorRibbon<TParams = unknown, TPrepared = undefined>(opts: {
|
|
169
|
+
tracker?: PointerVelocityTrackerOptions;
|
|
170
|
+
/** When emission is live this frame — a live frame marks the idle gate active. */
|
|
171
|
+
activeWhen: (ptr: PointerFrame, f: FluidFrame) => boolean;
|
|
172
|
+
/** Idle window: seconds after the last activity before the sim may freeze. */
|
|
173
|
+
fadeSeconds: (f: FluidFrame) => number;
|
|
174
|
+
/** Extra pre-gate per-frame bookkeeping (InkFlow's colour-cycle time drift). */
|
|
175
|
+
onFrame?: (f: FluidFrame, ptr: PointerFrame) => void;
|
|
176
|
+
/** The stamp pass — on the fluid bind group, or a part-owned pipeline via `setup`. */
|
|
177
|
+
pass: {
|
|
178
|
+
kernel: FluidKernel;
|
|
179
|
+
} | {
|
|
180
|
+
setup: (ctx: FluidSetupCtx) => KitComputePipeline;
|
|
181
|
+
};
|
|
182
|
+
/** This frame's ribbon geometry + payload writer. */
|
|
183
|
+
ribbon: (f: FluidFrame, ptr: PointerFrame, values: TParams) => CursorRibbonSpec<TPrepared>;
|
|
184
|
+
}): FluidEmitter<TParams> & {
|
|
185
|
+
ptr(): PointerFrame | null;
|
|
186
|
+
active(): boolean;
|
|
187
|
+
};
|
|
188
|
+
/**
|
|
189
|
+
* Deterministic field seeding + silent warm-up (Fog): when the seed key changes (or on first
|
|
190
|
+
* frame), dispatch the init kernel and run the whole solve `warm.steps` times with time-advancing
|
|
191
|
+
* param thunks, then hand the warm clock to the frame clock so ambient forces continue seamlessly.
|
|
192
|
+
*/
|
|
193
|
+
export declare function seededFieldInit<TParams>(opts: {
|
|
194
|
+
kernel: FluidKernel;
|
|
195
|
+
seed: (f: FluidFrame) => number;
|
|
196
|
+
warm: {
|
|
197
|
+
steps: number;
|
|
198
|
+
jacobiIters: number;
|
|
199
|
+
/** Simulated seconds per warm step. */
|
|
200
|
+
dt: number;
|
|
201
|
+
/** The warm clock's starting value (Fog randomizes it so two instances differ). */
|
|
202
|
+
startTime: () => number;
|
|
203
|
+
/** The full params object for a warm step at simulated time `t` (t = 0 is the init write). */
|
|
204
|
+
values: (t: number, f: FluidFrame) => TParams;
|
|
205
|
+
};
|
|
206
|
+
}): FluidInitPart<TParams>;
|
|
207
|
+
//# sourceMappingURL=fluids.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fluids.d.ts","sourceRoot":"","sources":["../../../src/std/sim/fluids.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { GpuComputeNode, GpuFragmentParams } from '../../gpu/contract';
|
|
2
|
+
import { ComputeStep } from '../../gpu/compute';
|
|
3
|
+
|
|
4
|
+
/** The TypeGPU root, via the contract (direct `typegpu` imports are restricted to src/gpu/). */
|
|
5
|
+
export type GridRoot = NonNullable<GpuFragmentParams['gpu']>['root'];
|
|
6
|
+
/** The renderer's per-frame params, as the grid consumers read them. */
|
|
7
|
+
export interface GridFrameParams {
|
|
8
|
+
pointer?: {
|
|
9
|
+
x: number;
|
|
10
|
+
y: number;
|
|
11
|
+
};
|
|
12
|
+
deltaTime?: number;
|
|
13
|
+
dimensions?: {
|
|
14
|
+
width: number;
|
|
15
|
+
height: number;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
/** One frame of the simulation, handed to every stage. */
|
|
19
|
+
export interface GridFrame {
|
|
20
|
+
/** `fp.deltaTime ?? 0`, clamped to `clampDt`. */
|
|
21
|
+
dt: number;
|
|
22
|
+
/** `Date.now()` this frame — the settle gates' clock. */
|
|
23
|
+
now: number;
|
|
24
|
+
num(key: string, fallback: number): number;
|
|
25
|
+
getCpuValue(key: string): unknown;
|
|
26
|
+
frameParams: GridFrameParams;
|
|
27
|
+
}
|
|
28
|
+
/** One stage of the frame program. Phases run in order: ready → tick → skip → emit. */
|
|
29
|
+
export interface GridStage {
|
|
30
|
+
/** Frame gate: false → the whole frame returns null (a late-bound input is still pending). */
|
|
31
|
+
ready?(): boolean;
|
|
32
|
+
/** Pre-gate bookkeeping (pointer smoothing, activity flags). */
|
|
33
|
+
tick?(f: GridFrame): void;
|
|
34
|
+
/** Settle gate: true → skip the frame entirely (the last published texture persists). */
|
|
35
|
+
skip?(f: GridFrame): boolean;
|
|
36
|
+
/** Push this stage's dispatches / uniform writes. */
|
|
37
|
+
emit?(f: GridFrame, nodes: ComputeStep[]): void;
|
|
38
|
+
}
|
|
39
|
+
export interface GridSimConfig {
|
|
40
|
+
/** Compute outputs the fragment samples (state/display textures, child RTT handles). */
|
|
41
|
+
outputs: Record<string, unknown>;
|
|
42
|
+
/** Late input binding (child RTT → luma prepass, child-modulated kernels). Spread only if set. */
|
|
43
|
+
bindInputs?: (resolve: (key: string) => {
|
|
44
|
+
texture: unknown;
|
|
45
|
+
} | undefined) => void;
|
|
46
|
+
/** Frame-delta clamp (seconds). */
|
|
47
|
+
clampDt: number;
|
|
48
|
+
/** Frames with `dt <= 0`: run anyway (default) or skip (Liquify's guard). */
|
|
49
|
+
zeroDt?: 'run' | 'skip';
|
|
50
|
+
stages: GridStage[];
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* The grid-simulation noun. Spread it into a definition: `...gridSim((params, root) => ({...}))`.
|
|
54
|
+
* The build callback runs at compute-node creation (per instance, after the no-device bail); it may
|
|
55
|
+
* return null to opt out entirely (a required child is missing).
|
|
56
|
+
*/
|
|
57
|
+
export declare function gridSim(build: (params: GpuFragmentParams, root: GridRoot) => GridSimConfig | null): {
|
|
58
|
+
compute: GpuComputeNode;
|
|
59
|
+
};
|
|
60
|
+
/** A parity-alternating sort chain's handle: which ping-pong side is current after this frame. */
|
|
61
|
+
export interface SortPassStage extends GridStage {
|
|
62
|
+
side(): 'A' | 'B';
|
|
63
|
+
}
|
|
64
|
+
export declare const op: {
|
|
65
|
+
/** Named pre-gate host step (pointer smoothing, activity flags). Runs in the tick phase. */
|
|
66
|
+
readonly host: (name: string, run: (f: GridFrame) => void) => GridStage;
|
|
67
|
+
/** Named emit-phase host step (per-frame uniform writes / prop derivation). */
|
|
68
|
+
readonly values: (name: string, run: (f: GridFrame) => void) => GridStage;
|
|
69
|
+
/**
|
|
70
|
+
* Settle gate: once nothing has driven the sim for `settleMs`, skip frames entirely — the last
|
|
71
|
+
* published texture persists on screen, so a settled sim costs zero GPU time.
|
|
72
|
+
*/
|
|
73
|
+
readonly settle: (opts: {
|
|
74
|
+
activeWhen: (f: GridFrame) => boolean;
|
|
75
|
+
settleMs: (f: GridFrame) => number;
|
|
76
|
+
}) => GridStage;
|
|
77
|
+
/** Frame gate on a late-bound input (child RTT arriving via `bindInputs`). */
|
|
78
|
+
readonly readyWhen: (fn: () => boolean) => GridStage;
|
|
79
|
+
/** One dispatch of a fixed pass. */
|
|
80
|
+
readonly pass: (step: ComputeStep) => GridStage;
|
|
81
|
+
/** A per-frame cache prepass, resolved per frame (PixelSort's late-rebound child-luma snapshot). */
|
|
82
|
+
readonly cache: (step: (f: GridFrame) => ComputeStep) => GridStage;
|
|
83
|
+
/** The publish tail: write the sim state into the texture the fragment samples. Resolved per
|
|
84
|
+
* frame so it can follow a ping-pong side (`() => output.with(side() === 'A' ? bgA : bgB)`). */
|
|
85
|
+
readonly publish: (step: (f: GridFrame) => ComputeStep) => GridStage;
|
|
86
|
+
/** One-shot (re)initialisation ahead of the step loop, latched on `staleWhen`. */
|
|
87
|
+
readonly seedOnce: (opts: {
|
|
88
|
+
pass: ComputeStep;
|
|
89
|
+
staleWhen: (f: GridFrame) => boolean;
|
|
90
|
+
onSeed?: () => void;
|
|
91
|
+
}) => GridStage;
|
|
92
|
+
/** N ordered iterations of a step (the caller's `step` handles its own ping-pong swap). */
|
|
93
|
+
readonly iterate: (opts: {
|
|
94
|
+
count: (f: GridFrame) => number;
|
|
95
|
+
step: (i: number, nodes: ComputeStep[], f: GridFrame) => void;
|
|
96
|
+
}) => GridStage;
|
|
97
|
+
/**
|
|
98
|
+
* Odd-even transposition sort chain: `passes` compare-swap dispatches, alternating parity and
|
|
99
|
+
* ping-pong side per pass. The parity tick PERSISTS across frames (harness policy — a new frame
|
|
100
|
+
* continues the transposition sequence where the last one stopped, which is what makes the sort
|
|
101
|
+
* converge "bit by bit"). `side()` reports the current buffer for the publish pass.
|
|
102
|
+
*/
|
|
103
|
+
readonly sortPass: (opts: {
|
|
104
|
+
passes: (f: GridFrame) => number;
|
|
105
|
+
pass: (parity: 0 | 1, side: "A" | "B") => ComputeStep;
|
|
106
|
+
}) => SortPassStage;
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* Viewport dimensions with the standard resize-tracked fallback: `tracked()` is the last
|
|
110
|
+
* `onResize` value (what a texture-space prepass wants), `safe(fp)` prefers this frame's reported
|
|
111
|
+
* dimensions and floors both at 1 (what an aspect computation wants).
|
|
112
|
+
*/
|
|
113
|
+
export declare function trackedViewport(params: GpuFragmentParams): {
|
|
114
|
+
tracked(): {
|
|
115
|
+
width: number;
|
|
116
|
+
height: number;
|
|
117
|
+
};
|
|
118
|
+
safe(fp: GridFrameParams): {
|
|
119
|
+
width: number;
|
|
120
|
+
height: number;
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
/** One frame of a CPU grid program. */
|
|
124
|
+
export interface HostFrame {
|
|
125
|
+
/** Wall-clock delta since the last frame, clamped (these sims ignore the renderer's deltaTime). */
|
|
126
|
+
dt: number;
|
|
127
|
+
now: number;
|
|
128
|
+
pointer: {
|
|
129
|
+
x: number;
|
|
130
|
+
y: number;
|
|
131
|
+
};
|
|
132
|
+
frameParams: unknown;
|
|
133
|
+
}
|
|
134
|
+
/** A named CPU step. Return `'skip'` to end the frame (idle gate). */
|
|
135
|
+
export interface HostStep {
|
|
136
|
+
name: string;
|
|
137
|
+
run(f: HostFrame): void | 'skip';
|
|
138
|
+
}
|
|
139
|
+
export declare const hostStep: (name: string, run: (f: HostFrame) => void | "skip") => HostStep;
|
|
140
|
+
/**
|
|
141
|
+
* An ordered CPU frame program for `onBeforeRender`: wall-clock dt (clamped), then each named step
|
|
142
|
+
* in order until one skips.
|
|
143
|
+
*/
|
|
144
|
+
export declare function hostGridProgram(opts: {
|
|
145
|
+
clampDt: number;
|
|
146
|
+
steps: HostStep[];
|
|
147
|
+
}): (fp: unknown) => void;
|
|
148
|
+
/**
|
|
149
|
+
* The CPU field's GPU face: an rgba16float data texture (filterable — a filtering sampler rejects
|
|
150
|
+
* r32float, so cells are half-encoded before upload) registered as a media texture the fragment
|
|
151
|
+
* samples. `texData` is the upload staging buffer the publish step packs into.
|
|
152
|
+
*/
|
|
153
|
+
export declare function hostFieldTexture(params: GpuFragmentParams, opts: {
|
|
154
|
+
size: number;
|
|
155
|
+
label: string;
|
|
156
|
+
}): {
|
|
157
|
+
texData: Uint16Array;
|
|
158
|
+
texture: ReturnType<GpuFragmentParams['registerMediaTexture']>;
|
|
159
|
+
upload(): void;
|
|
160
|
+
};
|
|
161
|
+
//# sourceMappingURL=grids.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grids.d.ts","sourceRoot":"","sources":["../../../src/std/sim/grids.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { d } from '../../gpu/kit/index';
|
|
2
|
+
import { ShapeField3 } from './agentForces';
|
|
3
|
+
|
|
4
|
+
/** The analytic 2D SDF menu's call shape (`sdf.buildAnalyticSdfFn`). */
|
|
5
|
+
type AnalyticSdf2d = (uv: d.v2f, radius: number, sides: number, rounding: number, innerRatio: number, rotation: number, height: number, offset: number, aperture: number) => {
|
|
6
|
+
readonly x: number;
|
|
7
|
+
};
|
|
8
|
+
/** Params view for the extruded flat-shape fields: the CPU-resolved analytic sub-prop bundle
|
|
9
|
+
* (the driveAnalyticSubProps convention) plus the extrusion half-depth. */
|
|
10
|
+
interface ExtrudedAnalyticParamsView {
|
|
11
|
+
readonly saRadius: number;
|
|
12
|
+
readonly saSides: number;
|
|
13
|
+
readonly saRounding: number;
|
|
14
|
+
readonly saInnerRatio: number;
|
|
15
|
+
readonly saRotation: number;
|
|
16
|
+
readonly saHeight: number;
|
|
17
|
+
readonly saOffset: number;
|
|
18
|
+
readonly saAperture: number;
|
|
19
|
+
readonly halfDepth: number;
|
|
20
|
+
}
|
|
21
|
+
/** The per-axis sin/cos rotation bundle the sdf3d MarchParams carry. */
|
|
22
|
+
interface RotSinCosView {
|
|
23
|
+
readonly cx: number;
|
|
24
|
+
readonly sx: number;
|
|
25
|
+
readonly cy: number;
|
|
26
|
+
readonly sy: number;
|
|
27
|
+
readonly cz: number;
|
|
28
|
+
readonly sz: number;
|
|
29
|
+
}
|
|
30
|
+
/** A layout whose MarchParams uniform carries the shape rotation (the sdf3d setups). */
|
|
31
|
+
interface RotatedFieldLayout {
|
|
32
|
+
readonly $: {
|
|
33
|
+
readonly params: {
|
|
34
|
+
readonly rot: RotSinCosView;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Flat analytic shape extruded in z: the baked 2D SDF evaluated in shape-local uv (y up →
|
|
40
|
+
* v down), sub-props read live from `params.sa*`, rounded-extruded over `params.halfDepth`.
|
|
41
|
+
*/
|
|
42
|
+
declare function analyticExtruded(layout: {
|
|
43
|
+
readonly $: {
|
|
44
|
+
readonly params: ExtrudedAnalyticParamsView;
|
|
45
|
+
};
|
|
46
|
+
}, sdf2d: AnalyticSdf2d): ShapeField3;
|
|
47
|
+
/**
|
|
48
|
+
* Flat SVG outline extruded in z (nearest texel read — plenty for containment forces).
|
|
49
|
+
* Beyond the SDF texture's ±0.5 footprint the clamped field is flat (or, under a feature
|
|
50
|
+
* touching the border, even reads INSIDE) — which strands strays and draws plumb-line
|
|
51
|
+
* columns — so the field is extended with the exact distance to the footprint box, keeping
|
|
52
|
+
* magnitude + direction valid everywhere the swarm can roam.
|
|
53
|
+
*/
|
|
54
|
+
declare function svgExtruded(layout: {
|
|
55
|
+
readonly $: {
|
|
56
|
+
readonly params: {
|
|
57
|
+
readonly halfDepth: number;
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
}, svgLayout: {
|
|
61
|
+
readonly $: {
|
|
62
|
+
readonly sdfSource: d.Infer<d.WgslTexture2d<d.F32>>;
|
|
63
|
+
};
|
|
64
|
+
}, cfg: {
|
|
65
|
+
size: number;
|
|
66
|
+
}): ShapeField3;
|
|
67
|
+
/**
|
|
68
|
+
* True analytic 3D volume: the setup's baked SDF sampled at the rotated point — rotation
|
|
69
|
+
* (and any CPU-animated sub-props) arrive through the setup's MarchParams uniform, so the
|
|
70
|
+
* field moves under the swarm exactly like the marched render would.
|
|
71
|
+
*/
|
|
72
|
+
declare function analytic3d(layout: RotatedFieldLayout, baked: ShapeField3): ShapeField3;
|
|
73
|
+
/**
|
|
74
|
+
* SVG lifted into 3D (the bevel-extruding SVG-3D setup's SDF), rotated by MarchParams and —
|
|
75
|
+
* like the flat SVG field — extended beyond the SDF texture's footprint with the exact
|
|
76
|
+
* distance to the footprint box (the clamped field is flat out there: zero gradient, and a
|
|
77
|
+
* border-touching feature can even read inside).
|
|
78
|
+
*/
|
|
79
|
+
declare function svgLifted3d(layout: RotatedFieldLayout, baked: ShapeField3): ShapeField3;
|
|
80
|
+
export declare const shapeField: {
|
|
81
|
+
readonly analyticExtruded: typeof analyticExtruded;
|
|
82
|
+
readonly svgExtruded: typeof svgExtruded;
|
|
83
|
+
readonly analytic3d: typeof analytic3d;
|
|
84
|
+
readonly svgLifted3d: typeof svgLifted3d;
|
|
85
|
+
};
|
|
86
|
+
export {};
|
|
87
|
+
//# sourceMappingURL=shapeFields.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shapeFields.d.ts","sourceRoot":"","sources":["../../../src/std/sim/shapeFields.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAO,CAAC,EAAa,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,eAAe,CAAA;AAU9C,wEAAwE;AACxE,KAAK,aAAa,GAAG,CACjB,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAC9E,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KACjE;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CAAC,CAAA;AAEzB;4EAC4E;AAC5E,UAAU,0BAA0B;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC7B;AAED,wEAAwE;AACxE,UAAU,aAAa;IACnB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACtB;AAED,wFAAwF;AACxF,UAAU,kBAAkB;IACxB,QAAQ,CAAC,CAAC,EAAE;QAAC,QAAQ,CAAC,MAAM,EAAE;YAAC,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAA;SAAC,CAAA;KAAC,CAAA;CAC/D;AAED;;;GAGG;AACH,iBAAS,gBAAgB,CACrB,MAAM,EAAE;IAAC,QAAQ,CAAC,CAAC,EAAE;QAAC,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAA;KAAC,CAAA;CAAC,EACnE,KAAK,EAAE,aAAa,GACrB,WAAW,CAQb;AAED;;;;;;GAMG;AACH,iBAAS,WAAW,CAChB,MAAM,EAAE;IAAC,QAAQ,CAAC,CAAC,EAAE;QAAC,QAAQ,CAAC,MAAM,EAAE;YAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;SAAC,CAAA;KAAC,CAAA;CAAC,EACrE,SAAS,EAAE;IAAC,QAAQ,CAAC,CAAC,EAAE;QAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;KAAC,CAAA;CAAC,EAC9E,GAAG,EAAE;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GACpB,WAAW,CAcb;AAED;;;;GAIG;AACH,iBAAS,UAAU,CAAC,MAAM,EAAE,kBAAkB,EAAE,KAAK,EAAE,WAAW,GAAG,WAAW,CAK/E;AAED;;;;;GAKG;AACH,iBAAS,WAAW,CAAC,MAAM,EAAE,kBAAkB,EAAE,KAAK,EAAE,WAAW,GAAG,WAAW,CAQhF;AAED,eAAO,MAAM,UAAU;;;;;CAKb,CAAA"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { PropRef } from './values';
|
|
2
|
+
import { PointerSignal, PointerSpeedSignal } from './signal';
|
|
3
|
+
|
|
4
|
+
/** Damped `avg − prev` wave propagation. Needs `history: 2` (reads t−1 AND t−2). */
|
|
5
|
+
export interface WaveOp {
|
|
6
|
+
readonly kind: 'op.wave';
|
|
7
|
+
readonly damping: PropRef;
|
|
8
|
+
}
|
|
9
|
+
/** Gaussian brush injection at a positioned signal, scaled by an amount signal. */
|
|
10
|
+
export interface SplatOp {
|
|
11
|
+
readonly kind: 'op.splat';
|
|
12
|
+
readonly at: PointerSignal;
|
|
13
|
+
readonly amount: PointerSpeedSignal;
|
|
14
|
+
readonly radius: PropRef;
|
|
15
|
+
}
|
|
16
|
+
/** Central-difference gradient of the field → an RG vector-field texture (a derive op). */
|
|
17
|
+
export interface GradientOp {
|
|
18
|
+
readonly kind: 'op.gradient';
|
|
19
|
+
}
|
|
20
|
+
export type GridStepOp = WaveOp | SplatOp;
|
|
21
|
+
export type GridDeriveOp = GradientOp;
|
|
22
|
+
export declare const op: {
|
|
23
|
+
readonly wave: (config: {
|
|
24
|
+
damping: PropRef;
|
|
25
|
+
}) => WaveOp;
|
|
26
|
+
readonly splat: (config: {
|
|
27
|
+
at: PointerSignal;
|
|
28
|
+
amount: PointerSpeedSignal;
|
|
29
|
+
radius: PropRef;
|
|
30
|
+
}) => SplatOp;
|
|
31
|
+
readonly gradient: () => GradientOp;
|
|
32
|
+
};
|
|
33
|
+
export interface GridSimConfig {
|
|
34
|
+
/** Square grid resolution (state texels per side). */
|
|
35
|
+
resolution: number;
|
|
36
|
+
/** History levels the step ops read (the wave equation needs 2: t−1 and t−2). */
|
|
37
|
+
history: number;
|
|
38
|
+
/** Ordered per-texel step ops, run once per frame. */
|
|
39
|
+
step: GridStepOp[];
|
|
40
|
+
/** Named derived outputs, consumable as fields by effects (`sim.output(name)`). */
|
|
41
|
+
derive: Record<string, GridDeriveOp>;
|
|
42
|
+
/** Rest semantics: when the engine may stop dispatching. */
|
|
43
|
+
rest?: {
|
|
44
|
+
settlesWhen: 'derived-from-damping';
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
/** A reference to one of a simulation's derived outputs (feeds effect slots). */
|
|
48
|
+
export interface SimOutputRef {
|
|
49
|
+
readonly kind: 'simOutput';
|
|
50
|
+
readonly sim: GridSim;
|
|
51
|
+
readonly output: string;
|
|
52
|
+
}
|
|
53
|
+
/** A declared grid simulation. Reference its outputs by identity: `sim.output('name')`. */
|
|
54
|
+
export declare class GridSim {
|
|
55
|
+
readonly config: GridSimConfig;
|
|
56
|
+
constructor(config: GridSimConfig);
|
|
57
|
+
output(name: string): SimOutputRef;
|
|
58
|
+
}
|
|
59
|
+
export declare const simulate: {
|
|
60
|
+
readonly grid: (config: GridSimConfig) => GridSim;
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=sim.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim.d.ts","sourceRoot":"","sources":["../../src/std/sim.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,UAAU,CAAA;AACrC,OAAO,KAAK,EAAC,aAAa,EAAE,kBAAkB,EAAC,MAAM,UAAU,CAAA;AAI/D,oFAAoF;AACpF,MAAM,WAAW,MAAM;IACnB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC5B;AAED,mFAAmF;AACnF,MAAM,WAAW,OAAO;IACpB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;IACnC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAC3B;AAED,2FAA2F;AAC3F,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;CAC/B;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,CAAA;AACzC,MAAM,MAAM,YAAY,GAAG,UAAU,CAAA;AAErC,eAAO,MAAM,EAAE;4BACE;QAAC,OAAO,EAAE,OAAO,CAAA;KAAC,KAAG,MAAM;6BAG1B;QAAC,EAAE,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE,kBAAkB,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAC,KAAG,OAAO;6BAG5E,UAAU;CAGhB,CAAA;AAIV,MAAM,WAAW,aAAa;IAC1B,sDAAsD;IACtD,UAAU,EAAE,MAAM,CAAA;IAClB,iFAAiF;IACjF,OAAO,EAAE,MAAM,CAAA;IACf,sDAAsD;IACtD,IAAI,EAAE,UAAU,EAAE,CAAA;IAClB,mFAAmF;IACnF,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACpC,4DAA4D;IAC5D,IAAI,CAAC,EAAE;QAAC,WAAW,EAAE,sBAAsB,CAAA;KAAC,CAAA;CAC/C;AAED,iFAAiF;AACjF,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAC1B;AAED,2FAA2F;AAC3F,qBAAa,OAAO;IACJ,QAAQ,CAAC,MAAM,EAAE,aAAa;gBAArB,MAAM,EAAE,aAAa;IAE1C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY;CAMrC;AAED,eAAO,MAAM,QAAQ;4BACJ,aAAa,KAAG,OAAO;CAG9B,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IdentityRule, RecompileRule } from './types';
|
|
2
|
+
|
|
3
|
+
/** Recompose only when the prop value crosses `value` (identity ↔ effect boundary). */
|
|
4
|
+
export declare function crosses(value: number): RecompileRule;
|
|
5
|
+
/** Recompose when a bespoke predicate flips — the recompile escape hatch. */
|
|
6
|
+
export declare function recompileWhen(predicate: (prev: any, next: any) => boolean): RecompileRule;
|
|
7
|
+
/** The effect is a provable no-op when `prop` (or its default when unset) is exactly 0. */
|
|
8
|
+
export declare function isZero(prop: string): IdentityRule;
|
|
9
|
+
/** The effect is a provable no-op when `prop` (or its default when unset) equals `value`. */
|
|
10
|
+
export declare function isValue(prop: string, value: unknown): IdentityRule;
|
|
11
|
+
/** The effect is a no-op only when EVERY rule holds (multi-prop identities). */
|
|
12
|
+
export declare function allOf(...rules: IdentityRule[]): IdentityRule;
|
|
13
|
+
/** Identity escape hatch: a bespoke predicate over the listed props' CPU values. */
|
|
14
|
+
export declare function identityWhenever(props: string[], when: (values: Record<string, unknown>) => boolean): IdentityRule;
|
|
15
|
+
//# sourceMappingURL=slots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slots.d.ts","sourceRoot":"","sources":["../../src/std/slots.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAC,YAAY,EAAE,aAAa,EAAC,MAAM,SAAS,CAAA;AAExD,uFAAuF;AACvF,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAEpD;AAED,6EAA6E;AAE7E,wBAAgB,aAAa,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,OAAO,GAAG,aAAa,CAEzF;AAED,2FAA2F;AAC3F,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAEjD;AAED,6FAA6F;AAC7F,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,YAAY,CAElE;AAED,gFAAgF;AAChF,wBAAgB,KAAK,CAAC,GAAG,KAAK,EAAE,YAAY,EAAE,GAAG,YAAY,CAE5D;AAED,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,GAAG,YAAY,CAElH"}
|