shaders 3.2.475 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (753) hide show
  1. package/LICENSE +21 -142
  2. package/README.md +192 -19
  3. package/dist/cli.js +2 -2
  4. package/dist/core/{AngularBlur-Cx1HVeYk.js → AngularBlur-BEBs-lRR.js} +2 -3
  5. package/dist/core/{Arc-D3FuqnDL.js → Arc-D-WnjM7T.js} +1 -3
  6. package/dist/core/{Ascii-Dhn0H0LB.js → Ascii-BGPIwMc3.js} +2 -5
  7. package/dist/core/{Aurora-BUfyvIyq.js → Aurora-DqJBPdMQ.js} +2 -11
  8. package/dist/core/{BarShift-v3D-9Lx4.js → BarShift-BcCOweUh.js} +2 -3
  9. package/dist/core/{BarnDoors-C5g6Sbze.js → BarnDoors-B9B-AmCV.js} +2 -3
  10. package/dist/core/{Beam-CV5g8m92.js → Beam-QG_9OS8I.js} +2 -3
  11. package/dist/core/{Bend-BFWQSHF7.js → Bend-Cy9VAowL.js} +1 -2
  12. package/dist/core/{Blob-CLvqov4O.js → Blob-C3txJeW0.js} +2 -10
  13. package/dist/core/{BlockDissolve-DER9y4PE.js → BlockDissolve-C1SFUys7.js} +2 -3
  14. package/dist/core/{BlockNoise-DpXWJkDL.js → BlockNoise-Cm3y8hce.js} +2 -4
  15. package/dist/core/{BlueNoise-CSQPDpkm.js → BlueNoise-BCLObOMm.js} +2 -4
  16. package/dist/core/{Blur-B-Tg7Sfr.js → Blur-Dg29SnXd.js} +1 -2
  17. package/dist/core/{Boids-BZo85-QR.js → Boids-rsGsPN5h.js} +2 -5
  18. package/dist/core/{BokehBlur-B1tY-T6q.js → BokehBlur-rFSFEnb0.js} +2 -3
  19. package/dist/core/{BrickPattern-DVhe3RgK.js → BrickPattern-DqN6JKEN.js} +2 -3
  20. package/dist/core/{BrightnessContrast-DBLjHzyE.js → BrightnessContrast-J9fCSBiC.js} +1 -3
  21. package/dist/core/{BrushedMetal-CpXTd3nZ.js → BrushedMetal-74wSZKjG.js} +3 -8
  22. package/dist/core/{Bulge-CHcE-9Oo.js → Bulge-BIk0oq8j.js} +1 -2
  23. package/dist/core/{CRTScreen-CyBtBJS4.js → CRTScreen-hEH-JNRd.js} +2 -3
  24. package/dist/core/{CarbonFiber-DK-0jUEs.js → CarbonFiber-CZdUDvRU.js} +3 -7
  25. package/dist/core/{Chalkboard-PmgH_OhS.js → Chalkboard-CClJHqvs.js} +2 -3
  26. package/dist/core/{ChannelBlur-J3MHHcGy.js → ChannelBlur-BEuEwQOC.js} +1 -2
  27. package/dist/core/{CheckerWipe-Dj2kjjDA.js → CheckerWipe-KuAWj2qg.js} +2 -3
  28. package/dist/core/{Checkerboard-eFWETR1S.js → Checkerboard-Rq9ze1W3.js} +2 -3
  29. package/dist/core/{Chevron-ColsT0Fy.js → Chevron-C1j6X2Ye.js} +2 -3
  30. package/dist/core/{ChromaFlow-DrdCgPGz.js → ChromaFlow-BgsCUYIl.js} +2 -5
  31. package/dist/core/{ChromaticAberration-C_It6mLf.js → ChromaticAberration-2_4tjQ0u.js} +2 -4
  32. package/dist/core/{Chrome-2WZpUHiT.js → Chrome-Be3z6C5i.js} +4 -10
  33. package/dist/core/{Circle-C-AKxSw4.js → Circle-e_qQI3tU.js} +1 -3
  34. package/dist/core/{ColorWheel-DfF0tqXE.js → ColorWheel-s5ep1H7d.js} +2 -3
  35. package/dist/core/{CompressionArtifacts-Zvwlutd7.js → CompressionArtifacts-OE9U9Qrq.js} +1 -3
  36. package/dist/core/{ConcentricSpin-tC8mylMA.js → ConcentricSpin-CLE_5yCJ.js} +1 -2
  37. package/dist/core/{ConicGradient-CNYvyjSs.js → ConicGradient-Cji2SgVO.js} +2 -4
  38. package/dist/core/{ContourLines-C4642NJd.js → ContourLines-wpPK00cF.js} +2 -3
  39. package/dist/core/{CornerPin-BF5gFRv9.js → CornerPin-gYU0Uf2m.js} +2 -3
  40. package/dist/core/{Crescent-wC0IwPjx.js → Crescent-viNc7Unp.js} +1 -2
  41. package/dist/core/{Cross-BO7JQKSq.js → Cross-DyQSsw_k.js} +1 -2
  42. package/dist/core/{Crystal-BK3ifbmV.js → Crystal-Vjj8azWg.js} +4 -9
  43. package/dist/core/{CurlNoise-UbI-Zda_.js → CurlNoise-C7PHjDht.js} +2 -4
  44. package/dist/core/{CursorRipples-rJlfKhyh.js → CursorRipples-BzPPNkA3.js} +3 -39
  45. package/dist/core/{CursorTrail-BuyQdFKJ.js → CursorTrail-cBj0AuQA.js} +2 -4
  46. package/dist/core/{DataMosh-C_ZI55Qq.js → DataMosh-5Yr9TyVx.js} +1 -3
  47. package/dist/core/{DiamondGradient-CPhUCUoq.js → DiamondGradient-DZM7HwF5.js} +2 -4
  48. package/dist/core/{DiamondWipe-y6uIpJM4.js → DiamondWipe-CqeT7lCt.js} +2 -3
  49. package/dist/core/{DiffuseBlur-BNxowfOL.js → DiffuseBlur-Y5hSDTZF.js} +2 -3
  50. package/dist/core/{DisplacementMap-BuM2b1nC.js → DisplacementMap-FobRx5Ie.js} +2 -3
  51. package/dist/core/{Dither-Bt1qdRag.js → Dither-50rqHpt9.js} +2 -3
  52. package/dist/core/{DotGrid-DJFnwMVS.js → DotGrid-B6AGLUbR.js} +3 -4
  53. package/dist/core/{DropShadow-C-IfgfyH.js → DropShadow-CEPpgatB.js} +2 -3
  54. package/dist/core/{Duotone-DML_9JhJ.js → Duotone-D76Kp7Pb.js} +2 -3
  55. package/dist/core/{Ellipse-BuNUnN8D.js → Ellipse-BGod1LeG.js} +1 -2
  56. package/dist/core/{Emboss-DvKk4zwp.js → Emboss-DMNFb_ww.js} +3 -6
  57. package/dist/core/{Engraving-DPFVnIjD.js → Engraving-Dj7bCATQ.js} +2 -3
  58. package/dist/core/{ErosionNoise-j_b7a5cl.js → ErosionNoise-4O68wJQZ.js} +2 -4
  59. package/dist/core/{Exposure-DALA5K55.js → Exposure-h-vapOpj.js} +1 -3
  60. package/dist/core/{FallingLines-CeMOKpxK.js → FallingLines-Dzop_89k.js} +2 -3
  61. package/dist/core/{FilmGrain-DsDYCjjs.js → FilmGrain-Bs8PCfdf.js} +1 -3
  62. package/dist/core/{FilmStock-DtDMkwF6.js → FilmStock-DBjVo6rL.js} +1 -4
  63. package/dist/core/{Flip-B9Av9MVn.js → Flip-CfrS4KfZ.js} +2 -3
  64. package/dist/core/{FloatingParticles-BcMOBX1m.js → FloatingParticles-D1R2tD2J.js} +2 -5
  65. package/dist/core/{FlowField-BunLIU80.js → FlowField-Slirm5AI.js} +2 -3
  66. package/dist/core/{Flower-CvqBYUCU.js → Flower-Ddlut7QZ.js} +1 -2
  67. package/dist/core/{FlowingGradient-DQ284uMb.js → FlowingGradient-CwIgTtbj.js} +2 -7
  68. package/dist/core/{FlutedGlass-BP7av96Y.js → FlutedGlass-CMMy2GJ5.js} +2 -4
  69. package/dist/core/{Fog-DyyljY9e.js → Fog-DjjUkcTZ.js} +2 -4
  70. package/dist/core/{Form3D-x-G-Lz4z.js → Form3D-DQDOHWpC.js} +2 -4
  71. package/dist/core/{FractalNoise-DTgEv-Hq.js → FractalNoise-BjI3IOIj.js} +2 -4
  72. package/dist/core/{Frost-BhMELsXw.js → Frost-CK12HnL1.js} +3 -8
  73. package/dist/core/{GaborNoise-B7kmxcRZ.js → GaborNoise-DKEIvvRJ.js} +3 -5
  74. package/dist/core/{Glass-BMCOKCUL.js → Glass-CzcOVD5Y.js} +3 -8
  75. package/dist/core/{GlassTiles-DgVooh8h.js → GlassTiles-gjhc563g.js} +1 -2
  76. package/dist/core/{Glitch-D0pvMdGd.js → Glitch-C_XAWltC.js} +1 -2
  77. package/dist/core/{Glow-CJ3i0al6.js → Glow-CrYCanBI.js} +1 -3
  78. package/dist/core/{Godrays-DOV1VQ9x.js → Godrays-BBTMOVLP.js} +2 -3
  79. package/dist/core/{Goo-sMwsU21Y.js → Goo-Brhjk8aS.js} +3 -8
  80. package/dist/core/{GradientMap-CCuimQDS.js → GradientMap-C5325QWw.js} +2 -4
  81. package/dist/core/{Grayscale-DR1xnpde.js → Grayscale-dPjs-wvf.js} +1 -2
  82. package/dist/core/{Grid-CCUodqje.js → Grid-UjEd3O76.js} +3 -4
  83. package/dist/core/{GridDistortion-DUnC2Z_Y.js → GridDistortion-vVgYya1U.js} +1 -5
  84. package/dist/core/{Group--MS8ZNKg.js → Group-KVdmAi5g.js} +1 -1
  85. package/dist/core/{HTMLInCanvas-D_Rc6bs1.js → HTMLInCanvas-CKr2u76R.js} +1 -2
  86. package/dist/core/{Halftone-CG1LNQkk.js → Halftone-pRV3TRUW.js} +2 -3
  87. package/dist/core/{Heart-qPxh2CWp.js → Heart-CX7MvvHZ.js} +1 -2
  88. package/dist/core/{Heatmap-BZDfR2vC.js → Heatmap-Dn6qyd2e.js} +3 -8
  89. package/dist/core/{HexGrid-DquaiXLF.js → HexGrid-BIfYhkfV.js} +3 -4
  90. package/dist/core/{Hologram-JAXPZFx0.js → Hologram-ou27baPQ.js} +3 -7
  91. package/dist/core/{Holographic-BBHJp93D.js → Holographic-CiHdBSMg.js} +3 -7
  92. package/dist/core/{HueShift-a1Hl7gFy.js → HueShift-CG7pcXfg.js} +1 -3
  93. package/dist/core/{ImageTexture-CLW3uX1b.js → ImageTexture-BiZuU58C.js} +1 -2
  94. package/dist/core/{InkFlow-Dfd_5vYf.js → InkFlow-D9_L7opB.js} +2 -5
  95. package/dist/core/{Invert-DBEURmcL.js → Invert-CHEaiQZO.js} +1 -2
  96. package/dist/core/{IrisWipe-DTlGb8v-.js → IrisWipe-x22vOQHm.js} +2 -3
  97. package/dist/core/Irradiance-7yq2K87_.js +389 -0
  98. package/dist/core/{IsometricCubes-BgmQXJXU.js → IsometricCubes-CkPGWr7M.js} +2 -3
  99. package/dist/core/{Kaleidoscope-0adfaQ5F.js → Kaleidoscope-CEC5m1Ww.js} +1 -2
  100. package/dist/core/{KeyFrames-BqANGVzW.js → KeyFrames-BMGEZsAZ.js} +2 -3
  101. package/dist/core/{LensDistortion-DVRKCZv8.js → LensDistortion-DKo8PiO5.js} +2 -3
  102. package/dist/core/{LensFlare-C41jY4jH.js → LensFlare-DMS-NUtK.js} +2 -3
  103. package/dist/core/LightEdge-DxmnCRls.js +315 -0
  104. package/dist/core/{LightLeak-GWrDFcI_.js → LightLeak-yoEsZtYg.js} +2 -4
  105. package/dist/core/{Line-DuV7dLdM.js → Line-D17XDUjO.js} +2 -3
  106. package/dist/core/{LinearBlur-Bft2CjmO.js → LinearBlur-CiyjPTUH.js} +2 -3
  107. package/dist/core/{LinearGradient-BzIE4ReW.js → LinearGradient-DfjKG70q.js} +2 -4
  108. package/dist/core/{LinearWipe-ArRG9OCp.js → LinearWipe-D9CtBg6S.js} +2 -3
  109. package/dist/core/{LiquidMetal-BgvfhyiQ.js → LiquidMetal-8EG6DwV6.js} +3 -8
  110. package/dist/core/{Liquify-B6EigQqP.js → Liquify-BySXF1OB.js} +1 -4
  111. package/dist/core/{MagneticFilings-Dj35dlIq.js → MagneticFilings-DNESH3Zs.js} +2 -5
  112. package/dist/core/{Marble-0kfSSCDj.js → Marble-C9WvdxrP.js} +2 -7
  113. package/dist/core/{MeshGradient-DY_rUhFv.js → MeshGradient-d9--RXOU.js} +2 -10
  114. package/dist/core/{Mirror-C1AIyKmb.js → Mirror-1V2FF2kD.js} +1 -2
  115. package/dist/core/{MultiPointGradient-B9z1J-d8.js → MultiPointGradient-cRA9ytgL.js} +2 -3
  116. package/dist/core/{Nebula-mZDwq-yl.js → Nebula-BRV-q74y.js} +4 -87
  117. package/dist/core/{Neon-CyQE26dS.js → Neon-4PemK9Rj.js} +3 -6
  118. package/dist/core/{NoiseDissolve-DQbBbxlP.js → NoiseDissolve-B7LgD46G.js} +2 -3
  119. package/dist/core/{ObjectTracker-CZd20LeZ.js → ObjectTracker-CdzDxhpy.js} +2 -3
  120. package/dist/core/{Obsidian-CjKezopV.js → Obsidian-2J1eX9kT.js} +3 -9
  121. package/dist/core/{PagePeel-ulnjqZzc.js → PagePeel-D-ziraOm.js} +1 -2
  122. package/dist/core/{Paper-c_1INiUk.js → Paper-BxzCLyzB.js} +1 -2
  123. package/dist/core/{Parallelogram-CnjzV4-0.js → Parallelogram-D4OflTwn.js} +1 -2
  124. package/dist/core/{ParticleField-yJztI6Ts.js → ParticleField-tWNicEDO.js} +1 -4
  125. package/dist/core/{ParticleFlow-DJYrNrb8.js → ParticleFlow-BiEYFyWR.js} +2 -6
  126. package/dist/core/{Particles-kT-8Aj5V.js → Particles-B7W4yWgo.js} +3 -7
  127. package/dist/core/{PerlinNoise-C_Pczp28.js → PerlinNoise-C-irUxp9.js} +3 -5
  128. package/dist/core/{Perspective-BrbfuYVk.js → Perspective-DlnAW-pe.js} +2 -3
  129. package/dist/core/{PixelSort-DoTMcLz4.js → PixelSort-BBOTYuOE.js} +1 -4
  130. package/dist/core/{PixelThrow-B8pxI6sI.js → PixelThrow-DCJb9Lxd.js} +2 -4
  131. package/dist/core/{Pixelate-DCU9U9Wb.js → Pixelate-CZdwB--K.js} +1 -2
  132. package/dist/core/{Plasma-Xe1I1Mmb.js → Plasma-CTOQJeqy.js} +2 -4
  133. package/dist/core/{Plastic-Ce9dVqPq.js → Plastic-DvyH9x-4.js} +3 -8
  134. package/dist/core/{PolarCoordinates-mtOsxdGf.js → PolarCoordinates-XhdDAOD0.js} +1 -2
  135. package/dist/core/{Polygon-Cv63keGU.js → Polygon-CLohB-Ly.js} +2 -4
  136. package/dist/core/{Posterize-QhGDzUuf.js → Posterize-BAQfnvmK.js} +1 -2
  137. package/dist/core/{Prism-DOXMcTrS.js → Prism-DJVCVAXX.js} +2 -6
  138. package/dist/core/{ProgressiveBlur-sSQrxqcr.js → ProgressiveBlur-Dirva1on.js} +2 -3
  139. package/dist/core/{RadialGradient-DWTDAQnq.js → RadialGradient-DuSKR8Ds.js} +2 -4
  140. package/dist/core/{RadialWipe-HfofRhY0.js → RadialWipe-n8tON7x2.js} +2 -3
  141. package/dist/core/{RandomBars-DspX9Utc.js → RandomBars-BYouiIgQ.js} +2 -3
  142. package/dist/core/{ReactionDiffusion-GsRfnqUY.js → ReactionDiffusion-CHDd3y2q.js} +2 -5
  143. package/dist/core/{RectangularCoordinates-DhPRrTPT.js → RectangularCoordinates-CYFfCawa.js} +1 -2
  144. package/dist/core/{ReflectivePlane-ej7XTkZ-.js → ReflectivePlane-DFTl5U9q.js} +2 -3
  145. package/dist/core/Repeater-CnbzXuAe.js +473 -0
  146. package/dist/core/{Ring-CC1LC05E.js → Ring-CGkHVSVd.js} +1 -2
  147. package/dist/core/{RippleWipe-CmmIx59a.js → RippleWipe-DLjPzY6u.js} +2 -3
  148. package/dist/core/{Ripples-ColS9_ej.js → Ripples-C2tITU62.js} +2 -3
  149. package/dist/core/{RoundedRect-BCL_4FLA.js → RoundedRect-sfNTUaCY.js} +1 -2
  150. package/dist/core/{Saturation-E77lSl0T.js → Saturation-BRkifYWj.js} +1 -3
  151. package/dist/core/{Scratches-ZHohp7K4.js → Scratches-D87O5C2K.js} +2 -4
  152. package/dist/core/{Sharpness-CgNxIvCA.js → Sharpness-BGv613Zw.js} +1 -3
  153. package/dist/core/Shatter-DuyCFU1f.js +328 -0
  154. package/dist/core/{SimplexNoise-CZf812YP.js → SimplexNoise-CQJvmqd-.js} +2 -4
  155. package/dist/core/{SineWave-CVHPlsdX.js → SineWave-BfOgSGMP.js} +2 -3
  156. package/dist/core/{SliceWipe-4Y_DLO0N.js → SliceWipe-CD_D99sl.js} +1 -2
  157. package/dist/core/{Smoke-CzjvGgBl.js → Smoke-BDQYKRP1.js} +2 -4
  158. package/dist/core/{SmokeFill-DkMjXE-D.js → SmokeFill-CPnzQtQv.js} +3 -8
  159. package/dist/core/{SmokeFlow-DQMNHV2s.js → SmokeFlow-BkPMjZq8.js} +2 -4
  160. package/dist/core/{Solarize-DmhOkKoO.js → Solarize-DSiS32QS.js} +1 -3
  161. package/dist/core/{SolidColor-CyYoqgG3.js → SolidColor-DEKpgy1c.js} +2 -3
  162. package/dist/core/Sparkle-BZur6gPW.js +178 -0
  163. package/dist/core/{Spherize-D2gNetxE.js → Spherize-D9Yg4n6O.js} +2 -3
  164. package/dist/core/{Spiral-BCO6OJXU.js → Spiral-BCacfEpT.js} +2 -3
  165. package/dist/core/{Star-9JERbdHT.js → Star-Dnw1ihk7.js} +1 -2
  166. package/dist/core/{Stone-92McvPwz.js → Stone-Cje-_vAg.js} +1 -3
  167. package/dist/core/{Strands-B6NfRExJ.js → Strands-CFRxS1G_.js} +2 -4
  168. package/dist/core/{Stretch-DbUOkCav.js → Stretch-DXVhfIqO.js} +1 -2
  169. package/dist/core/{Stripes-BG2zbwGV.js → Stripes-CCADWwyq.js} +2 -3
  170. package/dist/core/{StudioBackground-tpZpD080.js → StudioBackground-BlzYNAsu.js} +2 -6
  171. package/dist/core/{SunBurst-BMH4MKRL.js → SunBurst-CmWbI18r.js} +2 -3
  172. package/dist/core/{Surface3D-DUZMTBel.js → Surface3D-Dmh98-0V.js} +2 -6
  173. package/dist/core/{Swirl-CzOPAKx8.js → Swirl-CzI1qSVc.js} +2 -4
  174. package/dist/core/{Teardrop-aOr2VYQI.js → Teardrop-D24uulL0.js} +1 -2
  175. package/dist/core/{Text-CV3Lr3m0.js → Text-CrZKvBw6.js} +2 -6
  176. package/dist/core/{ThinFilm-CYOodpsx.js → ThinFilm-D7R2dt1O.js} +3 -6
  177. package/dist/core/{TiltShift-Cv80ZHW3.js → TiltShift-AMMDZBvf.js} +2 -3
  178. package/dist/core/{TimeTrail-fvJO2a1q.js → TimeTrail-BCYDP2ep.js} +2 -6
  179. package/dist/core/{Tint-D4m85tFF.js → Tint-DHb5wBN5.js} +2 -3
  180. package/dist/core/{Trapezoid-B-PkXCCJ.js → Trapezoid-CL5Fxvq7.js} +1 -2
  181. package/dist/core/{TriangularGrid-hMfK10up.js → TriangularGrid-Bp-SJS-H.js} +2 -3
  182. package/dist/core/{Tritone-n1wNQ1dI.js → Tritone-C0nx7OdC.js} +2 -3
  183. package/dist/core/{Truchet-BhmcbIE9.js → Truchet-DCetyDaq.js} +2 -3
  184. package/dist/core/{Twirl-D8gALHXr.js → Twirl-D_mv9KEi.js} +1 -2
  185. package/dist/core/{VHS-CaqSB2Op.js → VHS-Cp9aDjti.js} +1 -2
  186. package/dist/core/{VenetianBlinds-B1-WjIeY.js → VenetianBlinds-DUyvaT5w.js} +2 -3
  187. package/dist/core/{Vesica-Gh1CMA7n.js → Vesica-BpzrTPTA.js} +1 -2
  188. package/dist/core/{Vibrance-ixBSdj4B.js → Vibrance-DW3J-pvW.js} +1 -3
  189. package/dist/core/{VideoTexture-DVQ1YsW2.js → VideoTexture-zoKsSrex.js} +1 -2
  190. package/dist/core/{Vignette-B9v8l0So.js → Vignette-KKbP3qdZ.js} +2 -5
  191. package/dist/core/{Voronoi-CIHogO9V.js → Voronoi-Bp2-U6lm.js} +2 -5
  192. package/dist/core/Voxels-B3e3LHH5.js +469 -0
  193. package/dist/core/{Water-Dh4UB4UF.js → Water-CoYwvqKx.js} +3 -8
  194. package/dist/core/{Watercolor-C70_K8Lv.js → Watercolor-DUNjSIN1.js} +2 -4
  195. package/dist/core/{WaveDistortion-BCKxUa-p.js → WaveDistortion-Dp8ws0z1.js} +1 -2
  196. package/dist/core/{Waveform-BKMFhH8R.js → Waveform-DDBLB6zu.js} +2 -9
  197. package/dist/core/{WaveletNoise-CFpncHiR.js → WaveletNoise-CpBkzfRT.js} +2 -4
  198. package/dist/core/{Weave-CYgbepeB.js → Weave-cWkvSEAy.js} +2 -3
  199. package/dist/core/{WebcamTexture-B0vkMk_l.js → WebcamTexture-D484SXSE.js} +1 -2
  200. package/dist/core/{Wool-CLkJUMng.js → Wool-C9L7O9fD.js} +1 -3
  201. package/dist/core/{WorleyNoise-BxznxOxV.js → WorleyNoise-B5j5lDQZ.js} +2 -3
  202. package/dist/core/{ZoomBlur-DtujxMsW.js → ZoomBlur-bPC1dBu2.js} +2 -3
  203. package/dist/core/customShaders.d.ts +71 -0
  204. package/dist/core/customShaders.d.ts.map +1 -0
  205. package/dist/core/docs-manifest.json +29177 -0
  206. package/dist/core/gpu/composer.d.ts +2 -0
  207. package/dist/core/gpu/composer.d.ts.map +1 -1
  208. package/dist/core/gpu/contract.d.ts +15 -0
  209. package/dist/core/gpu/contract.d.ts.map +1 -1
  210. package/dist/core/gpu/frame.d.ts +5 -2
  211. package/dist/core/gpu/frame.d.ts.map +1 -1
  212. package/dist/core/gpu/index.d.ts.map +1 -1
  213. package/dist/core/gpu/kit/waves.d.ts +6 -0
  214. package/dist/core/gpu/kit/waves.d.ts.map +1 -1
  215. package/dist/core/gpu/scaffolds/sdfShape.d.ts +1 -1
  216. package/dist/core/gpu/scaffolds/sdfShape.d.ts.map +1 -1
  217. package/dist/core/gpu/support.d.ts +12 -0
  218. package/dist/core/gpu/support.d.ts.map +1 -1
  219. package/dist/core/index.d.ts +3 -2
  220. package/dist/core/index.d.ts.map +1 -1
  221. package/dist/core/index.js +238 -255
  222. package/dist/core/llms.txt +1558 -0
  223. package/dist/core/{noiseColor-_P7nIu_L.js → noiseColor-D_bPhJ4m.js} +2 -2
  224. package/dist/core/presetRenderer.d.ts +4 -0
  225. package/dist/core/presetRenderer.d.ts.map +1 -1
  226. package/dist/core/registry.js +204 -248
  227. package/dist/core/shaderRegistry-BaozBFyh.js +445 -0
  228. package/dist/core/shaderRegistry.d.ts.map +1 -1
  229. package/dist/core/shaders/AngularBlur/index.d.ts +1 -1
  230. package/dist/core/shaders/AngularBlur/index.d.ts.map +1 -1
  231. package/dist/core/shaders/AngularBlur/index.js +4 -10
  232. package/dist/core/shaders/Arc/index.js +4 -6
  233. package/dist/core/shaders/Ascii/index.d.ts +1 -1
  234. package/dist/core/shaders/Ascii/index.d.ts.map +1 -1
  235. package/dist/core/shaders/Ascii/index.js +4 -11
  236. package/dist/core/shaders/Aurora/index.js +4 -21
  237. package/dist/core/shaders/BarShift/index.js +4 -8
  238. package/dist/core/shaders/BarnDoors/index.js +4 -7
  239. package/dist/core/shaders/Beam/index.js +4 -11
  240. package/dist/core/shaders/Bend/index.js +4 -8
  241. package/dist/core/shaders/Blob/index.js +4 -18
  242. package/dist/core/shaders/BlockDissolve/index.js +4 -7
  243. package/dist/core/shaders/BlockNoise/index.d.ts +1 -1
  244. package/dist/core/shaders/BlockNoise/index.d.ts.map +1 -1
  245. package/dist/core/shaders/BlockNoise/index.js +5 -14
  246. package/dist/core/shaders/BlueNoise/index.d.ts +1 -1
  247. package/dist/core/shaders/BlueNoise/index.d.ts.map +1 -1
  248. package/dist/core/shaders/BlueNoise/index.js +5 -14
  249. package/dist/core/shaders/Blur/index.d.ts +1 -1
  250. package/dist/core/shaders/Blur/index.d.ts.map +1 -1
  251. package/dist/core/shaders/Blur/index.js +4 -10
  252. package/dist/core/shaders/Boids/index.js +4 -9
  253. package/dist/core/shaders/BokehBlur/index.js +4 -10
  254. package/dist/core/shaders/BrickPattern/index.d.ts +1 -1
  255. package/dist/core/shaders/BrickPattern/index.d.ts.map +1 -1
  256. package/dist/core/shaders/BrickPattern/index.js +4 -13
  257. package/dist/core/shaders/BrightnessContrast/index.js +4 -7
  258. package/dist/core/shaders/BrushedMetal/index.js +4 -11
  259. package/dist/core/shaders/Bulge/index.js +4 -8
  260. package/dist/core/shaders/CRTScreen/index.d.ts +2 -2
  261. package/dist/core/shaders/CRTScreen/index.d.ts.map +1 -1
  262. package/dist/core/shaders/CRTScreen/index.js +4 -10
  263. package/dist/core/shaders/CarbonFiber/index.js +4 -11
  264. package/dist/core/shaders/Chalkboard/index.d.ts +1 -1
  265. package/dist/core/shaders/Chalkboard/index.d.ts.map +1 -1
  266. package/dist/core/shaders/Chalkboard/index.js +4 -9
  267. package/dist/core/shaders/ChannelBlur/index.d.ts +1 -1
  268. package/dist/core/shaders/ChannelBlur/index.d.ts.map +1 -1
  269. package/dist/core/shaders/ChannelBlur/index.js +4 -10
  270. package/dist/core/shaders/CheckerWipe/index.js +4 -7
  271. package/dist/core/shaders/Checkerboard/index.d.ts +1 -1
  272. package/dist/core/shaders/Checkerboard/index.d.ts.map +1 -1
  273. package/dist/core/shaders/Checkerboard/index.js +4 -13
  274. package/dist/core/shaders/Chevron/index.d.ts +1 -1
  275. package/dist/core/shaders/Chevron/index.d.ts.map +1 -1
  276. package/dist/core/shaders/Chevron/index.js +4 -13
  277. package/dist/core/shaders/ChromaFlow/index.js +4 -8
  278. package/dist/core/shaders/ChromaticAberration/index.js +4 -11
  279. package/dist/core/shaders/Chrome/index.js +4 -10
  280. package/dist/core/shaders/Circle/index.js +4 -6
  281. package/dist/core/shaders/ColorWheel/index.js +4 -11
  282. package/dist/core/shaders/CompressionArtifacts/index.js +4 -7
  283. package/dist/core/shaders/ConcentricSpin/index.js +4 -8
  284. package/dist/core/shaders/ConicGradient/index.js +4 -11
  285. package/dist/core/shaders/ContourLines/index.js +4 -6
  286. package/dist/core/shaders/CornerPin/index.js +4 -8
  287. package/dist/core/shaders/Crescent/index.js +4 -5
  288. package/dist/core/shaders/Cross/index.js +4 -5
  289. package/dist/core/shaders/Crystal/index.js +4 -11
  290. package/dist/core/shaders/CurlNoise/index.d.ts +1 -1
  291. package/dist/core/shaders/CurlNoise/index.d.ts.map +1 -1
  292. package/dist/core/shaders/CurlNoise/index.js +5 -14
  293. package/dist/core/shaders/CursorRipples/index.js +4 -7
  294. package/dist/core/shaders/CursorTrail/index.js +4 -7
  295. package/dist/core/shaders/DataMosh/index.js +4 -7
  296. package/dist/core/shaders/DiamondGradient/index.js +4 -11
  297. package/dist/core/shaders/DiamondWipe/index.js +4 -7
  298. package/dist/core/shaders/DiffuseBlur/index.d.ts +1 -1
  299. package/dist/core/shaders/DiffuseBlur/index.d.ts.map +1 -1
  300. package/dist/core/shaders/DiffuseBlur/index.js +4 -10
  301. package/dist/core/shaders/DisplacementMap/index.js +4 -8
  302. package/dist/core/shaders/Dither/index.d.ts +1 -1
  303. package/dist/core/shaders/Dither/index.d.ts.map +1 -1
  304. package/dist/core/shaders/Dither/index.js +4 -13
  305. package/dist/core/shaders/DotGrid/index.d.ts +2 -2
  306. package/dist/core/shaders/DotGrid/index.d.ts.map +1 -1
  307. package/dist/core/shaders/DotGrid/index.js +4 -13
  308. package/dist/core/shaders/DropShadow/index.d.ts +1 -1
  309. package/dist/core/shaders/DropShadow/index.d.ts.map +1 -1
  310. package/dist/core/shaders/DropShadow/index.js +4 -10
  311. package/dist/core/shaders/Duotone/index.js +4 -6
  312. package/dist/core/shaders/Ellipse/index.js +4 -5
  313. package/dist/core/shaders/Emboss/index.js +4 -9
  314. package/dist/core/shaders/Engraving/index.js +4 -9
  315. package/dist/core/shaders/ErosionNoise/index.d.ts +1 -1
  316. package/dist/core/shaders/ErosionNoise/index.d.ts.map +1 -1
  317. package/dist/core/shaders/ErosionNoise/index.js +5 -14
  318. package/dist/core/shaders/Exposure/index.js +4 -7
  319. package/dist/core/shaders/FallingLines/index.d.ts +1 -1
  320. package/dist/core/shaders/FallingLines/index.d.ts.map +1 -1
  321. package/dist/core/shaders/FallingLines/index.js +4 -13
  322. package/dist/core/shaders/FilmGrain/index.js +4 -7
  323. package/dist/core/shaders/FilmStock/index.js +4 -13
  324. package/dist/core/shaders/Flip/index.js +4 -8
  325. package/dist/core/shaders/FloatingParticles/index.d.ts +1 -1
  326. package/dist/core/shaders/FloatingParticles/index.d.ts.map +1 -1
  327. package/dist/core/shaders/FloatingParticles/index.js +4 -9
  328. package/dist/core/shaders/FlowField/index.js +4 -8
  329. package/dist/core/shaders/Flower/index.js +4 -5
  330. package/dist/core/shaders/FlowingGradient/index.js +4 -15
  331. package/dist/core/shaders/FlutedGlass/index.js +4 -11
  332. package/dist/core/shaders/Fog/index.js +4 -7
  333. package/dist/core/shaders/Form3D/index.js +4 -7
  334. package/dist/core/shaders/FractalNoise/index.d.ts +1 -1
  335. package/dist/core/shaders/FractalNoise/index.d.ts.map +1 -1
  336. package/dist/core/shaders/FractalNoise/index.js +4 -13
  337. package/dist/core/shaders/Frost/index.js +4 -11
  338. package/dist/core/shaders/GaborNoise/index.d.ts +2 -2
  339. package/dist/core/shaders/GaborNoise/index.d.ts.map +1 -1
  340. package/dist/core/shaders/GaborNoise/index.js +5 -14
  341. package/dist/core/shaders/Glass/index.js +4 -11
  342. package/dist/core/shaders/GlassTiles/index.d.ts +1 -1
  343. package/dist/core/shaders/GlassTiles/index.d.ts.map +1 -1
  344. package/dist/core/shaders/GlassTiles/index.js +4 -8
  345. package/dist/core/shaders/Glitch/index.d.ts +1 -1
  346. package/dist/core/shaders/Glitch/index.d.ts.map +1 -1
  347. package/dist/core/shaders/Glitch/index.js +4 -10
  348. package/dist/core/shaders/Glow/index.d.ts +1 -1
  349. package/dist/core/shaders/Glow/index.d.ts.map +1 -1
  350. package/dist/core/shaders/Glow/index.js +4 -11
  351. package/dist/core/shaders/Godrays/index.js +4 -12
  352. package/dist/core/shaders/Goo/index.js +4 -11
  353. package/dist/core/shaders/GradientMap/index.js +4 -7
  354. package/dist/core/shaders/Grayscale/index.js +4 -6
  355. package/dist/core/shaders/Grid/index.d.ts +2 -2
  356. package/dist/core/shaders/Grid/index.d.ts.map +1 -1
  357. package/dist/core/shaders/Grid/index.js +4 -13
  358. package/dist/core/shaders/GridDistortion/index.js +4 -11
  359. package/dist/core/shaders/Group/index.js +4 -6
  360. package/dist/core/shaders/HTMLInCanvas/index.js +4 -7
  361. package/dist/core/shaders/Halftone/index.d.ts +1 -1
  362. package/dist/core/shaders/Halftone/index.d.ts.map +1 -1
  363. package/dist/core/shaders/Halftone/index.js +4 -13
  364. package/dist/core/shaders/Heart/index.js +4 -5
  365. package/dist/core/shaders/Heatmap/index.js +4 -11
  366. package/dist/core/shaders/HexGrid/index.d.ts +2 -2
  367. package/dist/core/shaders/HexGrid/index.d.ts.map +1 -1
  368. package/dist/core/shaders/HexGrid/index.js +4 -13
  369. package/dist/core/shaders/Hologram/index.js +4 -10
  370. package/dist/core/shaders/Holographic/index.js +4 -10
  371. package/dist/core/shaders/HueShift/index.js +4 -7
  372. package/dist/core/shaders/ImageTexture/index.js +4 -6
  373. package/dist/core/shaders/InkFlow/index.js +4 -8
  374. package/dist/core/shaders/Invert/index.js +4 -6
  375. package/dist/core/shaders/IrisWipe/index.js +4 -7
  376. package/dist/core/shaders/Irradiance/index.js +4 -13
  377. package/dist/core/shaders/IsometricCubes/index.d.ts +1 -1
  378. package/dist/core/shaders/IsometricCubes/index.d.ts.map +1 -1
  379. package/dist/core/shaders/IsometricCubes/index.js +4 -13
  380. package/dist/core/shaders/Kaleidoscope/index.js +4 -8
  381. package/dist/core/shaders/KeyFrames/index.js +4 -10
  382. package/dist/core/shaders/LensDistortion/index.js +4 -6
  383. package/dist/core/shaders/LensFlare/index.d.ts +1 -1
  384. package/dist/core/shaders/LensFlare/index.d.ts.map +1 -1
  385. package/dist/core/shaders/LensFlare/index.js +4 -12
  386. package/dist/core/shaders/LightEdge/index.js +4 -10
  387. package/dist/core/shaders/LightLeak/index.js +4 -12
  388. package/dist/core/shaders/Line/index.js +4 -10
  389. package/dist/core/shaders/LinearBlur/index.d.ts +1 -1
  390. package/dist/core/shaders/LinearBlur/index.d.ts.map +1 -1
  391. package/dist/core/shaders/LinearBlur/index.js +4 -10
  392. package/dist/core/shaders/LinearGradient/index.js +4 -11
  393. package/dist/core/shaders/LinearWipe/index.js +4 -7
  394. package/dist/core/shaders/LiquidMetal/index.js +4 -11
  395. package/dist/core/shaders/Liquify/index.js +4 -10
  396. package/dist/core/shaders/MagneticFilings/index.js +4 -9
  397. package/dist/core/shaders/Marble/index.d.ts +1 -1
  398. package/dist/core/shaders/Marble/index.d.ts.map +1 -1
  399. package/dist/core/shaders/Marble/index.js +4 -15
  400. package/dist/core/shaders/MeshGradient/index.js +4 -17
  401. package/dist/core/shaders/Mirror/index.js +4 -8
  402. package/dist/core/shaders/MultiPointGradient/index.js +4 -11
  403. package/dist/core/shaders/Nebula/index.js +4 -13
  404. package/dist/core/shaders/Neon/index.js +4 -9
  405. package/dist/core/shaders/NoiseDissolve/index.js +4 -7
  406. package/dist/core/shaders/ObjectTracker/index.js +4 -10
  407. package/dist/core/shaders/Obsidian/index.js +4 -15
  408. package/dist/core/shaders/PagePeel/index.js +4 -10
  409. package/dist/core/shaders/Paper/index.d.ts +1 -1
  410. package/dist/core/shaders/Paper/index.d.ts.map +1 -1
  411. package/dist/core/shaders/Paper/index.js +4 -8
  412. package/dist/core/shaders/Parallelogram/index.js +4 -5
  413. package/dist/core/shaders/ParticleField/index.js +4 -9
  414. package/dist/core/shaders/ParticleFlow/index.js +4 -10
  415. package/dist/core/shaders/Particles/index.js +4 -9
  416. package/dist/core/shaders/PerlinNoise/index.d.ts +2 -2
  417. package/dist/core/shaders/PerlinNoise/index.d.ts.map +1 -1
  418. package/dist/core/shaders/PerlinNoise/index.js +5 -14
  419. package/dist/core/shaders/Perspective/index.js +4 -8
  420. package/dist/core/shaders/PixelSort/index.js +4 -8
  421. package/dist/core/shaders/PixelThrow/index.js +4 -8
  422. package/dist/core/shaders/Pixelate/index.d.ts +1 -1
  423. package/dist/core/shaders/Pixelate/index.d.ts.map +1 -1
  424. package/dist/core/shaders/Pixelate/index.js +4 -10
  425. package/dist/core/shaders/Plasma/index.js +4 -11
  426. package/dist/core/shaders/Plastic/index.js +4 -11
  427. package/dist/core/shaders/PolarCoordinates/index.js +4 -8
  428. package/dist/core/shaders/Polygon/index.js +4 -6
  429. package/dist/core/shaders/Posterize/index.js +4 -6
  430. package/dist/core/shaders/Prism/index.js +4 -12
  431. package/dist/core/shaders/ProgressiveBlur/index.d.ts +1 -1
  432. package/dist/core/shaders/ProgressiveBlur/index.d.ts.map +1 -1
  433. package/dist/core/shaders/ProgressiveBlur/index.js +4 -10
  434. package/dist/core/shaders/RadialGradient/index.js +4 -11
  435. package/dist/core/shaders/RadialWipe/index.js +4 -7
  436. package/dist/core/shaders/RandomBars/index.js +4 -7
  437. package/dist/core/shaders/ReactionDiffusion/index.js +4 -8
  438. package/dist/core/shaders/RectangularCoordinates/index.js +4 -8
  439. package/dist/core/shaders/ReflectivePlane/index.js +4 -10
  440. package/dist/core/shaders/Repeater/index.js +4 -5
  441. package/dist/core/shaders/Ring/index.js +4 -5
  442. package/dist/core/shaders/RippleWipe/index.js +4 -7
  443. package/dist/core/shaders/Ripples/index.d.ts +1 -1
  444. package/dist/core/shaders/Ripples/index.d.ts.map +1 -1
  445. package/dist/core/shaders/Ripples/index.js +4 -13
  446. package/dist/core/shaders/RoundedRect/index.js +4 -5
  447. package/dist/core/shaders/Saturation/index.js +4 -7
  448. package/dist/core/shaders/Scratches/index.d.ts +1 -1
  449. package/dist/core/shaders/Scratches/index.d.ts.map +1 -1
  450. package/dist/core/shaders/Scratches/index.js +5 -14
  451. package/dist/core/shaders/Sharpness/index.d.ts +1 -1
  452. package/dist/core/shaders/Sharpness/index.d.ts.map +1 -1
  453. package/dist/core/shaders/Sharpness/index.js +4 -11
  454. package/dist/core/shaders/Shatter/index.js +4 -6
  455. package/dist/core/shaders/SimplexNoise/index.d.ts +1 -1
  456. package/dist/core/shaders/SimplexNoise/index.d.ts.map +1 -1
  457. package/dist/core/shaders/SimplexNoise/index.js +5 -14
  458. package/dist/core/shaders/SineWave/index.js +4 -10
  459. package/dist/core/shaders/SliceWipe/index.js +4 -8
  460. package/dist/core/shaders/Smoke/index.js +4 -7
  461. package/dist/core/shaders/SmokeFill/index.js +4 -10
  462. package/dist/core/shaders/SmokeFlow/index.js +4 -7
  463. package/dist/core/shaders/Solarize/index.js +4 -7
  464. package/dist/core/shaders/SolidColor/index.js +4 -11
  465. package/dist/core/shaders/Sparkle/index.d.ts +57 -0
  466. package/dist/core/shaders/Sparkle/index.d.ts.map +1 -0
  467. package/dist/core/shaders/Sparkle/index.js +5 -0
  468. package/dist/core/shaders/Spherize/index.d.ts +1 -1
  469. package/dist/core/shaders/Spherize/index.d.ts.map +1 -1
  470. package/dist/core/shaders/Spherize/index.js +4 -10
  471. package/dist/core/shaders/Spiral/index.js +4 -11
  472. package/dist/core/shaders/Star/index.js +4 -5
  473. package/dist/core/shaders/Stone/index.d.ts +1 -1
  474. package/dist/core/shaders/Stone/index.d.ts.map +1 -1
  475. package/dist/core/shaders/Stone/index.js +4 -14
  476. package/dist/core/shaders/Strands/index.d.ts +1 -1
  477. package/dist/core/shaders/Strands/index.d.ts.map +1 -1
  478. package/dist/core/shaders/Strands/index.js +4 -13
  479. package/dist/core/shaders/Stretch/index.js +4 -8
  480. package/dist/core/shaders/Stripes/index.d.ts +1 -1
  481. package/dist/core/shaders/Stripes/index.d.ts.map +1 -1
  482. package/dist/core/shaders/Stripes/index.js +4 -13
  483. package/dist/core/shaders/StudioBackground/index.js +4 -14
  484. package/dist/core/shaders/SunBurst/index.js +4 -12
  485. package/dist/core/shaders/Surface3D/index.js +4 -8
  486. package/dist/core/shaders/Swirl/index.js +4 -11
  487. package/dist/core/shaders/Teardrop/index.js +4 -5
  488. package/dist/core/shaders/Text/index.js +4 -12
  489. package/dist/core/shaders/ThinFilm/index.js +4 -9
  490. package/dist/core/shaders/TiltShift/index.d.ts +1 -1
  491. package/dist/core/shaders/TiltShift/index.d.ts.map +1 -1
  492. package/dist/core/shaders/TiltShift/index.js +4 -10
  493. package/dist/core/shaders/TimeTrail/index.js +4 -8
  494. package/dist/core/shaders/Tint/index.js +4 -6
  495. package/dist/core/shaders/Trapezoid/index.js +4 -5
  496. package/dist/core/shaders/TriangularGrid/index.d.ts +1 -1
  497. package/dist/core/shaders/TriangularGrid/index.d.ts.map +1 -1
  498. package/dist/core/shaders/TriangularGrid/index.js +4 -13
  499. package/dist/core/shaders/Tritone/index.js +4 -6
  500. package/dist/core/shaders/Truchet/index.d.ts +1 -1
  501. package/dist/core/shaders/Truchet/index.d.ts.map +1 -1
  502. package/dist/core/shaders/Truchet/index.js +4 -13
  503. package/dist/core/shaders/Twirl/index.js +4 -8
  504. package/dist/core/shaders/VHS/index.d.ts +1 -1
  505. package/dist/core/shaders/VHS/index.d.ts.map +1 -1
  506. package/dist/core/shaders/VHS/index.js +4 -10
  507. package/dist/core/shaders/VenetianBlinds/index.js +4 -7
  508. package/dist/core/shaders/Vesica/index.js +4 -5
  509. package/dist/core/shaders/Vibrance/index.js +4 -7
  510. package/dist/core/shaders/VideoTexture/index.js +4 -6
  511. package/dist/core/shaders/Vignette/index.js +4 -8
  512. package/dist/core/shaders/Voronoi/index.d.ts +1 -1
  513. package/dist/core/shaders/Voronoi/index.d.ts.map +1 -1
  514. package/dist/core/shaders/Voronoi/index.js +4 -13
  515. package/dist/core/shaders/Voxels/index.js +4 -14
  516. package/dist/core/shaders/Water/index.js +4 -11
  517. package/dist/core/shaders/Watercolor/index.d.ts +1 -1
  518. package/dist/core/shaders/Watercolor/index.d.ts.map +1 -1
  519. package/dist/core/shaders/Watercolor/index.js +4 -10
  520. package/dist/core/shaders/WaveDistortion/index.js +4 -8
  521. package/dist/core/shaders/Waveform/index.js +4 -16
  522. package/dist/core/shaders/WaveletNoise/index.d.ts +1 -1
  523. package/dist/core/shaders/WaveletNoise/index.d.ts.map +1 -1
  524. package/dist/core/shaders/WaveletNoise/index.js +5 -14
  525. package/dist/core/shaders/Weave/index.d.ts +1 -1
  526. package/dist/core/shaders/Weave/index.d.ts.map +1 -1
  527. package/dist/core/shaders/Weave/index.js +4 -13
  528. package/dist/core/shaders/WebcamTexture/index.js +4 -6
  529. package/dist/core/shaders/Wool/index.d.ts +1 -1
  530. package/dist/core/shaders/Wool/index.d.ts.map +1 -1
  531. package/dist/core/shaders/Wool/index.js +4 -14
  532. package/dist/core/shaders/WorleyNoise/index.d.ts +1 -1
  533. package/dist/core/shaders/WorleyNoise/index.d.ts.map +1 -1
  534. package/dist/core/shaders/WorleyNoise/index.js +4 -13
  535. package/dist/core/shaders/ZoomBlur/index.d.ts +1 -1
  536. package/dist/core/shaders/ZoomBlur/index.d.ts.map +1 -1
  537. package/dist/core/shaders/ZoomBlur/index.js +4 -10
  538. package/dist/core/std/effects/blurs.d.ts +656 -138
  539. package/dist/core/std/effects/blurs.d.ts.map +1 -1
  540. package/dist/core/std/effects/color.d.ts +209 -32
  541. package/dist/core/std/effects/color.d.ts.map +1 -1
  542. package/dist/core/std/effects/edgeGlow.d.ts +86 -17
  543. package/dist/core/std/effects/edgeGlow.d.ts.map +1 -1
  544. package/dist/core/std/effects/fracture.d.ts +72 -8
  545. package/dist/core/std/effects/fracture.d.ts.map +1 -1
  546. package/dist/core/std/effects/index.d.ts +15 -0
  547. package/dist/core/std/effects/index.d.ts.map +1 -0
  548. package/dist/core/std/effects/instances.d.ts +87 -8
  549. package/dist/core/std/effects/instances.d.ts.map +1 -1
  550. package/dist/core/std/effects/lens.d.ts +48 -12
  551. package/dist/core/std/effects/lens.d.ts.map +1 -1
  552. package/dist/core/std/effects/overlay.d.ts +63 -22
  553. package/dist/core/std/effects/overlay.d.ts.map +1 -1
  554. package/dist/core/std/effects/pointerFields.d.ts +45 -20
  555. package/dist/core/std/effects/pointerFields.d.ts.map +1 -1
  556. package/dist/core/std/effects/reveal.d.ts +118 -40
  557. package/dist/core/std/effects/reveal.d.ts.map +1 -1
  558. package/dist/core/std/effects/stylize.d.ts +139 -70
  559. package/dist/core/std/effects/stylize.d.ts.map +1 -1
  560. package/dist/core/std/filter.d.ts +72 -12
  561. package/dist/core/std/filter.d.ts.map +1 -1
  562. package/dist/core/std/frames.d.ts +91 -24
  563. package/dist/core/std/frames.d.ts.map +1 -1
  564. package/dist/core/std/index.d.ts +46 -8
  565. package/dist/core/std/index.d.ts.map +1 -1
  566. package/dist/core/std/index.js +4 -0
  567. package/dist/core/std/invoke.d.ts +107 -12
  568. package/dist/core/std/invoke.d.ts.map +1 -1
  569. package/dist/core/std/lists.d.ts +40 -10
  570. package/dist/core/std/lists.d.ts.map +1 -1
  571. package/dist/core/std/lower.d.ts +73 -1
  572. package/dist/core/std/lower.d.ts.map +1 -1
  573. package/dist/core/std/mask.d.ts +60 -17
  574. package/dist/core/std/mask.d.ts.map +1 -1
  575. package/dist/core/std/math.d.ts +484 -9
  576. package/dist/core/std/math.d.ts.map +1 -1
  577. package/dist/core/std/motion.d.ts +130 -10
  578. package/dist/core/std/motion.d.ts.map +1 -1
  579. package/dist/core/std/paint/compose.d.ts +57 -16
  580. package/dist/core/std/paint/compose.d.ts.map +1 -1
  581. package/dist/core/std/paint/fields.d.ts +376 -93
  582. package/dist/core/std/paint/fields.d.ts.map +1 -1
  583. package/dist/core/std/paint/figures.d.ts +32 -17
  584. package/dist/core/std/paint/figures.d.ts.map +1 -1
  585. package/dist/core/std/paint/gradients.d.ts +58 -25
  586. package/dist/core/std/paint/gradients.d.ts.map +1 -1
  587. package/dist/core/std/paint/light.d.ts +501 -77
  588. package/dist/core/std/paint/light.d.ts.map +1 -1
  589. package/dist/core/std/paint/materials.d.ts +678 -151
  590. package/dist/core/std/paint/materials.d.ts.map +1 -1
  591. package/dist/core/std/paint/media.d.ts +47 -32
  592. package/dist/core/std/paint/media.d.ts.map +1 -1
  593. package/dist/core/std/paint/noise.d.ts +436 -87
  594. package/dist/core/std/paint/noise.d.ts.map +1 -1
  595. package/dist/core/std/paint/patterns.d.ts +473 -91
  596. package/dist/core/std/paint/patterns.d.ts.map +1 -1
  597. package/dist/core/std/paint/radiance.d.ts +75 -29
  598. package/dist/core/std/paint/radiance.d.ts.map +1 -1
  599. package/dist/core/std/paint/volume.d.ts +68 -27
  600. package/dist/core/std/paint/volume.d.ts.map +1 -1
  601. package/dist/core/std/paint/voxels.d.ts +46 -26
  602. package/dist/core/std/paint/voxels.d.ts.map +1 -1
  603. package/dist/core/std/shape.d.ts +195 -1
  604. package/dist/core/std/shape.d.ts.map +1 -1
  605. package/dist/core/std/signal.d.ts +55 -15
  606. package/dist/core/std/signal.d.ts.map +1 -1
  607. package/dist/core/std/sim/agentForces.d.ts +441 -99
  608. package/dist/core/std/sim/agentForces.d.ts.map +1 -1
  609. package/dist/core/std/sim/agentFrame.d.ts +94 -20
  610. package/dist/core/std/sim/agentFrame.d.ts.map +1 -1
  611. package/dist/core/std/sim/agentRender.d.ts +187 -60
  612. package/dist/core/std/sim/agentRender.d.ts.map +1 -1
  613. package/dist/core/std/sim/agents.d.ts +99 -28
  614. package/dist/core/std/sim/agents.d.ts.map +1 -1
  615. package/dist/core/std/sim/feedback.d.ts +40 -19
  616. package/dist/core/std/sim/feedback.d.ts.map +1 -1
  617. package/dist/core/std/sim/fluids.d.ts +127 -63
  618. package/dist/core/std/sim/fluids.d.ts.map +1 -1
  619. package/dist/core/std/sim/grids.d.ts +200 -48
  620. package/dist/core/std/sim/grids.d.ts.map +1 -1
  621. package/dist/core/std/sim/index.d.ts +14 -0
  622. package/dist/core/std/sim/index.d.ts.map +1 -0
  623. package/dist/core/std/sim/shapeFields.d.ts +56 -0
  624. package/dist/core/std/sim/shapeFields.d.ts.map +1 -1
  625. package/dist/core/std/sim.d.ts +112 -10
  626. package/dist/core/std/sim.d.ts.map +1 -1
  627. package/dist/core/std/slots.d.ts +72 -6
  628. package/dist/core/std/slots.d.ts.map +1 -1
  629. package/dist/core/std/types.d.ts +97 -60
  630. package/dist/core/std/types.d.ts.map +1 -1
  631. package/dist/core/std/values.d.ts +33 -14
  632. package/dist/core/std/values.d.ts.map +1 -1
  633. package/dist/core/std/warps.d.ts +221 -76
  634. package/dist/core/std/warps.d.ts.map +1 -1
  635. package/dist/core/std/wgsl.d.ts +115 -0
  636. package/dist/core/std/wgsl.d.ts.map +1 -0
  637. package/dist/core/std-ClftfWpF.js +218889 -0
  638. package/dist/core/{support-GJphyuEe.js → support-D3W86vgR.js} +11 -1
  639. package/dist/core/telemetry/index.js +1 -1
  640. package/dist/core/utilities/transformations/index.js +1 -1
  641. package/dist/js/bundle.js +182 -180
  642. package/dist/js/createShader.d.ts.map +1 -1
  643. package/dist/js/createShader.js +4 -3
  644. package/dist/js/types.d.ts +5 -0
  645. package/dist/js/types.d.ts.map +1 -1
  646. package/dist/js/utils/generatePresetCode.d.ts.map +1 -1
  647. package/dist/js/utils/generatePresetCode.js +35 -22
  648. package/dist/react/CustomShader.js +178 -0
  649. package/dist/react/Preview.js +1 -0
  650. package/dist/react/Shader.js +1 -1
  651. package/dist/react/Sparkle.js +226 -0
  652. package/dist/react/bundle.js +178 -176
  653. package/dist/react/components/Sparkle.d.ts +41 -0
  654. package/dist/react/components/Sparkle.d.ts.map +1 -0
  655. package/dist/react/engine/CustomShader.d.ts +37 -0
  656. package/dist/react/engine/CustomShader.d.ts.map +1 -0
  657. package/dist/react/engine/Preview.d.ts.map +1 -1
  658. package/dist/react/index.d.ts +5 -0
  659. package/dist/react/index.d.ts.map +1 -1
  660. package/dist/react/index.js +4 -2
  661. package/dist/react/utils/generatePresetCode.d.ts.map +1 -1
  662. package/dist/react/utils/generatePresetCode.js +35 -22
  663. package/dist/registry.js +310 -58
  664. package/dist/solid/components/Sparkle.d.ts +38 -0
  665. package/dist/solid/components/Sparkle.d.ts.map +1 -0
  666. package/dist/solid/components/Sparkle.js +232 -0
  667. package/dist/solid/engine/CustomShader.d.ts +35 -0
  668. package/dist/solid/engine/CustomShader.d.ts.map +1 -0
  669. package/dist/solid/engine/CustomShader.js +160 -0
  670. package/dist/solid/engine/Preview.d.ts.map +1 -1
  671. package/dist/solid/engine/Preview.js +319 -317
  672. package/dist/solid/engine/Shader.js +1 -1
  673. package/dist/solid/index.d.ts +5 -0
  674. package/dist/solid/index.d.ts.map +1 -1
  675. package/dist/solid/index.js +95 -86
  676. package/dist/solid/utils/generatePresetCode.d.ts.map +1 -1
  677. package/dist/solid/utils/generatePresetCode.js +35 -22
  678. package/dist/svelte/components/Sparkle.svelte.d.ts +28 -0
  679. package/dist/svelte/engine/CustomShader.svelte.d.ts +40 -0
  680. package/dist/svelte/index.d.ts +4 -0
  681. package/dist/svelte/index.js +1237 -877
  682. package/dist/svelte/source/components/Sparkle.svelte +352 -0
  683. package/dist/svelte/source/engine/CustomShader.svelte +216 -0
  684. package/dist/svelte/source/engine/Preview.svelte +5 -3
  685. package/dist/svelte/source/index.js +4 -0
  686. package/dist/svelte/utils/generatePresetCode.js +35 -22
  687. package/dist/vue/CustomShader.js +3 -0
  688. package/dist/vue/CustomShader.vue_vue_type_script_setup_true_lang.js +173 -0
  689. package/dist/vue/Preview.vue_vue_type_script_setup_true_lang.js +2 -0
  690. package/dist/vue/Shader.vue_vue_type_script_setup_true_lang.js +1 -1
  691. package/dist/vue/Sparkle.js +3 -0
  692. package/dist/vue/Sparkle.vue_vue_type_script_setup_true_lang.js +233 -0
  693. package/dist/vue/components/Sparkle.vue.d.ts +63 -0
  694. package/dist/vue/components/Sparkle.vue.d.ts.map +1 -0
  695. package/dist/vue/index.d.ts +4 -0
  696. package/dist/vue/index.d.ts.map +1 -1
  697. package/dist/vue/index.js +4 -2
  698. package/dist/vue/utils/generatePresetCode.d.ts.map +1 -1
  699. package/dist/vue/utils/generatePresetCode.js +35 -22
  700. package/package.json +27 -2
  701. package/dist/core/Irradiance-DtC4tqNu.js +0 -4191
  702. package/dist/core/LightEdge-BV9bO8YB.js +0 -2339
  703. package/dist/core/Repeater-DU_EhoxD.js +0 -762
  704. package/dist/core/Shatter-DYKKCVD8.js +0 -1479
  705. package/dist/core/Voxels-LEG0c9YC.js +0 -8547
  706. package/dist/core/agents-CdLlm-5E.js +0 -5357
  707. package/dist/core/agents-DZaZ4n9_.js +0 -15709
  708. package/dist/core/blur-CrEChFnm.js +0 -8015
  709. package/dist/core/blurs-D5a6ad3o.js +0 -1751
  710. package/dist/core/canvasRaster-DDBkrdY8.js +0 -80
  711. package/dist/core/color-CY5teMWa.js +0 -3619
  712. package/dist/core/compose-DNU_Ut36.js +0 -46
  713. package/dist/core/device-m0ud8-Fn.js +0 -10
  714. package/dist/core/feedback-yfT0pT6A.js +0 -46
  715. package/dist/core/fields-CXwmEUsd.js +0 -475
  716. package/dist/core/figures-BRYcB-p2.js +0 -48
  717. package/dist/core/filter-BrhpSs3Z.js +0 -23
  718. package/dist/core/fluids-CBhAiGAx.js +0 -226
  719. package/dist/core/fonts-BUXTd9qb.js +0 -59
  720. package/dist/core/frames-Clw8-BpA.js +0 -78
  721. package/dist/core/glass-DIEus1UY.js +0 -2532
  722. package/dist/core/gradientPaints-Cx2bT20T.js +0 -6564
  723. package/dist/core/gradients-C15o7_xy.js +0 -159
  724. package/dist/core/grids-Cv99xcJg.js +0 -151
  725. package/dist/core/lens-ChO_HVpe.js +0 -352
  726. package/dist/core/light-Bba_Pie_.js +0 -271
  727. package/dist/core/lightfields-D120ZvMt.js +0 -2255
  728. package/dist/core/lower-DtoDQ7hV.js +0 -49452
  729. package/dist/core/mask-6rnSCir2.js +0 -28
  730. package/dist/core/materials-BjsiWqS0.js +0 -2944
  731. package/dist/core/math-7PlusTFx.js +0 -56
  732. package/dist/core/media-CgWmWvGq.js +0 -832
  733. package/dist/core/mediaLifecycle-BTPb5i1-.js +0 -320
  734. package/dist/core/motionBlur-DzaHMq9p.js +0 -6766
  735. package/dist/core/noise-G7a5U0ar.js +0 -546
  736. package/dist/core/noisePaints-B_axPpuv.js +0 -3619
  737. package/dist/core/noiseStylize-CUrW_HiC.js +0 -65
  738. package/dist/core/overlay-W4DAsSzP.js +0 -4712
  739. package/dist/core/patterns-RTt6Fek8.js +0 -9723
  740. package/dist/core/pointerFields-Ch_-cbCV.js +0 -2339
  741. package/dist/core/porters-CQwDd2t4.js +0 -30201
  742. package/dist/core/reveal-dbBiS7gE.js +0 -1688
  743. package/dist/core/sdf3d-BMqCSSPB.js +0 -21082
  744. package/dist/core/shaderRegistry-Bs0XOv9A.js +0 -443
  745. package/dist/core/shape-B2CoDi6l.js +0 -20
  746. package/dist/core/shapePaints-7HrXeLYX.js +0 -3354
  747. package/dist/core/signal-emJuvOI3.js +0 -34
  748. package/dist/core/slots-BqIef2iV.js +0 -32
  749. package/dist/core/stylize-CiN0ZaMu.js +0 -4541
  750. package/dist/core/tone-CsRho9qb.js +0 -763
  751. package/dist/core/warpMaps-Dbuleg2M.js +0 -10773
  752. package/dist/core/warps-gIr3RmZV.js +0 -276
  753. /package/dist/core/{transformations-CzFmhZww.js → transformations-P50Uo_Ju.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"agentRender.d.ts","sourceRoot":"","sources":["../../../src/std/sim/agentRender.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentRender.d.ts","sourceRoot":"","sources":["../../../src/std/sim/agentRender.ts"],"names":[],"mappings":"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"}
@@ -5,18 +5,43 @@ import { ComputeStep } from '../../gpu/compute';
5
5
  import { splat, resolve, OrientedWorldSplatConfig, PointWorldSplatConfig, VolumeSplatConfig, ReliefSplatConfig, RampResolveConfig, WorldSplatLayout, PointWorldSplatLayout, RampResolveLayout } from './agentRender';
6
6
 
7
7
  type AnyWgslStruct = d.AnyWgslStruct;
8
- /** The two render pipelines every agent shader ends its frame program with. */
8
+ /** The two draw steps every agent frame ends with: `splat` draws the agents, `resolve` turns the drawing into the output picture. */
9
9
  export interface RenderAgentsPipelines {
10
10
  splat: AgentPipelineSpec;
11
11
  resolve: AgentPipelineSpec;
12
12
  }
13
13
  /**
14
- * The render subsystem as one declared part: a splat variant + its matching resolve, returned
15
- * as ready pipeline specs for the frame program. Kernel factories live in `agentRender`.
14
+ * How the agents are drawn, as one declared part: a splat (each agent stamps its shape into a
15
+ * shared canvas) paired with the matching resolve (the canvas becomes the output picture).
16
+ *
17
+ * Four variants, one per kind of agent: `orientedWorld` for agents with a heading (arrows,
18
+ * streaks, comets) colored from rest to excited, `pointWorld` for round motes in one tint,
19
+ * `volume` for a 3D swarm seen in perspective, `relief` for particles that stand on an image.
20
+ * Put the returned `splat` and `resolve` into `bake`'s pipelines and end the program with them.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * const render = renderAgents.orientedWorld(simLayout, {shape: 'arrow', res: 1024, splatRCap: 16, heading: 'velocity', agitation: 'buffer', comet: true, ramp: {colorSpace: 2, trails: 'on'}, names: {splat: 'boidsSplat', resolve: 'boidsResolve'}})
25
+ * ```
26
+ * @tip The resolve also clears the canvas as it reads it, so no clear step is needed.
27
+ * @see agentSim, splat, resolve, pointSlot
16
28
  */
17
29
  export declare const renderAgents: {
18
- /** Heading-oriented world-space agents with the rest→excited color ramp (Boids,
19
- * MagneticFilings, ParticleFlow). */
30
+ /**
31
+ * Agents with a heading, drawn as a shape pointing the way they move (or the way they are
32
+ * turned), colored from a rest color to an excited color.
33
+ *
34
+ * `heading: 'velocity'` reads the direction from the agent's velocity, `'angle'` from a
35
+ * stored angle plus a `home` part. `agitation: 'buffer'` reads excitement from a per-agent
36
+ * value, `'speed'` from the agent's speed. `comet: true` stretches a glow along the heading.
37
+ * `res` is the canvas side in texels.
38
+ *
39
+ * @example
40
+ * ```ts
41
+ * renderAgents.orientedWorld(simLayout, {shape, res: 1024, splatRCap: 16, heading: 'velocity', agitation: 'buffer', comet: true, ramp: {colorSpace: 2, trails: 'on'}, names: {splat: 'boidsSplat', resolve: 'boidsResolve'}})
42
+ * ```
43
+ * @see pointWorld, volume
44
+ */
20
45
  readonly orientedWorld: (layout: WorldSplatLayout & RampResolveLayout, cfg: Omit<OrientedWorldSplatConfig, "name"> & {
21
46
  ramp: Omit<RampResolveConfig, "name" | "res" | "invGain"> & {
22
47
  invGain?: number;
@@ -25,17 +50,35 @@ export declare const renderAgents: {
25
50
  splat: string;
26
51
  resolve: string;
27
52
  };
28
- /** Chain the extra bind group onto the splat (a shape family's own resources). */
53
+ /** Give the splat the second resource group as well (a shape family's own resources). */
29
54
  extraOnSplat?: boolean;
30
55
  }) => RenderAgentsPipelines;
31
- /** Un-oriented point motes with a live softness and a single tint (FloatingParticles). */
56
+ /**
57
+ * Round motes with no heading, drawn in one tint with a live softness. Where each mote is
58
+ * placed, how bright it is and how big it is come from `pointSlot` parts.
59
+ *
60
+ * @example
61
+ * ```ts
62
+ * renderAgents.pointWorld(simLayout, {shape, res: 1024, place: pointSlot.orbitalPlace(simLayout, {radius: 0.035, rate: 1.4}), brightness: pointSlot.twinkleBrightness(simLayout, {freq: 2}), bodyRadius: pointSlot.presenceRadius(simLayout), names: {splat: 'motesSplat', resolve: 'motesResolve'}})
63
+ * ```
64
+ * @see orientedWorld, pointSlot
65
+ */
32
66
  readonly pointWorld: (layout: PointWorldSplatLayout & Parameters<typeof resolve.tint>[0], cfg: Omit<PointWorldSplatConfig, "name"> & {
33
67
  names: {
34
68
  splat: string;
35
69
  resolve: string;
36
70
  };
37
71
  }) => RenderAgentsPipelines;
38
- /** Perspective-projected 3D swarm with the speed-driven color ramp (Particles). */
72
+ /**
73
+ * A 3D swarm seen in perspective: nearer particles draw larger and brighter, and the color
74
+ * runs from rest to excited with speed.
75
+ *
76
+ * @example
77
+ * ```ts
78
+ * renderAgents.volume(simLayout, {shape, outRes: 1024, maxSplatSize: 12, extQ: 6, ramp: {colorSpace: 0, exposure: true, trails: 'none'}, names: {splat: 'swarmSplat', glow: 'swarmGlow', profile: 'swarmProfile', resolve: 'swarmResolve'}, extraOnSplat: true})
79
+ * ```
80
+ * @see orientedWorld, relief
81
+ */
39
82
  readonly volume: (layout: Parameters<typeof splat.volume>[0] & RampResolveLayout, cfg: Omit<VolumeSplatConfig, "names"> & {
40
83
  ramp: Omit<RampResolveConfig, "name" | "res" | "invGain">;
41
84
  names: VolumeSplatConfig["names"] & {
@@ -43,7 +86,17 @@ export declare const renderAgents: {
43
86
  };
44
87
  extraOnSplat?: boolean;
45
88
  }) => RenderAgentsPipelines;
46
- /** Camera-projected image relief with depth-weighted color averaging (ParticleField). */
89
+ /**
90
+ * Particles standing on an image, seen through a camera: each carries the child's color at
91
+ * its home, and nearer particles win the color where they overlap. `out` is the output size
92
+ * in texels.
93
+ *
94
+ * @example
95
+ * ```ts
96
+ * renderAgents.relief(fieldLayout, {shape, splatRCap: 24, aaW: 0.75, minAlpha: 0.02, fp: 1024, wobbleFreq: 1.3, perspK: 0.9, out: [outW, outH], weightedColor: {alphaK: 1.6}, names: {splat: 'reliefSplat', resolve: 'reliefResolve'}})
97
+ * ```
98
+ * @see volume
99
+ */
47
100
  readonly relief: (layout: Parameters<typeof splat.relief>[0], cfg: Omit<ReliefSplatConfig, "name"> & {
48
101
  out: [number, number];
49
102
  weightedColor: {
@@ -55,51 +108,57 @@ export declare const renderAgents: {
55
108
  };
56
109
  }) => RenderAgentsPipelines;
57
110
  };
58
- /** What `bake` assembles at composition time from the declared parts. */
111
+ /** What `bake` returns: the steps, their order, and anything the frame needs from composition. */
59
112
  export interface AgentSimBaked {
113
+ /** Every step by name: the spawn, the physics, the splat, the resolve. */
60
114
  pipelines: Record<string, AgentPipelineSpec>;
61
- /** Per-frame execution order (keys of `pipelines`). */
115
+ /** The steps that run each frame, in order (keys of `pipelines`). */
62
116
  program: readonly string[];
63
- /** One-shot spawn step, prepended on the first frame and on a reseed. */
117
+ /** The spawn step, run once before the first frame and again when `reseed` changes. */
64
118
  initStep?: string;
65
- /** Override the declared output extent (an aspect-fitted target decided per composition). */
119
+ /** Override the output size decided at composition (an aspect-fitted target). */
66
120
  outputSize?: [number, number];
67
- /** A second bind group chained onto every pipeline marked `extra` (shape-family SDFs). */
121
+ /** A second resource group for every step marked `extra` (a shape's own distance field). */
68
122
  extraBindGroup?: unknown;
69
- /** Resources already available at composition to bind onto `externalKeys` immediately. */
123
+ /** Resources ready now for the keys in `externalKeys` (a solver's texture created in `bake`). */
70
124
  bindNow?: Record<string, unknown>;
71
- /** A composition payload handed to `frame` (fluid solvers, per-shape CPU resolvers…). */
125
+ /** Anything `frame` needs from composition: a solver, a per-shape resolver. */
72
126
  setup?: unknown;
73
127
  }
128
+ /** How the layer samples the simulation's picture. */
74
129
  export interface AgentSimFragmentConfig {
75
- /** The compute output the fragment bilinear-samples full-canvas (rgba16f is filterable). */
130
+ /** The output the fragment samples over the full canvas. */
76
131
  output: string;
77
- /** GPU-free fallback: transparent (generators) or the raw child (child-driven effects). */
132
+ /** What to show without a GPU: nothing, or the child untouched. */
78
133
  fallback: 'transparent' | 'child';
79
- /** Optional compose over the sampled field (e.g. straight-alpha over the child). */
134
+ /** Combine the sampled picture with something else, such as laying it over the child. */
80
135
  compose?: (field: Expr, params: GpuFragmentParams) => Expr;
81
136
  }
137
+ /** What an agent simulation declares: its state layout, its values, its count, its output, and the bake, frame and fragment halves. */
82
138
  export interface AgentSimConfig<TParams extends AnyWgslStruct> {
139
+ /** The layout naming the per-agent buffers, the accumulators, the values and the output texture. */
83
140
  layout: AgentSystemConfig<TParams>['layout'];
141
+ /** The schema of the per-frame values the steps read. */
84
142
  params: TParams;
143
+ /** How many agents the buffers hold. The count prop can be anything up to it. */
85
144
  maxAgents: number;
86
- /** Effective count ceiling per device tier (the prop's declared range is unchanged). */
145
+ /** A lower effective count on phones and tablets. The prop's range is unchanged. */
87
146
  countCap?: DeviceTier;
147
+ /** The output texture: its layout key, the name the fragment reads it under, its size and format. */
88
148
  output: AgentSystemConfig<TParams>['output'];
89
- /** Layout keys bound late or via `bake.bindNow` (a child RTT, a solver handoff texture). */
149
+ /** Layout keys filled later, through `childTexture` or `bake.bindNow`. */
90
150
  externalKeys?: readonly string[];
91
- /** Read the child as a texture and late-bind it onto this external key (ParticleField). */
151
+ /** Read the child as a texture and bind it to this layout key once it exists. */
92
152
  childTexture?: {
93
153
  externalKey: string;
94
154
  };
95
- /** Composition-time baking: assemble the declared parts. Null = no simulation composes. */
155
+ /** Assemble the steps once per composition, from compile-time props. Return null to run nothing. */
96
156
  bake: (params: GpuFragmentParams) => AgentSimBaked | null;
97
- /** The per-frame CPU program: write uniforms, return the frame's steps (usually via
98
- * `sys.frame(...)`, prepending any extra passes the shader owns). */
157
+ /** Build the once-per-frame program: write the values, then return `sys.frame(...)`. */
99
158
  frame: (sys: AgentSystem<TParams>, params: GpuFragmentParams, setup: unknown) => (frameParams: unknown) => ComputeStep[] | null;
100
159
  fragment: AgentSimFragmentConfig;
101
160
  }
102
- /** The two definition halves the spread contributes (the ComputeBackedEffect shape). */
161
+ /** The two halves `agentSim` adds to a definition: the simulation and the fragment that samples it. */
103
162
  export interface AgentSimSpread {
104
163
  compute: GpuComputeNode;
105
164
  gpu: {
@@ -107,8 +166,20 @@ export interface AgentSimSpread {
107
166
  };
108
167
  }
109
168
  /**
110
- * Compose an agent simulation: `bake` the declared parts into kernels, wire them through the
111
- * `createAgentSystem` harness, and sample the resolved field in the fragment.
169
+ * A simulation of many agents, spread into a definition: `bake` assembles the steps from your
170
+ * declared parts, `frame` writes the per-frame values, and the fragment samples the picture.
171
+ *
172
+ * `bake` runs once per composition with the compile-time props (shape, color space) and
173
+ * returns the pipelines and their order. `frame` runs once per frame: read props, write
174
+ * `sys.writeParams(...)`, return `sys.frame({count})`. The spawn step runs before the first
175
+ * frame and again whenever `reseed` changes. Without a GPU the fragment shows the fallback.
176
+ *
177
+ * @example
178
+ * ```ts
179
+ * ...agentSim<typeof SimParams>({layout: simLayout, params: SimParams, maxAgents: 4096, countCap: {desktop: 4096, mobile: 1200}, output: {key: 'outTex', name: 'boidsTexture', size: [1024, 1024], format: 'rgba16float'}, bake: ({getCpuValue}) => { const render = boidsRender(getCpuValue('agentShape') as string); return {pipelines: {init: {kernel: boidsInitKernel, threads: 'max'}, update: {kernel: boidsUpdateKernel, threads: 'agents'}, splat: render.splat, resolve: render.resolve}, initStep: 'init', program: ['update', 'splat', 'resolve']} }, frame: (sys, {getCpuValue}) => (frameParams) => { const {dt, aspect} = readAgentFrame(frameParams); const count = sys.resolveCount(getCpuValue('count') as number); sys.writeParams({...}); return sys.frame({count}) }, fragment: {output: 'boidsTexture', fallback: 'transparent'}})
180
+ * ```
181
+ * @tip Clamp the count prop with `sys.resolveCount` rather than reading it raw, so a desktop preset still loads on a phone.
182
+ * @see renderAgents, integrator, force, agentFrame, simulate
112
183
  */
113
184
  export declare function agentSim<TParams extends AnyWgslStruct>(cfg: AgentSimConfig<TParams>): AgentSimSpread;
114
185
  export { force, torque, field, drift, channel, integrator, composeForces3, composeSteer2, composeTorques, restOrientationAngle } from './agentForces';
@@ -1 +1 @@
1
- {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../../src/std/sim/agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../../src/std/sim/agents.ts"],"names":[],"mappings":"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"}
@@ -1,49 +1,70 @@
1
1
  import { GpuComputeNode, GpuFragmentParams } from '../../gpu/contract';
2
2
  import { SimBindContext, SimSize, SimSlot, SimTick } from '../../gpu/scaffolds/feedbackSim';
3
3
 
4
- /** The TypeGPU root, via the contract (direct `typegpu` imports are restricted to src/gpu/). */
4
+ /** The GPU device handle the build callback receives, for creating the resources your step reads. */
5
5
  export type FeedbackRoot = NonNullable<GpuFragmentParams['gpu']>['root'];
6
- /** A 2D-dispatched TGSL kernel over the state grid. */
6
+ /** A step function run once per state cell, with the cell's column and row. */
7
7
  export type FeedbackKernel = (cx: number, cy: number) => void;
8
- /** What the bind-group builders get: the scaffold's context plus the params uniform's buffer. */
8
+ /**
9
+ * What you get when wiring your layout: the child's picture, the display texture, any extra
10
+ * textures you declared, and the buffer holding your per-frame values.
11
+ */
9
12
  export type FeedbackBindContext = SimBindContext & {
10
13
  paramsBuffer: unknown;
11
14
  };
15
+ /**
16
+ * What a feedback simulation declares: the state's size and format, one step function, the
17
+ * wiring that hands it the read and write sides, and the values it reads each frame.
18
+ */
12
19
  export interface FeedbackSimConfig<TParams, TGroups> {
13
- /** State + display resolution per axis (square — both current consumers' shape). */
20
+ /** Cells per side of the square state texture. 512–768 reads sharp on most canvases. */
14
21
  size: number;
22
+ /** Storage precision. `rgba16float` is enough for color; `rgba32float` for exact positions. */
15
23
  format: 'rgba16float' | 'rgba32float';
16
- /** Extra texture pairs swapping in lockstep with the state (TimeTrail's prev-live copy). */
24
+ /** Extra textures that keep a previous and a current side, swapped together with the state. */
17
25
  extraSlots?: Record<string, SimSize>;
18
- /** Orientation-independent extra textures. */
26
+ /** Extra textures with no previous side. */
19
27
  textures?: Record<string, SimSize>;
20
- /** Prop whose value scales `dt`. */
28
+ /** A prop that scales the clock. 0 freezes the simulation, 2 runs it twice as fast. */
21
29
  speedProp?: string;
30
+ /** Longest frame step accepted, in seconds. Default 0.05. Keeps a tab switch from jumping the state. */
22
31
  maxDeltaTime?: number;
23
- /** The shader's per-frame params struct — the noun owns its uniform. */
32
+ /** The schema of the per-frame values your step reads. The engine owns the buffer. */
24
33
  paramsSchema: unknown;
25
- /** Build one orientation's bind groups (called twice, late, by the scaffold). */
34
+ /**
35
+ * Wire your layout for one direction of the swap: `read` is last frame's state, `write` is
36
+ * this frame's. Called twice, once per direction, after the child's picture exists.
37
+ */
26
38
  bindGroups: (ctx: FeedbackBindContext, read: SimSlot, write: SimSlot) => TGroups;
27
- /** Build orientation-independent bind groups (called once, late). */
39
+ /** Wire resources that do not depend on the swap direction. Called once. */
28
40
  staticGroups?: (ctx: FeedbackBindContext) => unknown;
29
41
  /**
30
- * The state-advance kernel — ONE kernel per step, compile-time variant selected in the build
31
- * callback. Splitting a step into several kernels is a different simulation (and different
32
- * WGSL); a shader that needs a multi-dispatch step should not ride this noun's default frame.
42
+ * The rule: one step function that reads `read`, writes `write` and the display copy.
43
+ * Pick the variant inside the build callback when a compile-time prop changes it.
33
44
  */
34
45
  step: FeedbackKernel;
35
- /** Idle-gate policy: true → skip the frame entirely (the scaffold then skips the swap too). */
46
+ /** Return true to skip this frame. The last state stays on screen and nothing swaps. */
36
47
  skip?: (t: SimTick<TGroups, unknown>) => boolean;
37
- /** The per-frame params derivation — the one runtime surface. Written before the dispatch. */
48
+ /** The values your step reads this frame, built from the clock and your props. */
38
49
  values: (t: SimTick<TGroups, unknown>) => TParams;
39
- /** Extra `outputs` entries beyond the scaffold's childTexture/display. */
50
+ /** Extra outputs for the fragment beyond `childTexture` and `display`. */
40
51
  outputs?: Record<string, unknown>;
41
52
  }
42
53
  /**
43
- * The feedback-simulation noun. Spread it into a definition: `...feedbackSim((params, root) => ({...}))`.
54
+ * A simulation that advances a picture of its own last frame by one step of your rule, every
55
+ * frame. Spread it into a definition next to a `gpu.fragment` that samples `display`.
56
+ *
57
+ * The build callback runs once per instance of the layer, so anything you create inside it
58
+ * (resources, a kernel variant picked from a compile-time prop) belongs to that instance. The
59
+ * simulation needs a child. Without one, or without a GPU, nothing runs and the fragment should
60
+ * fall back to the child.
44
61
  *
45
- * Requires a child (these are all child-consuming echo/decoder effects): bails to `null` (fragment
46
- * passthrough) without one, without a device, or when the scaffold cannot allocate.
62
+ * @example
63
+ * ```ts
64
+ * ...feedbackSim((params, root) => ({size: 768, format: 'rgba16float', speedProp: 'speed', paramsSchema: decoder.Params, bindGroups: ({childTexture, display, paramsBuffer}, read, write) => root.createBindGroup(decoder.layout, {src: childTexture, prev: read.state, next: write.state, display, params: paramsBuffer} as never), step: decoder.kernel, values: ({dt, localTime}) => ({time: localTime, dt, intensity: params.getCpuValue('intensity') as number})}))
65
+ * ```
66
+ * @tip Read time from `localTime`, not the layer's clock. It stops when `speedProp` is 0 and every frame's step matches it.
67
+ * @see fluidSim, gridSim, agentSim, simulate
47
68
  */
48
69
  export declare function feedbackSim<TParams, TGroups = unknown>(build: (params: GpuFragmentParams, root: FeedbackRoot) => FeedbackSimConfig<TParams, TGroups>): {
49
70
  compute: GpuComputeNode;
@@ -1 +1 @@
1
- {"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../../src/std/sim/feedback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,EAAC,cAAc,EAAE,iBAAiB,EAAC,MAAM,oBAAoB,CAAA;AAEzE,OAAO,EAAyB,KAAK,cAAc,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAC,MAAM,iCAAiC,CAAA;AAGrI,gGAAgG;AAChG,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;AAExE,uDAAuD;AACvD,MAAM,MAAM,cAAc,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;AAE7D,iGAAiG;AACjG,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG;IAAC,YAAY,EAAE,OAAO,CAAA;CAAC,CAAA;AAE1E,MAAM,WAAW,iBAAiB,CAAC,OAAO,EAAE,OAAO;IAC/C,oFAAoF;IACpF,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,aAAa,GAAG,aAAa,CAAA;IACrC,4FAA4F;IAC5F,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,wEAAwE;IACxE,YAAY,EAAE,OAAO,CAAA;IACrB,iFAAiF;IACjF,UAAU,EAAE,CAAC,GAAG,EAAE,mBAAmB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAA;IAChF,qEAAqE;IACrE,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,OAAO,CAAA;IACpD;;;;OAIG;IACH,IAAI,EAAE,cAAc,CAAA;IACpB,+FAA+F;IAC/F,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,OAAO,CAAA;IAChD,8FAA8F;IAC9F,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,OAAO,CAAA;IACjD,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,EAClD,KAAK,EAAE,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,KAAK,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,GAC9F;IAAC,OAAO,EAAE,cAAc,CAAA;CAAC,CA0C3B"}
1
+ {"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../../src/std/sim/feedback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAsBH,OAAO,KAAK,EAAC,cAAc,EAAE,iBAAiB,EAAC,MAAM,oBAAoB,CAAA;AAEzE,OAAO,EAAyB,KAAK,cAAc,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAC,MAAM,iCAAiC,CAAA;AAGrI,qGAAqG;AAErG,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;AAExE,+EAA+E;AAE/E,MAAM,MAAM,cAAc,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;AAE7D;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG;IAAC,YAAY,EAAE,OAAO,CAAA;CAAC,CAAA;AAE1E;;;GAGG;AACH,MAAM,WAAW,iBAAiB,CAAC,OAAO,EAAE,OAAO;IAC/C,wFAAwF;IAExF,IAAI,EAAE,MAAM,CAAA;IACZ,+FAA+F;IAC/F,MAAM,EAAE,aAAa,GAAG,aAAa,CAAA;IACrC,+FAA+F;IAE/F,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,wGAAwG;IACxG,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,sFAAsF;IACtF,YAAY,EAAE,OAAO,CAAA;IACrB;;;OAGG;IACH,UAAU,EAAE,CAAC,GAAG,EAAE,mBAAmB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAA;IAChF,4EAA4E;IAC5E,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,OAAO,CAAA;IACpD;;;OAGG;IAIH,IAAI,EAAE,cAAc,CAAA;IACpB,wFAAwF;IACxF,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,OAAO,CAAA;IAChD,kFAAkF;IAElF,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,OAAO,CAAA;IACjD,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC;AAED;;;;;;;;;;;;;;;GAeG;AAGH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,EAClD,KAAK,EAAE,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,KAAK,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,GAC9F;IAAC,OAAO,EAAE,cAAc,CAAA;CAAC,CA0C3B"}