shaders 3.0.453 → 3.1.455
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-B0m-LKoD.js → AngularBlur-CIw_xeFr.js} +25 -31
- package/dist/core/Arc-Dh0gjBrJ.js +183 -0
- package/dist/core/{Ascii-BiFuRRQ1.js → Ascii-CUk527uY.js} +34 -46
- package/dist/core/{Aurora-B35I8qRz.js → Aurora-CTWNhlNr.js} +14 -15
- package/dist/core/{BarShift-C_waFkRO.js → BarShift-BrOamln6.js} +24 -122
- package/dist/core/BarnDoors-D_lVAMPJ.js +170 -0
- package/dist/core/{Beam-BPBmQMGD.js → Beam-CgpfMTUq.js} +45 -461
- package/dist/core/{Bend-Bq1Qlhq4.js → Bend-CRuu6NuH.js} +13 -57
- package/dist/core/{Blob-BtInePsq.js → Blob-1mhEIcv5.js} +3 -3
- package/dist/core/BlockDissolve-DwWPjla0.js +178 -0
- package/dist/core/{BlockNoise-BfDNfyBP.js → BlockNoise-BMt760_p.js} +36 -113
- package/dist/core/{BlueNoise-CNLIGPMW.js → BlueNoise-Cfo_HthN.js} +24 -46
- package/dist/core/Blur-Bc8evwsz.js +428 -0
- package/dist/core/{Boids-D51ZdvH0.js → Boids-CtvT1VsV.js} +105 -427
- package/dist/core/{BokehBlur-DO4V8nZ-.js → BokehBlur-CWQm00ut.js} +37 -214
- package/dist/core/{BrickPattern-D21Nqxcj.js → BrickPattern-DomddM0C.js} +89 -335
- package/dist/core/{BrightnessContrast-QxVeVMih.js → BrightnessContrast-Bs8AV0he.js} +16 -15
- package/dist/core/{BrushedMetal-Xq4jMVz1.js → BrushedMetal-BAgNgeo1.js} +342 -1001
- package/dist/core/{Bulge-CdCqTfrp.js → Bulge-CdhRTWSH.js} +13 -71
- package/dist/core/{CRTScreen-D7WSk5fJ.js → CRTScreen-BxnPxDw9.js} +1 -1
- package/dist/core/{CarbonFiber-Dg-XleHg.js → CarbonFiber-mK6eHIpy.js} +281 -935
- package/dist/core/{Chalkboard-B_YRavSR.js → Chalkboard-BizZEHlC.js} +2 -2
- package/dist/core/{ChannelBlur-BmEILWdn.js → ChannelBlur-Oz40DKPZ.js} +15 -39
- package/dist/core/{CheckerWipe-Dbt7TTDK.js → CheckerWipe-yv4dK6n5.js} +83 -211
- package/dist/core/Checkerboard-Ynfnt3oJ.js +158 -0
- package/dist/core/{Chevron-DsJK3THV.js → Chevron-CEwNP2vt.js} +46 -117
- package/dist/core/{ChromaFlow-Bj4rfeWl.js → ChromaFlow-BXw1jQkn.js} +3 -3
- package/dist/core/{ChromaticAberration-C2UtSgN3.js → ChromaticAberration-CWhYEGDU.js} +2 -2
- package/dist/core/{Chrome-CSrC5yk_.js → Chrome-DoPYr4Kd.js} +97 -351
- package/dist/core/Circle-DGvP0Svo.js +267 -0
- package/dist/core/{ColorWheel-C_YLOL93.js → ColorWheel-BCReEdLZ.js} +48 -63
- package/dist/core/{CompressionArtifacts-BXto-pLr.js → CompressionArtifacts-Cm0iOzys.js} +2 -2
- package/dist/core/{ConcentricSpin-1tArUXYX.js → ConcentricSpin-B3GHzoS1.js} +37 -146
- package/dist/core/{ConicGradient-Tw-pg593.js → ConicGradient-C3zzgyV4.js} +25 -143
- package/dist/core/{ContourLines-CBFm0hjl.js → ContourLines-DDzxvg9k.js} +5 -66
- package/dist/core/{CornerPin-BNgPHIHY.js → CornerPin-VFPI_Jzq.js} +9 -54
- package/dist/core/Crescent-DL6EeZZp.js +187 -0
- package/dist/core/Cross-DQIgZt-C.js +188 -0
- package/dist/core/{Crystal-DN2WgBrm.js → Crystal-B9DIgDD7.js} +81 -262
- package/dist/core/{CurlNoise-RsATuC8w.js → CurlNoise-D6kSV8PJ.js} +40 -98
- package/dist/core/{CursorRipples-DbtJtDDl.js → CursorRipples-C1hLNWzZ.js} +63 -60
- package/dist/core/{CursorTrail-yoPFtwk9.js → CursorTrail-CPW8orHG.js} +66 -52
- package/dist/core/{DataMosh-DabFQ-B5.js → DataMosh-CjVK_gxL.js} +23 -56
- package/dist/core/{DiamondGradient-DbaUt2tC.js → DiamondGradient-BkrLPdAd.js} +43 -186
- package/dist/core/{DiamondWipe-Jth0vS7V.js → DiamondWipe-Cscn7Dyy.js} +45 -205
- package/dist/core/{DiffuseBlur-BZxj-iAt.js → DiffuseBlur-DUBfHpUN.js} +8 -11
- package/dist/core/{DisplacementMap-31H7QPQl.js → DisplacementMap-B-cVoGbC.js} +4 -3
- package/dist/core/{Dither-BN-zSZ0l.js → Dither-B4lhnNLA.js} +9 -12
- package/dist/core/{DotGrid-BRDFAkBz.js → DotGrid-CJJXTOk6.js} +78 -355
- package/dist/core/{DropShadow-_lFvglPh.js → DropShadow-B4msUftn.js} +31 -32
- package/dist/core/{Duotone-BhxXqh0S.js → Duotone-DF3dn0kC.js} +11 -8
- package/dist/core/Ellipse-WuGsM7Gr.js +168 -0
- package/dist/core/{Emboss--yOZdnyf.js → Emboss-D5RYAc-U.js} +14 -35
- package/dist/core/{Engraving-B26NgnCE.js → Engraving-DNNHKvIr.js} +12 -12
- package/dist/core/{ErosionNoise-_uC5Hx2q.js → ErosionNoise-w1aTuwY4.js} +35 -98
- package/dist/core/{Exposure-BM3eE3ol.js → Exposure-BSsbosYN.js} +15 -11
- package/dist/core/{FallingLines-BuczyepF.js → FallingLines-C1YT49dj.js} +13 -14
- package/dist/core/{FilmGrain-Dyy76ena.js → FilmGrain-BeZQzxdU.js} +21 -15
- package/dist/core/{FilmStock-mi-H3Ul9.js → FilmStock-Bgn9OyQY.js} +9 -734
- package/dist/core/{Flip-rZzkYscj.js → Flip-DJuox9qR.js} +11 -25
- package/dist/core/{FloatingParticles-BbbTJldX.js → FloatingParticles-Ch5OJjCc.js} +128 -447
- package/dist/core/{FlowField-u0qYoqV2.js → FlowField-Cime_Fqy.js} +6 -5
- package/dist/core/Flower--1qeeCuA.js +187 -0
- package/dist/core/{FlowingGradient-_zyM9KQn.js → FlowingGradient-DL1e3OKu.js} +12 -17
- package/dist/core/{FlutedGlass-C9-K6UQ7.js → FlutedGlass-CqSVa4kd.js} +5 -4
- package/dist/core/Fog-DvOvVKbF.js +2261 -0
- package/dist/core/{Form3D-Dmvpcqp1.js → Form3D-CabM27VZ.js} +152 -838
- package/dist/core/{FractalNoise-C8uudMNt.js → FractalNoise-Bu8FbMYX.js} +57 -321
- package/dist/core/{Frost-DV2zJSAL.js → Frost-BnE3EI6s.js} +77 -170
- package/dist/core/{GaborNoise-Bty1hWmn.js → GaborNoise-BZFyQbDr.js} +36 -99
- package/dist/core/{Glass-CYmFGP1b.js → Glass-DPa3OWjZ.js} +15 -27
- package/dist/core/{GlassTiles-B3vyGos-.js → GlassTiles-B4Y8x78X.js} +3 -2
- package/dist/core/{Glitch-DcjdwJep.js → Glitch-nokyLk8Q.js} +1 -1
- package/dist/core/Glow-C3VfGUb6.js +198 -0
- package/dist/core/{Godrays-lPn_O_W-.js → Godrays-fglKeS0z.js} +37 -72
- package/dist/core/{Goo-DxEB8kMF.js → Goo-BPaUKk1S.js} +13 -42
- package/dist/core/{GradientMap-7G6EOwy8.js → GradientMap-DQ4IbzIx.js} +23 -17
- package/dist/core/{Grayscale-BJz0olll.js → Grayscale-Bpp1Q2KT.js} +9 -11
- package/dist/core/Grid-BneV9T3T.js +684 -0
- package/dist/core/{GridDistortion-CSBRousF.js → GridDistortion-CAKSKhII.js} +8 -53
- package/dist/core/{Group-BSg6a8Ro.js → Group-UvbIuzy-.js} +1 -1
- package/dist/core/{HTMLInCanvas-DnQ0ZY38.js → HTMLInCanvas-CMxSuq5H.js} +16 -27
- package/dist/core/{Halftone-B2C55h6_.js → Halftone-SiFx0wAg.js} +4 -3
- package/dist/core/Heart-DLQnxsbQ.js +144 -0
- package/dist/core/{Heatmap-BdExXQBU.js → Heatmap-Bp0wi8r1.js} +14 -31
- package/dist/core/{HexGrid-B6UygS6q.js → HexGrid-LGx240mZ.js} +82 -486
- package/dist/core/{Hologram-D_eqqb8P.js → Hologram-B-090nzV.js} +14 -48
- package/dist/core/{Holographic-Ctrsya3k.js → Holographic-CSIQUm1_.js} +90 -298
- package/dist/core/{HueShift-CFXxhPpm.js → HueShift-B7l4vcZP.js} +17 -14
- package/dist/core/ImageTexture-D41xKACO.js +58 -0
- package/dist/core/InkFlow-Bd4RXQmm.js +1159 -0
- package/dist/core/{Invert-Bya7lBpK.js → Invert-CEfJB0WN.js} +9 -11
- package/dist/core/IrisWipe-O6dc-Aq2.js +163 -0
- package/dist/core/{IsometricCubes-CC-l8cnR.js → IsometricCubes-BQFwe-5s.js} +106 -473
- package/dist/core/{Kaleidoscope-DhvQTJdp.js → Kaleidoscope-DQFV4-lX.js} +15 -71
- package/dist/core/{KeyFrames-ZTsc7rtN.js → KeyFrames-BjH6gHSf.js} +32 -67
- package/dist/core/{LensDistortion-KiZJXFKC.js → LensDistortion-BcodYk7_.js} +3 -3
- package/dist/core/{LensFlare-D5fr8RPA.js → LensFlare-B4F0dq7O.js} +106 -348
- package/dist/core/{LightEdge-D0NOWDh7.js → LightEdge-l2zPIeMQ.js} +14 -31
- package/dist/core/{LightLeak-DdaidQ1D.js → LightLeak-BSy19CB6.js} +49 -333
- package/dist/core/{Line-B5DIIWBz.js → Line-CRGYWOyW.js} +2 -2
- package/dist/core/{LinearBlur-CyQxSLS2.js → LinearBlur-DGfbbIWb.js} +20 -31
- package/dist/core/{LinearGradient-B8tyawJy.js → LinearGradient-DOWwm0bP.js} +59 -110
- package/dist/core/LinearWipe-0nTDgTcZ.js +162 -0
- package/dist/core/{LiquidMetal-vARkyRL2.js → LiquidMetal-BbyxqZoO.js} +90 -446
- package/dist/core/{Liquify-Djnk6ryT.js → Liquify-Bg2tEc64.js} +10 -54
- package/dist/core/{MagneticFilings-BfTe8-Jn.js → MagneticFilings-5NVqpsrW.js} +123 -416
- package/dist/core/{Marble-3s7VS-tT.js → Marble-CzoJcXvo.js} +14 -15
- package/dist/core/{Mirror-Ck4Hzdd8.js → Mirror-B_2eQT6d.js} +11 -67
- package/dist/core/{MultiPointGradient-CdzqMTN9.js → MultiPointGradient-NJZfFGVb.js} +27 -140
- package/dist/core/{Neon-B8iSfL5s.js → Neon-m8PtEGdE.js} +14 -33
- package/dist/core/{NoiseDissolve-Df70NgHI.js → NoiseDissolve-DxvqR71w.js} +21 -129
- package/dist/core/{ObjectTracker-CFpotAyg.js → ObjectTracker-DlVNN9LJ.js} +41 -51
- package/dist/core/{PagePeel-Bmc4hBhO.js → PagePeel-BZOvdHFV.js} +3 -2
- package/dist/core/{Paper-af7JgKOt.js → Paper-Bn3DETI2.js} +2 -2
- package/dist/core/Parallelogram-a6zB6mY9.js +187 -0
- package/dist/core/{ParticleField-FPUBkJmo.js → ParticleField-CUtlCqxz.js} +172 -385
- package/dist/core/{ParticleFlow-DfdDvN-j.js → ParticleFlow-Ck5Ta_Rj.js} +250 -2572
- package/dist/core/{Particles-DZaTzOZP.js → Particles-rnTAu4Mr.js} +366 -475
- package/dist/core/{PerlinNoise-DPaPG55C.js → PerlinNoise-BUbmE_JA.js} +36 -113
- package/dist/core/{Perspective-DBzb7DC9.js → Perspective-S94umCQn.js} +17 -71
- package/dist/core/{PixelSort-sqoLBmqR.js → PixelSort-CF0-TpU7.js} +2 -2
- package/dist/core/{PixelThrow-arRYRlCO.js → PixelThrow-2WPijuDY.js} +17 -652
- package/dist/core/{Pixelate-Ba_iNPwv.js → Pixelate-BLdO8qAT.js} +1 -1
- package/dist/core/Plasma-DOH9gxWt.js +355 -0
- package/dist/core/{Plastic-C-NBXCG-.js → Plastic-CQNoTl22.js} +86 -271
- package/dist/core/{PolarCoordinates-CjV_EFpN.js → PolarCoordinates-DZNOyHmN.js} +15 -72
- package/dist/core/Polygon-BM3xGxOC.js +231 -0
- package/dist/core/{Posterize-BUt2MAqY.js → Posterize-BJl7Irml.js} +51 -18
- package/dist/core/{Prism-BBSdqnRm.js → Prism-CaJyExNA.js} +3 -3
- package/dist/core/{ProgressiveBlur-CQhyaOwl.js → ProgressiveBlur-B1Ur87dm.js} +56 -368
- package/dist/core/{RadialGradient-BXLBHnCC.js → RadialGradient-C1Fb8TaL.js} +44 -185
- package/dist/core/RadialWipe-CA5xWWPN.js +222 -0
- package/dist/core/RandomBars-B7ZwitL3.js +238 -0
- package/dist/core/{ReactionDiffusion-r1qHYWoB.js → ReactionDiffusion--54drNkY.js} +403 -1270
- package/dist/core/{RectangularCoordinates-CFGiELUv.js → RectangularCoordinates-BEOFurXt.js} +14 -70
- package/dist/core/{ReflectivePlane-BbKUjtUs.js → ReflectivePlane-wERmyiKx.js} +12 -77
- package/dist/core/{Repeater-DZhhgwMr.js → Repeater-Cy8up7cj.js} +2 -2
- package/dist/core/{Ring-DFxV0XzX.js → Ring-Cogdtn-0.js} +19 -134
- package/dist/core/{RippleWipe-DFh-8SmT.js → RippleWipe-fJwyE4vj.js} +24 -273
- package/dist/core/{Ripples-BG24IcNH.js → Ripples-BSHfhVG1.js} +3 -3
- package/dist/core/RoundedRect-D3intNNI.js +188 -0
- package/dist/core/{Saturation-DKbtxVNf.js → Saturation-D42Bfc5P.js} +14 -12
- package/dist/core/{Scratches-C40D6A1_.js → Scratches-Ih3Kx_UW.js} +5 -5
- package/dist/core/{Sharpness-DygCiVsY.js → Sharpness-Dyh6312-.js} +11 -11
- package/dist/core/{Shatter-eVP3Mt9W.js → Shatter-Qc5aMkWj.js} +3 -4
- package/dist/core/{SimplexNoise-HorjLzId.js → SimplexNoise-E7ssgWPN.js} +37 -179
- package/dist/core/{SineWave-CTIhqhO-.js → SineWave-CnPtZLSs.js} +6 -5
- package/dist/core/{SliceWipe-D3yX3CAm.js → SliceWipe-Byb46V6I.js} +15 -25
- package/dist/core/Smoke-5x6IAk2_.js +1265 -0
- package/dist/core/SmokeFill-DOQpTlCv.js +3192 -0
- package/dist/core/SmokeFlow-B4fdM2M-.js +903 -0
- package/dist/core/{Solarize-wvgIpPSb.js → Solarize-BB0bXhP0.js} +15 -15
- package/dist/core/{SolidColor-CQ9bQ-k6.js → SolidColor-D-6N9JmI.js} +1 -1
- package/dist/core/{Spherize-N33ACzeM.js → Spherize-aWpru70e.js} +2 -2
- package/dist/core/{Spiral-NeLWfZ6k.js → Spiral-Dbm2j7mM.js} +5 -4
- package/dist/core/Star-XtB9FBhQ.js +187 -0
- package/dist/core/{Stone-mVzuC5SK.js → Stone-i7v3RIb9.js} +2 -2
- package/dist/core/{Strands-C19HsqO_.js → Strands-BFaZBnNo.js} +6 -5
- package/dist/core/{Stretch-CAGlZjVf.js → Stretch-BKg0gjm4.js} +15 -72
- package/dist/core/{Stripes-DH9wZV3F.js → Stripes-B_SkTR2m.js} +83 -378
- package/dist/core/{StudioBackground-DPsj_N10.js → StudioBackground-CUsUWJ2L.js} +14 -133
- package/dist/core/{SunBurst-D5p0QAnh.js → SunBurst-DiqSzz5A.js} +34 -52
- package/dist/core/{Surface3D-HSAAGomd.js → Surface3D-DxzfMHn2.js} +15 -21
- package/dist/core/{Swirl-C1lH2gAk.js → Swirl-DBxZ6Wud.js} +3 -3
- package/dist/core/Teardrop-CnhwMyQx.js +168 -0
- package/dist/core/{Text-DPjLa6Eh.js → Text-Cb6QJNWo.js} +51 -70
- package/dist/core/{ThinFilm-DhpK-SoR.js → ThinFilm-B7CTONK1.js} +28 -176
- package/dist/core/{TiltShift-e57KIilk.js → TiltShift-DqEFOoJG.js} +62 -368
- package/dist/core/{TimeTrail-CYofyeeE.js → TimeTrail-G_JamlY8.js} +28 -73
- package/dist/core/{Tint-DBM82OkZ.js → Tint-Dj1rSoJ0.js} +14 -21
- package/dist/core/{Trapezoid-DaIBhsop.js → Trapezoid-D2PMU9G3.js} +40 -160
- package/dist/core/{TriangularGrid-CBOVJOcR.js → TriangularGrid-C3DBCmaj.js} +69 -349
- package/dist/core/{Tritone-D6Dur2eo.js → Tritone-DfULv51I.js} +11 -8
- package/dist/core/{Truchet-sunCQd_E.js → Truchet-yjZm8xe3.js} +73 -172
- package/dist/core/{Twirl-D3-3HSuS.js → Twirl-DfRsql00.js} +11 -67
- package/dist/core/{VHS-DtyeGxi8.js → VHS-Z23X9XD6.js} +1 -1
- package/dist/core/VenetianBlinds-CCucT73e.js +188 -0
- package/dist/core/Vesica-BIGpXjWv.js +168 -0
- package/dist/core/{Vibrance-B8gBhQS7.js → Vibrance-CtlvCONz.js} +15 -11
- package/dist/core/VideoTexture-DW6bQduh.js +58 -0
- package/dist/core/{Vignette-yIXlpfCE.js → Vignette-Dz3pPnPR.js} +24 -21
- package/dist/core/Voronoi-5QA-0zme.js +363 -0
- package/dist/core/{Water-uLbQQrt-.js → Water-DlvNrnrU.js} +84 -269
- package/dist/core/{Watercolor-CcZ0fVEu.js → Watercolor-BWx4xdwk.js} +3 -3
- package/dist/core/{WaveDistortion-DasSsVxv.js → WaveDistortion-CRQzZDLP.js} +18 -66
- package/dist/core/{WaveletNoise-DpRWc5Qw.js → WaveletNoise-CZS67VBU.js} +36 -99
- package/dist/core/{Weave-CLGYIcmf.js → Weave-DpwAU5Rn.js} +77 -254
- package/dist/core/WebcamTexture-DauLQjCl.js +130 -0
- package/dist/core/{Wool-uy61uieK.js → Wool-CEaWGZB1.js} +2 -2
- package/dist/core/WorleyNoise-CjRMr7xP.js +558 -0
- package/dist/core/{ZoomBlur-OQP2jw3F.js → ZoomBlur-DgG9JA7a.js} +18 -29
- package/dist/core/aa-C8WSqiNB.js +1094 -0
- package/dist/core/{agents-BVhq_Z2T.js → agents-C_kohsYu.js} +1 -1
- package/dist/core/{bevel-BGAb1fb2.js → bevel-ogqjoZKV.js} +1 -1
- package/dist/core/{blur-cLcFzL4x.js → blur-CZuIxzX6.js} +1782 -3
- package/dist/core/canvasRaster-BB2bNhS7.js +80 -0
- package/dist/core/cells-CM9mfnTr.js +1042 -0
- package/dist/core/cellular-qYnxKdPx.js +1593 -0
- package/dist/core/constants-DoOzbl5b.js +9 -0
- package/dist/core/{sdf-B8rPE1PG.js → device-B0ZwBfOg.js} +107 -6
- package/dist/core/{edges-B7Yet3LV.js → edges-CD7gCAto.js} +665 -1
- package/dist/core/fields-CC0756V2.js +1311 -0
- package/dist/core/geom-90G-d_hc.js +1036 -0
- package/dist/core/{glass-CNFJB2On.js → glass-D8xs_kIG.js} +1 -1
- package/dist/core/gpu/compute.d.ts +80 -9
- package/dist/core/gpu/compute.d.ts.map +1 -1
- package/dist/core/gpu/contract.d.ts +22 -1
- package/dist/core/gpu/contract.d.ts.map +1 -1
- package/dist/core/gpu/index.d.ts.map +1 -1
- package/dist/core/gpu/kit/aa.d.ts +111 -0
- package/dist/core/gpu/kit/aa.d.ts.map +1 -0
- package/dist/core/gpu/kit/blur.d.ts +288 -9
- package/dist/core/gpu/kit/blur.d.ts.map +1 -1
- package/dist/core/gpu/kit/cells.d.ts +136 -0
- package/dist/core/gpu/kit/cells.d.ts.map +1 -0
- package/dist/core/gpu/kit/cellular.d.ts +102 -0
- package/dist/core/gpu/kit/cellular.d.ts.map +1 -0
- package/dist/core/gpu/kit/constants.d.ts +52 -0
- package/dist/core/gpu/kit/constants.d.ts.map +1 -0
- package/dist/core/gpu/kit/effects/index.d.ts +2 -3
- package/dist/core/gpu/kit/effects/index.d.ts.map +1 -1
- package/dist/core/gpu/kit/effects/raymarch3d.d.ts +17 -34
- package/dist/core/gpu/kit/effects/raymarch3d.d.ts.map +1 -1
- package/dist/core/gpu/kit/effects/thinFilm.d.ts +3 -1
- package/dist/core/gpu/kit/effects/thinFilm.d.ts.map +1 -1
- package/dist/core/gpu/kit/fields.d.ts +143 -0
- package/dist/core/gpu/kit/fields.d.ts.map +1 -0
- package/dist/core/gpu/kit/geom.d.ts +129 -0
- package/dist/core/gpu/kit/geom.d.ts.map +1 -0
- package/dist/core/gpu/kit/host/canvasRaster.d.ts +104 -0
- package/dist/core/gpu/kit/host/canvasRaster.d.ts.map +1 -0
- package/dist/core/gpu/kit/host/mediaLifecycle.d.ts +173 -0
- package/dist/core/gpu/kit/host/mediaLifecycle.d.ts.map +1 -0
- package/dist/core/gpu/kit/host/pointer.d.ts +155 -0
- package/dist/core/gpu/kit/host/pointer.d.ts.map +1 -0
- package/dist/core/gpu/kit/index.d.ts +10 -0
- package/dist/core/gpu/kit/index.d.ts.map +1 -1
- package/dist/core/gpu/kit/lightfields.d.ts +114 -0
- package/dist/core/gpu/kit/lightfields.d.ts.map +1 -0
- package/dist/core/gpu/kit/lighting.d.ts +115 -0
- package/dist/core/gpu/kit/lighting.d.ts.map +1 -0
- package/dist/core/gpu/kit/media.d.ts +44 -0
- package/dist/core/gpu/kit/media.d.ts.map +1 -1
- package/dist/core/gpu/kit/noiseColor.d.ts +19 -4
- package/dist/core/gpu/kit/noiseColor.d.ts.map +1 -1
- package/dist/core/gpu/kit/reveal.d.ts +75 -0
- package/dist/core/gpu/kit/reveal.d.ts.map +1 -0
- package/dist/core/gpu/kit/sampling.d.ts +43 -0
- package/dist/core/gpu/kit/sampling.d.ts.map +1 -1
- package/dist/core/gpu/kit/sdf.d.ts +23 -0
- package/dist/core/gpu/kit/sdf.d.ts.map +1 -1
- package/dist/core/gpu/kit/sdf3d.d.ts +54 -1
- package/dist/core/gpu/kit/sdf3d.d.ts.map +1 -1
- package/dist/core/gpu/kit/tone.d.ts +100 -0
- package/dist/core/gpu/kit/tone.d.ts.map +1 -0
- package/dist/core/gpu/porters.d.ts +11 -1
- package/dist/core/gpu/porters.d.ts.map +1 -1
- package/dist/core/gpu/scaffolds/agentSystem.d.ts +244 -0
- package/dist/core/gpu/scaffolds/agentSystem.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/feedbackSim.d.ts +102 -0
- package/dist/core/gpu/scaffolds/feedbackSim.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/fluids.d.ts +170 -0
- package/dist/core/gpu/scaffolds/fluids.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/lateBoundChild.d.ts +51 -0
- package/dist/core/gpu/scaffolds/lateBoundChild.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/pointwiseFilter.d.ts +77 -0
- package/dist/core/gpu/scaffolds/pointwiseFilter.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/rttFilter.d.ts +35 -0
- package/dist/core/gpu/scaffolds/rttFilter.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/sdfShape.d.ts +98 -0
- package/dist/core/gpu/scaffolds/sdfShape.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/shared.d.ts +16 -0
- package/dist/core/gpu/scaffolds/shared.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/simShared.d.ts +61 -0
- package/dist/core/gpu/scaffolds/simShared.d.ts.map +1 -0
- package/dist/core/gpu/scaffolds/uvRemapShader.d.ts +134 -0
- package/dist/core/gpu/scaffolds/uvRemapShader.d.ts.map +1 -0
- package/dist/core/index.js +230 -217
- package/dist/core/lightfields-ffHoLyJn.js +1550 -0
- package/dist/core/lighting-D3jc6qOc.js +1270 -0
- package/dist/core/{media-Y-WxQcQD.js → media-fQMXfvXd.js} +31 -2
- package/dist/core/mediaLifecycle-yHZ8w5aj.js +314 -0
- package/dist/core/{noise-B-PI7JUx.js → noise-Bd6IGS0W.js} +1 -1
- package/dist/core/{noiseColor-Cgx-FS2o.js → noiseColor-DRDY44sf.js} +2 -2
- package/dist/core/noiseColor-DYhX5Js1.js +28 -0
- package/dist/core/{noiseStylize-BN5zji1E.js → noiseStylize-CkeVSB9C.js} +2 -2
- package/dist/core/pointer-DGDGF-yO.js +88 -0
- package/dist/core/porters-DUtQounc.js +12220 -0
- package/dist/core/presetRenderer.d.ts.map +1 -1
- package/dist/core/propConfigs-k3hs8KYL.js +190 -0
- package/dist/core/registry.js +222 -212
- package/dist/core/reveal-DhktaT1C.js +1071 -0
- package/dist/core/{shapeEffectBounds-Svfd_R5a.js → sdf3d-CP87OlsQ.js} +18752 -18710
- package/dist/core/shaderRegistry-DLSuwWtO.js +431 -0
- package/dist/core/shaders/AngularBlur/index.d.ts +8 -4
- package/dist/core/shaders/AngularBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/AngularBlur/index.js +7 -5
- package/dist/core/shaders/Arc/index.d.ts +0 -65
- package/dist/core/shaders/Arc/index.d.ts.map +1 -1
- package/dist/core/shaders/Arc/index.js +6 -7
- package/dist/core/shaders/Ascii/index.d.ts.map +1 -1
- package/dist/core/shaders/Ascii/index.js +8 -5
- package/dist/core/shaders/Aurora/index.d.ts.map +1 -1
- package/dist/core/shaders/Aurora/index.js +9 -6
- package/dist/core/shaders/BarShift/index.d.ts +1 -7
- package/dist/core/shaders/BarShift/index.d.ts.map +1 -1
- package/dist/core/shaders/BarShift/index.js +8 -6
- package/dist/core/shaders/BarnDoors/index.d.ts.map +1 -1
- package/dist/core/shaders/BarnDoors/index.js +8 -5
- package/dist/core/shaders/Beam/index.d.ts.map +1 -1
- package/dist/core/shaders/Beam/index.js +9 -5
- package/dist/core/shaders/Bend/index.d.ts +0 -6
- package/dist/core/shaders/Bend/index.d.ts.map +1 -1
- package/dist/core/shaders/Bend/index.js +7 -5
- package/dist/core/shaders/Blob/index.js +6 -5
- package/dist/core/shaders/BlockDissolve/index.d.ts.map +1 -1
- package/dist/core/shaders/BlockDissolve/index.js +9 -6
- package/dist/core/shaders/BlockNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/BlockNoise/index.js +13 -8
- package/dist/core/shaders/BlueNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/BlueNoise/index.js +13 -8
- package/dist/core/shaders/Blur/index.d.ts +6 -6
- package/dist/core/shaders/Blur/index.d.ts.map +1 -1
- package/dist/core/shaders/Blur/index.js +7 -6
- package/dist/core/shaders/Boids/index.d.ts.map +1 -1
- package/dist/core/shaders/Boids/index.js +9 -8
- package/dist/core/shaders/BokehBlur/index.d.ts +16 -16
- package/dist/core/shaders/BokehBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/BokehBlur/index.js +8 -6
- package/dist/core/shaders/BrickPattern/index.d.ts.map +1 -1
- package/dist/core/shaders/BrickPattern/index.js +10 -5
- package/dist/core/shaders/BrightnessContrast/index.d.ts.map +1 -1
- package/dist/core/shaders/BrightnessContrast/index.js +6 -5
- package/dist/core/shaders/BrushedMetal/index.d.ts.map +1 -1
- package/dist/core/shaders/BrushedMetal/index.js +12 -12
- package/dist/core/shaders/Bulge/index.d.ts +2 -16
- package/dist/core/shaders/Bulge/index.d.ts.map +1 -1
- package/dist/core/shaders/Bulge/index.js +6 -5
- package/dist/core/shaders/CRTScreen/index.js +6 -5
- package/dist/core/shaders/CarbonFiber/index.d.ts.map +1 -1
- package/dist/core/shaders/CarbonFiber/index.js +12 -12
- package/dist/core/shaders/Chalkboard/index.js +6 -5
- package/dist/core/shaders/ChannelBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/ChannelBlur/index.js +7 -6
- package/dist/core/shaders/CheckerWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/CheckerWipe/index.js +8 -5
- package/dist/core/shaders/Checkerboard/index.d.ts +0 -2
- package/dist/core/shaders/Checkerboard/index.d.ts.map +1 -1
- package/dist/core/shaders/Checkerboard/index.js +9 -6
- package/dist/core/shaders/Chevron/index.d.ts.map +1 -1
- package/dist/core/shaders/Chevron/index.js +8 -5
- package/dist/core/shaders/ChromaFlow/index.js +6 -6
- package/dist/core/shaders/ChromaticAberration/index.js +6 -5
- package/dist/core/shaders/Chrome/index.d.ts.map +1 -1
- package/dist/core/shaders/Chrome/index.js +12 -12
- package/dist/core/shaders/Circle/index.d.ts +0 -50
- package/dist/core/shaders/Circle/index.d.ts.map +1 -1
- package/dist/core/shaders/Circle/index.js +6 -7
- package/dist/core/shaders/ColorWheel/index.d.ts.map +1 -1
- package/dist/core/shaders/ColorWheel/index.js +8 -5
- package/dist/core/shaders/CompressionArtifacts/index.js +6 -5
- package/dist/core/shaders/ConcentricSpin/index.d.ts +3 -17
- package/dist/core/shaders/ConcentricSpin/index.d.ts.map +1 -1
- package/dist/core/shaders/ConcentricSpin/index.js +8 -6
- package/dist/core/shaders/ConicGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/ConicGradient/index.js +10 -5
- package/dist/core/shaders/ContourLines/index.d.ts +1 -1
- package/dist/core/shaders/ContourLines/index.d.ts.map +1 -1
- package/dist/core/shaders/ContourLines/index.js +7 -5
- package/dist/core/shaders/CornerPin/index.d.ts +0 -6
- package/dist/core/shaders/CornerPin/index.d.ts.map +1 -1
- package/dist/core/shaders/CornerPin/index.js +6 -5
- package/dist/core/shaders/Crescent/index.d.ts +0 -71
- package/dist/core/shaders/Crescent/index.d.ts.map +1 -1
- package/dist/core/shaders/Crescent/index.js +6 -7
- package/dist/core/shaders/Cross/index.d.ts +0 -71
- package/dist/core/shaders/Cross/index.d.ts.map +1 -1
- package/dist/core/shaders/Cross/index.js +6 -7
- package/dist/core/shaders/Crystal/index.d.ts.map +1 -1
- package/dist/core/shaders/Crystal/index.js +11 -11
- package/dist/core/shaders/CurlNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/CurlNoise/index.js +13 -8
- package/dist/core/shaders/CursorRipples/index.d.ts.map +1 -1
- package/dist/core/shaders/CursorRipples/index.js +7 -5
- package/dist/core/shaders/CursorTrail/index.d.ts.map +1 -1
- package/dist/core/shaders/CursorTrail/index.js +7 -5
- package/dist/core/shaders/DataMosh/index.d.ts.map +1 -1
- package/dist/core/shaders/DataMosh/index.js +6 -5
- package/dist/core/shaders/DiamondGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/DiamondGradient/index.js +10 -5
- package/dist/core/shaders/DiamondWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/DiamondWipe/index.js +8 -5
- package/dist/core/shaders/DiffuseBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/DiffuseBlur/index.js +6 -5
- package/dist/core/shaders/DisplacementMap/index.d.ts.map +1 -1
- package/dist/core/shaders/DisplacementMap/index.js +7 -5
- package/dist/core/shaders/Dither/index.d.ts.map +1 -1
- package/dist/core/shaders/Dither/index.js +6 -5
- package/dist/core/shaders/DotGrid/index.d.ts +0 -1
- package/dist/core/shaders/DotGrid/index.d.ts.map +1 -1
- package/dist/core/shaders/DotGrid/index.js +11 -6
- package/dist/core/shaders/DropShadow/index.d.ts.map +1 -1
- package/dist/core/shaders/DropShadow/index.js +8 -5
- package/dist/core/shaders/Duotone/index.d.ts.map +1 -1
- package/dist/core/shaders/Duotone/index.js +6 -5
- package/dist/core/shaders/Ellipse/index.d.ts +0 -65
- package/dist/core/shaders/Ellipse/index.d.ts.map +1 -1
- package/dist/core/shaders/Ellipse/index.js +6 -7
- package/dist/core/shaders/Emboss/index.d.ts.map +1 -1
- package/dist/core/shaders/Emboss/index.js +8 -10
- package/dist/core/shaders/Engraving/index.d.ts.map +1 -1
- package/dist/core/shaders/Engraving/index.js +8 -6
- package/dist/core/shaders/ErosionNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/ErosionNoise/index.js +13 -8
- package/dist/core/shaders/Exposure/index.d.ts.map +1 -1
- package/dist/core/shaders/Exposure/index.js +6 -5
- package/dist/core/shaders/FallingLines/index.d.ts.map +1 -1
- package/dist/core/shaders/FallingLines/index.js +8 -5
- package/dist/core/shaders/FilmGrain/index.d.ts.map +1 -1
- package/dist/core/shaders/FilmGrain/index.js +6 -5
- package/dist/core/shaders/FilmStock/index.d.ts +9 -10
- package/dist/core/shaders/FilmStock/index.d.ts.map +1 -1
- package/dist/core/shaders/FilmStock/index.js +7 -6
- package/dist/core/shaders/Flip/index.d.ts.map +1 -1
- package/dist/core/shaders/Flip/index.js +6 -5
- package/dist/core/shaders/FloatingParticles/index.d.ts.map +1 -1
- package/dist/core/shaders/FloatingParticles/index.js +9 -8
- package/dist/core/shaders/FlowField/index.d.ts.map +1 -1
- package/dist/core/shaders/FlowField/index.js +8 -6
- package/dist/core/shaders/Flower/index.d.ts +0 -71
- package/dist/core/shaders/Flower/index.d.ts.map +1 -1
- package/dist/core/shaders/Flower/index.js +6 -7
- package/dist/core/shaders/FlowingGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/FlowingGradient/index.js +8 -6
- package/dist/core/shaders/FlutedGlass/index.d.ts.map +1 -1
- package/dist/core/shaders/FlutedGlass/index.js +7 -5
- package/dist/core/shaders/Fog/index.d.ts +1 -9
- package/dist/core/shaders/Fog/index.d.ts.map +1 -1
- package/dist/core/shaders/Fog/index.js +8 -5
- package/dist/core/shaders/Form3D/index.d.ts.map +1 -1
- package/dist/core/shaders/Form3D/index.js +7 -5
- package/dist/core/shaders/FractalNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/FractalNoise/index.js +12 -7
- package/dist/core/shaders/Frost/index.d.ts.map +1 -1
- package/dist/core/shaders/Frost/index.js +11 -11
- package/dist/core/shaders/GaborNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/GaborNoise/index.js +13 -8
- package/dist/core/shaders/Glass/index.d.ts.map +1 -1
- package/dist/core/shaders/Glass/index.js +9 -11
- package/dist/core/shaders/GlassTiles/index.d.ts.map +1 -1
- package/dist/core/shaders/GlassTiles/index.js +7 -5
- package/dist/core/shaders/Glitch/index.js +6 -5
- package/dist/core/shaders/Glow/index.d.ts +22 -26
- package/dist/core/shaders/Glow/index.d.ts.map +1 -1
- package/dist/core/shaders/Glow/index.js +7 -6
- package/dist/core/shaders/Godrays/index.d.ts.map +1 -1
- package/dist/core/shaders/Godrays/index.js +9 -5
- package/dist/core/shaders/Goo/index.d.ts.map +1 -1
- package/dist/core/shaders/Goo/index.js +9 -10
- package/dist/core/shaders/GradientMap/index.d.ts.map +1 -1
- package/dist/core/shaders/GradientMap/index.js +7 -5
- package/dist/core/shaders/Grayscale/index.d.ts.map +1 -1
- package/dist/core/shaders/Grayscale/index.js +6 -5
- package/dist/core/shaders/Grid/index.d.ts +0 -1
- package/dist/core/shaders/Grid/index.d.ts.map +1 -1
- package/dist/core/shaders/Grid/index.js +11 -6
- package/dist/core/shaders/GridDistortion/index.d.ts +0 -6
- package/dist/core/shaders/GridDistortion/index.d.ts.map +1 -1
- package/dist/core/shaders/GridDistortion/index.js +6 -5
- package/dist/core/shaders/Group/index.js +6 -5
- package/dist/core/shaders/HTMLInCanvas/index.d.ts.map +1 -1
- package/dist/core/shaders/HTMLInCanvas/index.js +7 -5
- package/dist/core/shaders/Halftone/index.d.ts.map +1 -1
- package/dist/core/shaders/Halftone/index.js +7 -5
- package/dist/core/shaders/Heart/index.d.ts +0 -59
- package/dist/core/shaders/Heart/index.d.ts.map +1 -1
- package/dist/core/shaders/Heart/index.js +6 -7
- package/dist/core/shaders/Heatmap/index.d.ts.map +1 -1
- package/dist/core/shaders/Heatmap/index.js +10 -11
- package/dist/core/shaders/HexGrid/index.d.ts.map +1 -1
- package/dist/core/shaders/HexGrid/index.js +10 -5
- package/dist/core/shaders/Hologram/index.d.ts.map +1 -1
- package/dist/core/shaders/Hologram/index.js +10 -11
- package/dist/core/shaders/Holographic/index.d.ts.map +1 -1
- package/dist/core/shaders/Holographic/index.js +11 -11
- package/dist/core/shaders/HueShift/index.d.ts.map +1 -1
- package/dist/core/shaders/HueShift/index.js +7 -5
- package/dist/core/shaders/ImageTexture/index.d.ts +0 -6
- 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 +1 -9
- package/dist/core/shaders/InkFlow/index.d.ts.map +1 -1
- package/dist/core/shaders/InkFlow/index.js +7 -5
- package/dist/core/shaders/Invert/index.d.ts.map +1 -1
- package/dist/core/shaders/Invert/index.js +6 -5
- package/dist/core/shaders/IrisWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/IrisWipe/index.js +8 -5
- package/dist/core/shaders/IsometricCubes/index.d.ts.map +1 -1
- package/dist/core/shaders/IsometricCubes/index.js +10 -5
- package/dist/core/shaders/Kaleidoscope/index.d.ts +2 -16
- package/dist/core/shaders/Kaleidoscope/index.d.ts.map +1 -1
- package/dist/core/shaders/Kaleidoscope/index.js +7 -5
- package/dist/core/shaders/KeyFrames/index.d.ts.map +1 -1
- package/dist/core/shaders/KeyFrames/index.js +7 -5
- package/dist/core/shaders/LensDistortion/index.js +6 -6
- package/dist/core/shaders/LensFlare/index.d.ts.map +1 -1
- package/dist/core/shaders/LensFlare/index.js +10 -5
- package/dist/core/shaders/LightEdge/index.d.ts.map +1 -1
- package/dist/core/shaders/LightEdge/index.js +10 -11
- package/dist/core/shaders/LightLeak/index.d.ts.map +1 -1
- package/dist/core/shaders/LightLeak/index.js +10 -6
- package/dist/core/shaders/Line/index.js +6 -5
- package/dist/core/shaders/LinearBlur/index.d.ts +2 -1
- package/dist/core/shaders/LinearBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/LinearBlur/index.js +8 -5
- package/dist/core/shaders/LinearGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/LinearGradient/index.js +8 -5
- package/dist/core/shaders/LinearWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/LinearWipe/index.js +8 -5
- package/dist/core/shaders/LiquidMetal/index.d.ts.map +1 -1
- package/dist/core/shaders/LiquidMetal/index.js +12 -12
- package/dist/core/shaders/Liquify/index.d.ts +0 -6
- package/dist/core/shaders/Liquify/index.d.ts.map +1 -1
- package/dist/core/shaders/Liquify/index.js +6 -5
- package/dist/core/shaders/MagneticFilings/index.d.ts.map +1 -1
- package/dist/core/shaders/MagneticFilings/index.js +9 -8
- package/dist/core/shaders/Marble/index.d.ts.map +1 -1
- package/dist/core/shaders/Marble/index.js +9 -6
- package/dist/core/shaders/Mirror/index.d.ts +2 -16
- package/dist/core/shaders/Mirror/index.d.ts.map +1 -1
- package/dist/core/shaders/Mirror/index.js +7 -5
- package/dist/core/shaders/MultiPointGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/MultiPointGradient/index.js +7 -5
- package/dist/core/shaders/Neon/index.d.ts.map +1 -1
- package/dist/core/shaders/Neon/index.js +6 -9
- package/dist/core/shaders/NoiseDissolve/index.d.ts.map +1 -1
- package/dist/core/shaders/NoiseDissolve/index.js +9 -6
- package/dist/core/shaders/ObjectTracker/index.d.ts.map +1 -1
- package/dist/core/shaders/ObjectTracker/index.js +9 -6
- package/dist/core/shaders/PagePeel/index.d.ts.map +1 -1
- package/dist/core/shaders/PagePeel/index.js +7 -5
- package/dist/core/shaders/Paper/index.js +7 -6
- package/dist/core/shaders/Parallelogram/index.d.ts +0 -71
- package/dist/core/shaders/Parallelogram/index.d.ts.map +1 -1
- package/dist/core/shaders/Parallelogram/index.js +6 -7
- package/dist/core/shaders/ParticleField/index.d.ts.map +1 -1
- package/dist/core/shaders/ParticleField/index.js +9 -8
- package/dist/core/shaders/ParticleFlow/index.d.ts +1 -6
- package/dist/core/shaders/ParticleFlow/index.d.ts.map +1 -1
- package/dist/core/shaders/ParticleFlow/index.js +9 -8
- package/dist/core/shaders/Particles/index.d.ts.map +1 -1
- package/dist/core/shaders/Particles/index.js +10 -11
- package/dist/core/shaders/PerlinNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/PerlinNoise/index.js +13 -8
- package/dist/core/shaders/Perspective/index.d.ts +0 -12
- package/dist/core/shaders/Perspective/index.d.ts.map +1 -1
- package/dist/core/shaders/Perspective/index.js +7 -5
- package/dist/core/shaders/PixelSort/index.js +6 -5
- package/dist/core/shaders/PixelThrow/index.d.ts +8 -9
- package/dist/core/shaders/PixelThrow/index.d.ts.map +1 -1
- package/dist/core/shaders/PixelThrow/index.js +6 -6
- package/dist/core/shaders/Pixelate/index.js +6 -5
- package/dist/core/shaders/Plasma/index.d.ts +2 -2
- package/dist/core/shaders/Plasma/index.d.ts.map +1 -1
- package/dist/core/shaders/Plasma/index.js +12 -6
- package/dist/core/shaders/Plastic/index.d.ts.map +1 -1
- package/dist/core/shaders/Plastic/index.js +11 -11
- package/dist/core/shaders/PolarCoordinates/index.d.ts +2 -16
- package/dist/core/shaders/PolarCoordinates/index.d.ts.map +1 -1
- package/dist/core/shaders/PolarCoordinates/index.js +7 -5
- package/dist/core/shaders/Polygon/index.d.ts +0 -71
- package/dist/core/shaders/Polygon/index.d.ts.map +1 -1
- package/dist/core/shaders/Polygon/index.js +6 -7
- package/dist/core/shaders/Posterize/index.d.ts.map +1 -1
- package/dist/core/shaders/Posterize/index.js +6 -5
- package/dist/core/shaders/Prism/index.d.ts +2 -1
- package/dist/core/shaders/Prism/index.d.ts.map +1 -1
- package/dist/core/shaders/Prism/index.js +6 -5
- package/dist/core/shaders/ProgressiveBlur/index.d.ts +16 -16
- package/dist/core/shaders/ProgressiveBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/ProgressiveBlur/index.js +8 -6
- package/dist/core/shaders/RadialGradient/index.d.ts.map +1 -1
- package/dist/core/shaders/RadialGradient/index.js +10 -5
- package/dist/core/shaders/RadialWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/RadialWipe/index.js +8 -5
- package/dist/core/shaders/RandomBars/index.d.ts.map +1 -1
- package/dist/core/shaders/RandomBars/index.js +9 -6
- package/dist/core/shaders/ReactionDiffusion/index.d.ts.map +1 -1
- package/dist/core/shaders/ReactionDiffusion/index.js +8 -5
- package/dist/core/shaders/RectangularCoordinates/index.d.ts +2 -16
- package/dist/core/shaders/RectangularCoordinates/index.d.ts.map +1 -1
- package/dist/core/shaders/RectangularCoordinates/index.js +7 -5
- package/dist/core/shaders/ReflectivePlane/index.d.ts.map +1 -1
- package/dist/core/shaders/ReflectivePlane/index.js +7 -6
- package/dist/core/shaders/Repeater/index.js +6 -5
- package/dist/core/shaders/Ring/index.d.ts +0 -59
- package/dist/core/shaders/Ring/index.d.ts.map +1 -1
- package/dist/core/shaders/Ring/index.js +6 -7
- package/dist/core/shaders/RippleWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/RippleWipe/index.js +8 -5
- package/dist/core/shaders/Ripples/index.js +6 -5
- package/dist/core/shaders/RoundedRect/index.d.ts +0 -71
- package/dist/core/shaders/RoundedRect/index.d.ts.map +1 -1
- package/dist/core/shaders/RoundedRect/index.js +6 -7
- package/dist/core/shaders/Saturation/index.d.ts.map +1 -1
- package/dist/core/shaders/Saturation/index.js +6 -5
- package/dist/core/shaders/Scratches/index.js +10 -8
- package/dist/core/shaders/Sharpness/index.d.ts.map +1 -1
- package/dist/core/shaders/Sharpness/index.js +6 -5
- package/dist/core/shaders/Shatter/index.js +6 -6
- package/dist/core/shaders/SimplexNoise/index.d.ts +0 -18
- package/dist/core/shaders/SimplexNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/SimplexNoise/index.js +13 -7
- package/dist/core/shaders/SineWave/index.d.ts.map +1 -1
- package/dist/core/shaders/SineWave/index.js +7 -5
- package/dist/core/shaders/SliceWipe/index.d.ts.map +1 -1
- package/dist/core/shaders/SliceWipe/index.js +7 -5
- package/dist/core/shaders/Smoke/index.d.ts +1 -9
- package/dist/core/shaders/Smoke/index.d.ts.map +1 -1
- package/dist/core/shaders/Smoke/index.js +7 -5
- package/dist/core/shaders/SmokeFill/index.d.ts +1 -9
- package/dist/core/shaders/SmokeFill/index.d.ts.map +1 -1
- package/dist/core/shaders/SmokeFill/index.js +9 -10
- package/dist/core/shaders/SmokeFlow/index.d.ts +1 -9
- package/dist/core/shaders/SmokeFlow/index.d.ts.map +1 -1
- package/dist/core/shaders/SmokeFlow/index.js +7 -5
- package/dist/core/shaders/Solarize/index.d.ts.map +1 -1
- package/dist/core/shaders/Solarize/index.js +6 -5
- package/dist/core/shaders/SolidColor/index.js +2 -2
- package/dist/core/shaders/Spherize/index.js +6 -5
- package/dist/core/shaders/Spiral/index.d.ts.map +1 -1
- package/dist/core/shaders/Spiral/index.js +7 -5
- package/dist/core/shaders/Star/index.d.ts +0 -71
- package/dist/core/shaders/Star/index.d.ts.map +1 -1
- package/dist/core/shaders/Star/index.js +6 -7
- package/dist/core/shaders/Stone/index.js +4 -4
- package/dist/core/shaders/Strands/index.d.ts.map +1 -1
- package/dist/core/shaders/Strands/index.js +7 -5
- package/dist/core/shaders/Stretch/index.d.ts +2 -16
- package/dist/core/shaders/Stretch/index.d.ts.map +1 -1
- package/dist/core/shaders/Stretch/index.js +7 -5
- package/dist/core/shaders/Stripes/index.d.ts +0 -1
- package/dist/core/shaders/Stripes/index.d.ts.map +1 -1
- package/dist/core/shaders/Stripes/index.js +10 -6
- package/dist/core/shaders/StudioBackground/index.d.ts.map +1 -1
- package/dist/core/shaders/StudioBackground/index.js +9 -5
- package/dist/core/shaders/SunBurst/index.d.ts.map +1 -1
- package/dist/core/shaders/SunBurst/index.js +9 -5
- package/dist/core/shaders/Surface3D/index.d.ts.map +1 -1
- package/dist/core/shaders/Surface3D/index.js +8 -7
- package/dist/core/shaders/Swirl/index.js +6 -5
- package/dist/core/shaders/Teardrop/index.d.ts +0 -65
- package/dist/core/shaders/Teardrop/index.d.ts.map +1 -1
- package/dist/core/shaders/Teardrop/index.js +6 -7
- package/dist/core/shaders/Text/index.d.ts.map +1 -1
- package/dist/core/shaders/Text/index.js +10 -6
- package/dist/core/shaders/ThinFilm/index.d.ts.map +1 -1
- package/dist/core/shaders/ThinFilm/index.js +8 -9
- package/dist/core/shaders/TiltShift/index.d.ts +16 -16
- package/dist/core/shaders/TiltShift/index.d.ts.map +1 -1
- package/dist/core/shaders/TiltShift/index.js +8 -6
- package/dist/core/shaders/TimeTrail/index.d.ts.map +1 -1
- package/dist/core/shaders/TimeTrail/index.js +6 -6
- package/dist/core/shaders/Tint/index.d.ts.map +1 -1
- package/dist/core/shaders/Tint/index.js +6 -5
- package/dist/core/shaders/Trapezoid/index.d.ts +0 -71
- package/dist/core/shaders/Trapezoid/index.d.ts.map +1 -1
- package/dist/core/shaders/Trapezoid/index.js +6 -7
- package/dist/core/shaders/TriangularGrid/index.d.ts.map +1 -1
- package/dist/core/shaders/TriangularGrid/index.js +10 -5
- package/dist/core/shaders/Tritone/index.d.ts.map +1 -1
- package/dist/core/shaders/Tritone/index.js +6 -5
- package/dist/core/shaders/Truchet/index.d.ts.map +1 -1
- package/dist/core/shaders/Truchet/index.js +10 -5
- package/dist/core/shaders/Twirl/index.d.ts +2 -16
- package/dist/core/shaders/Twirl/index.d.ts.map +1 -1
- package/dist/core/shaders/Twirl/index.js +6 -5
- package/dist/core/shaders/VHS/index.js +6 -5
- package/dist/core/shaders/VenetianBlinds/index.d.ts.map +1 -1
- package/dist/core/shaders/VenetianBlinds/index.js +8 -5
- package/dist/core/shaders/Vesica/index.d.ts +0 -65
- package/dist/core/shaders/Vesica/index.d.ts.map +1 -1
- package/dist/core/shaders/Vesica/index.js +6 -7
- package/dist/core/shaders/Vibrance/index.d.ts.map +1 -1
- package/dist/core/shaders/Vibrance/index.js +6 -5
- package/dist/core/shaders/VideoTexture/index.d.ts +0 -25
- package/dist/core/shaders/VideoTexture/index.d.ts.map +1 -1
- package/dist/core/shaders/VideoTexture/index.js +7 -7
- package/dist/core/shaders/Vignette/index.d.ts.map +1 -1
- package/dist/core/shaders/Vignette/index.js +6 -5
- package/dist/core/shaders/Voronoi/index.d.ts.map +1 -1
- package/dist/core/shaders/Voronoi/index.js +11 -5
- package/dist/core/shaders/Water/index.d.ts.map +1 -1
- package/dist/core/shaders/Water/index.js +11 -11
- package/dist/core/shaders/Watercolor/index.js +7 -6
- package/dist/core/shaders/WaveDistortion/index.d.ts +0 -6
- package/dist/core/shaders/WaveDistortion/index.d.ts.map +1 -1
- package/dist/core/shaders/WaveDistortion/index.js +7 -5
- package/dist/core/shaders/WaveletNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/WaveletNoise/index.js +13 -8
- package/dist/core/shaders/Weave/index.d.ts.map +1 -1
- package/dist/core/shaders/Weave/index.js +10 -5
- package/dist/core/shaders/WebcamTexture/index.d.ts +0 -6
- package/dist/core/shaders/WebcamTexture/index.d.ts.map +1 -1
- package/dist/core/shaders/WebcamTexture/index.js +8 -7
- package/dist/core/shaders/Wool/index.js +4 -4
- package/dist/core/shaders/WorleyNoise/index.d.ts +2 -2
- package/dist/core/shaders/WorleyNoise/index.d.ts.map +1 -1
- package/dist/core/shaders/WorleyNoise/index.js +12 -5
- package/dist/core/shaders/ZoomBlur/index.d.ts +2 -1
- package/dist/core/shaders/ZoomBlur/index.d.ts.map +1 -1
- package/dist/core/shaders/ZoomBlur/index.js +7 -5
- package/dist/core/tone-DPUvX6X0.js +705 -0
- package/dist/core/utilities/halfUvProps.d.ts +35 -0
- package/dist/core/utilities/halfUvProps.d.ts.map +1 -0
- package/dist/core/utilities/measure.d.ts.map +1 -1
- package/dist/core/utilities/propConfigs.d.ts +106 -0
- package/dist/core/utilities/propConfigs.d.ts.map +1 -0
- package/dist/core/utilities/transformations/index.js +1 -1
- package/dist/js/bundle.js +176 -176
- package/dist/js/createShader.js +1 -1
- package/dist/react/Shader.js +1 -1
- package/dist/react/bundle.js +176 -176
- package/dist/registry.js +99 -90
- package/dist/solid/engine/Shader.js +1 -1
- package/dist/svelte/index.js +1 -1
- package/dist/vue/Shader.vue_vue_type_script_setup_true_lang.js +1 -1
- package/package.json +1 -1
- package/dist/core/Arc-DhhcsMqr.js +0 -331
- package/dist/core/BarnDoors-Cnyfsla8.js +0 -447
- package/dist/core/BlockDissolve-i8V6gmZw.js +0 -365
- package/dist/core/Blur-B8NcZJdr.js +0 -701
- package/dist/core/Checkerboard-BnWdSZLM.js +0 -709
- package/dist/core/Circle-CJ4IbgBH.js +0 -358
- package/dist/core/Crescent-BKcpTzwd.js +0 -335
- package/dist/core/Cross-CDUSIOgx.js +0 -335
- package/dist/core/Ellipse-NdZQjjl7.js +0 -316
- package/dist/core/Flower--rN6c2HY.js +0 -335
- package/dist/core/Fog-2iNe3zZl.js +0 -5667
- package/dist/core/Glow-D_nSsYo1.js +0 -2051
- package/dist/core/Grid-D8ewrixy.js +0 -1346
- package/dist/core/Heart-0eDZ50ZK.js +0 -297
- package/dist/core/ImageTexture-B5oPuXeI.js +0 -183
- package/dist/core/InkFlow-C7l_qlaJ.js +0 -4983
- package/dist/core/IrisWipe-Dg9iiTjF.js +0 -418
- package/dist/core/LinearWipe-D5UkI1cK.js +0 -423
- package/dist/core/Parallelogram-D7bW1gMV.js +0 -335
- package/dist/core/Plasma-zC1y0At6.js +0 -715
- package/dist/core/Polygon-0kVtkdec.js +0 -379
- package/dist/core/RadialWipe-DfJ3dL7p.js +0 -528
- package/dist/core/RandomBars-B-EaAz9c.js +0 -490
- package/dist/core/RoundedRect-B2EDoIqT.js +0 -336
- package/dist/core/Smoke-CFr-A3JD.js +0 -5003
- package/dist/core/SmokeFill-DglhxF4x.js +0 -7118
- package/dist/core/SmokeFlow-CC1tfLRh.js +0 -4610
- package/dist/core/Star-DqkPHXlP.js +0 -335
- package/dist/core/Teardrop-b8XQR6NO.js +0 -316
- package/dist/core/VenetianBlinds-H8OVGxhT.js +0 -459
- package/dist/core/Vesica-C8MrL_up.js +0 -316
- package/dist/core/VideoTexture--U8aiyP1.js +0 -927
- package/dist/core/Voronoi-BW4RE3MQ.js +0 -935
- package/dist/core/WebcamTexture--GTVU-Bm.js +0 -220
- package/dist/core/WorleyNoise-i7i0azT8.js +0 -1667
- package/dist/core/compute-Ax-p6Ubc.js +0 -31
- package/dist/core/dataEncoding-CEmpiitu.js +0 -24
- package/dist/core/device-BODv_4aH.js +0 -10
- package/dist/core/gpu/kit/effects/prism.d.ts +0 -111
- package/dist/core/gpu/kit/effects/prism.d.ts.map +0 -1
- package/dist/core/naturalSize-BPCi_I-Z.js +0 -24
- package/dist/core/noiseColor-BQAO-Rjk.js +0 -103
- package/dist/core/porters-D_xmIPz2.js +0 -991
- package/dist/core/shaderRegistry-DFRVhoj2.js +0 -431
- /package/dist/core/{fonts-DxVn9e-I.js → fonts-ScBvKolx.js} +0 -0
- /package/dist/core/{transformations-C7gn_5rF.js → transformations-B-zNWNdd.js} +0 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { TgpuRoot, TgpuTexture, TgpuTextureView } from 'typegpu';
|
|
1
|
+
import { TgpuRoot, TgpuTexture, TgpuTextureView, TgpuBindGroupLayout, TgpuFn } from 'typegpu';
|
|
2
2
|
import { ComputeStep } from '../compute';
|
|
3
|
+
import { Expr, GpuComputeNode, GpuFragmentParams, GpuMapInfo, GpuMapWindow } from '../contract';
|
|
3
4
|
|
|
4
5
|
import * as d from 'typegpu/data';
|
|
5
6
|
/** Default compute resolution. ~655k pixels — comparable to 0.5× of a 1080p canvas.
|
|
@@ -77,7 +78,7 @@ export interface VariableBlurComputeResult {
|
|
|
77
78
|
* BlurCompute` calls this and then allocates the resources + pipelines.
|
|
78
79
|
*/
|
|
79
80
|
export declare function buildFixedBlurGraph(halfKernel: number, computeWidth: number, computeHeight: number): {
|
|
80
|
-
hLayout:
|
|
81
|
+
hLayout: TgpuBindGroupLayout<{
|
|
81
82
|
input: {
|
|
82
83
|
texture: d.WgslTexture2d<d.F32>;
|
|
83
84
|
};
|
|
@@ -96,7 +97,7 @@ export declare function buildFixedBlurGraph(halfKernel: number, computeWidth: nu
|
|
|
96
97
|
}>;
|
|
97
98
|
};
|
|
98
99
|
}>;
|
|
99
|
-
vLayout:
|
|
100
|
+
vLayout: TgpuBindGroupLayout<{
|
|
100
101
|
src: {
|
|
101
102
|
storageTexture: d.WgslStorageTexture2d<"rgba16float", string>;
|
|
102
103
|
};
|
|
@@ -113,8 +114,8 @@ export declare function buildFixedBlurGraph(halfKernel: number, computeWidth: nu
|
|
|
113
114
|
}>;
|
|
114
115
|
};
|
|
115
116
|
}>;
|
|
116
|
-
kernelH:
|
|
117
|
-
kernelV:
|
|
117
|
+
kernelH: TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>;
|
|
118
|
+
kernelV: TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>;
|
|
118
119
|
HParams: d.WgslStruct<{
|
|
119
120
|
activeHalf: d.I32;
|
|
120
121
|
inputWidth: d.F32;
|
|
@@ -142,7 +143,7 @@ export declare function createGaussianBlurCompute(root: TgpuRoot, inputTexture:
|
|
|
142
143
|
* baked into the kernel bodies (comptime), so enabling it changes the emitted WGSL.
|
|
143
144
|
*/
|
|
144
145
|
export declare function buildVariableBlurGraph(halfKernel: number, computeWidth: number, computeHeight: number, jitterTaps: boolean): {
|
|
145
|
-
hLayout:
|
|
146
|
+
hLayout: TgpuBindGroupLayout<{
|
|
146
147
|
blurMap: {
|
|
147
148
|
storageTexture: d.WgslStorageTexture2d<"rgba32float", string>;
|
|
148
149
|
};
|
|
@@ -163,7 +164,7 @@ export declare function buildVariableBlurGraph(halfKernel: number, computeWidth:
|
|
|
163
164
|
}>;
|
|
164
165
|
};
|
|
165
166
|
}>;
|
|
166
|
-
vLayout:
|
|
167
|
+
vLayout: TgpuBindGroupLayout<{
|
|
167
168
|
blurMap: {
|
|
168
169
|
storageTexture: d.WgslStorageTexture2d<"rgba32float", string>;
|
|
169
170
|
};
|
|
@@ -183,8 +184,8 @@ export declare function buildVariableBlurGraph(halfKernel: number, computeWidth:
|
|
|
183
184
|
}>;
|
|
184
185
|
};
|
|
185
186
|
}>;
|
|
186
|
-
kernelH:
|
|
187
|
-
kernelV:
|
|
187
|
+
kernelH: TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>;
|
|
188
|
+
kernelV: TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>;
|
|
188
189
|
HParams: d.WgslStruct<{
|
|
189
190
|
inputWidth: d.F32;
|
|
190
191
|
inputHeight: d.F32;
|
|
@@ -206,4 +207,282 @@ export declare function buildVariableBlurGraph(halfKernel: number, computeWidth:
|
|
|
206
207
|
export declare function createVariableGaussianBlurCompute(root: TgpuRoot, inputTexture: BlurInputTexture | null, inputWidth: number, inputHeight: number, onCleanup: (cb: () => void) => void, halfKernel?: number, computeWidth?: number, computeHeight?: number, options?: {
|
|
207
208
|
jitterTaps?: boolean;
|
|
208
209
|
}): VariableBlurComputeResult;
|
|
210
|
+
/**
|
|
211
|
+
* Normalized Gaussian weights for `count` taps spread over ±1 of a Gaussian with std-dev `sigma`,
|
|
212
|
+
* i.e. tap `i` sits at `t = (i/(count-1) - 0.5) * 2`. Computed on the CPU at build time so the
|
|
213
|
+
* emitted WGSL carries literal weights instead of `exp()` per tap per pixel.
|
|
214
|
+
*
|
|
215
|
+
* σ² is rounded to 15 significant digits before the divide. `0.8 * 0.8` is `0.6400000000000001` in
|
|
216
|
+
* float64, and these weights land in the WGSL as FULL-PRECISION literals — the un-rounded product
|
|
217
|
+
* would move every consumer's snapshot for a one-ULP difference. 15 digits is lossless for any
|
|
218
|
+
* decimal σ an author writes, and reproduces the hand-written `/ 0.64` tables bit-for-bit.
|
|
219
|
+
*/
|
|
220
|
+
export declare function gaussianTapWeights(count: number, sigma: number): number[];
|
|
221
|
+
export interface UnrolledTapGatherConfig {
|
|
222
|
+
/** One weight per tap; its length IS the tap count. Typically {@link gaussianTapWeights}. */
|
|
223
|
+
weights: number[];
|
|
224
|
+
/** Sample coordinate for tap `i` (0-based). */
|
|
225
|
+
tapCoord: (tapIndex: number) => Expr;
|
|
226
|
+
/** Sample the source at a coordinate — usually `(uv) => texture.sample(uv)`. */
|
|
227
|
+
sample: (coord: Expr) => Expr;
|
|
228
|
+
/**
|
|
229
|
+
* Reduce each sample to one channel before weighting (`'a'`, `'r'`, …). Omit to gather the
|
|
230
|
+
* whole vec4. Used by the alpha-silhouette blurs (DropShadow) that only carry one channel.
|
|
231
|
+
*/
|
|
232
|
+
component?: string;
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Build the weighted sum of N unrolled taps: `Σ sample(tapCoord(i)) * weights[i]`.
|
|
236
|
+
*
|
|
237
|
+
* WHY UNROLLED. `textureSample` is illegal under non-uniform control flow, so a runtime loop over
|
|
238
|
+
* taps is not available in a fragment shader. The builder emits a flat expression tree instead —
|
|
239
|
+
* one `textureSample` per tap, no control flow at all. The tree is left-folded in tap order
|
|
240
|
+
* (`((t0 + t1) + t2) …`) because float addition is not associative: any other grouping is a
|
|
241
|
+
* different result.
|
|
242
|
+
*
|
|
243
|
+
* The caller owns the alpha convention. When the source is a premultiplied RTT (the normal case
|
|
244
|
+
* for a filter) the result is premultiplied — finish with `blend.unpremultiplyAlpha`, or let
|
|
245
|
+
* `defineRttFilter` append that tail.
|
|
246
|
+
*/
|
|
247
|
+
export declare function unrolledTapGather(config: UnrolledTapGatherConfig): Expr;
|
|
248
|
+
/**
|
|
249
|
+
* The four map-source channels a blur radius can be driven by — the same set the fragment path's
|
|
250
|
+
* `resolveMapForProp` supports. A BUILD-TIME constant at every consumer: the channel selects one
|
|
251
|
+
* of the memoized fns below, so each channel emits its own specialised WGSL.
|
|
252
|
+
*/
|
|
253
|
+
export type BlurMapChannel = 'luminance' | 'luminanceInverted' | 'alpha' | 'alphaInverted';
|
|
254
|
+
/**
|
|
255
|
+
* Struct fields for the map-source canvas dimensions. Spread into a fill kernel's params struct so
|
|
256
|
+
* the kernel can map its compute pixel onto the source's canvas pixel. Spread ORDER is
|
|
257
|
+
* load-bearing (it is the uniform struct's member order) — these go before the remap window, which
|
|
258
|
+
* is the order all six kernels already used.
|
|
259
|
+
*/
|
|
260
|
+
export declare const MAP_SOURCE_DIM_FIELDS: {
|
|
261
|
+
readonly inputWidth: d.F32;
|
|
262
|
+
readonly inputHeight: d.F32;
|
|
263
|
+
};
|
|
264
|
+
/** Struct fields for the remap window — the CPU side of these is {@link GpuMapWindow}. */
|
|
265
|
+
export declare const REMAP_WINDOW_FIELDS: {
|
|
266
|
+
readonly inputMin: d.F32;
|
|
267
|
+
readonly inputMax: d.F32;
|
|
268
|
+
readonly outputMin: d.F32;
|
|
269
|
+
readonly outputMax: d.F32;
|
|
270
|
+
readonly curve: d.F32;
|
|
271
|
+
};
|
|
272
|
+
/**
|
|
273
|
+
* The driving scalar a map source contributes at one texel, for `channel`. Memoized and `$name`d
|
|
274
|
+
* per channel (C3): a shader picks one at graph-build time and calls it from its kernel body.
|
|
275
|
+
*
|
|
276
|
+
* Deliberately `dot(rgb, vec3(0.2126, 0.7152, 0.0722))` rather than `tone.luma709`, which spells
|
|
277
|
+
* the same weights as a multiply-add chain. Same standard, different instruction sequence — and
|
|
278
|
+
* these kernels are gated byte-identical.
|
|
279
|
+
*/
|
|
280
|
+
export declare function mapSourceScalar(channel: BlurMapChannel): TgpuFn<(sample: d.Vec4f) => d.F32>;
|
|
281
|
+
/**
|
|
282
|
+
* The map remap window, identical to the fragment path's: normalise `raw` into the input window,
|
|
283
|
+
* apply the curve as an exponent (`2^(-curve·2)`, so 0 is linear and the sign flips the bend), and
|
|
284
|
+
* mix across the output window. The input range is guarded against a zero-width window.
|
|
285
|
+
*
|
|
286
|
+
* Six scalar args rather than a struct (C1's threshold is "about five") because every consumer
|
|
287
|
+
* reads these straight off its own uniform struct — a struct param here would either force a
|
|
288
|
+
* per-kernel uniform-layout change or an inline struct construction, and these kernels are gated
|
|
289
|
+
* byte-identical below the call.
|
|
290
|
+
*/
|
|
291
|
+
export declare const applyRemapWindow: TgpuFn<(raw: d.F32, inputMin: d.F32, inputMax: d.F32, outputMin: d.F32, outputMax: d.F32, curve: d.F32) => d.F32>;
|
|
292
|
+
/** Spread a live {@link GpuMapWindow} into a fill kernel's params write. */
|
|
293
|
+
export declare function remapWindowValues(window: GpuMapWindow): GpuMapWindow;
|
|
294
|
+
/**
|
|
295
|
+
* Bright-pixel extraction for a bloom, at one compute pixel.
|
|
296
|
+
*
|
|
297
|
+
* Two things are happening. First, the canvas-pixel FOOTPRINT of this compute pixel is
|
|
298
|
+
* area-averaged over a 4×4 stratified grid rather than point-sampled: that is energy-preserving, so
|
|
299
|
+
* a hairline or a dither dot contributes in proportion to its coverage instead of shimmering on and
|
|
300
|
+
* off as the grids slide past each other. Second, the threshold has a quadratic soft knee (the
|
|
301
|
+
* Unity / Call-of-Duty bloom curve) so brightness ramps INTO the bloom around the threshold instead
|
|
302
|
+
* of popping, and the mask is luminance-normalised so the extracted colour keeps its hue.
|
|
303
|
+
*
|
|
304
|
+
* Returns the extracted (premultiplied) colour to store in the bright buffer. The texture arrives
|
|
305
|
+
* as an fn argument per C6.
|
|
306
|
+
*/
|
|
307
|
+
export declare const bloomExtractSoftKnee: TgpuFn<(childTexture: d.WgslTexture2d<d.F32>, cx: d.U32, cy: d.U32, inputSize: d.Vec2f, computeSize: d.Vec2f, threshold: d.F32) => d.Vec4f>;
|
|
308
|
+
/**
|
|
309
|
+
* A fill graph: the bind-group layout, the kernel that writes the radius map (and, for a bloom, the
|
|
310
|
+
* bright buffer), and the params struct. Built GPU-free so the kernel `tgpu.resolve`s for snapshots.
|
|
311
|
+
*/
|
|
312
|
+
export interface BlurFillGraph {
|
|
313
|
+
layout: TgpuBindGroupLayout;
|
|
314
|
+
kernel: (cx: number, cy: number) => void;
|
|
315
|
+
Params: d.AnyWgslStruct;
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* The bloom pre-pass graph with a UNIFORM blur radius: bright-extract the canvas-res child RTT into
|
|
319
|
+
* `brightMap` and write `params.size` into every texel of `blurMap`.
|
|
320
|
+
*
|
|
321
|
+
* `kernelName` is the emitted WGSL fn name — pass the consumer's existing name so its snapshot
|
|
322
|
+
* doesn't move.
|
|
323
|
+
*/
|
|
324
|
+
export declare function buildBloomExtractGraph(computeWidth: number, computeHeight: number, kernelName: string): {
|
|
325
|
+
layout: TgpuBindGroupLayout<{
|
|
326
|
+
childTexture: {
|
|
327
|
+
texture: d.WgslTexture2d<d.F32>;
|
|
328
|
+
};
|
|
329
|
+
brightMap: {
|
|
330
|
+
storageTexture: d.WgslStorageTexture2d<"rgba16float", string>;
|
|
331
|
+
};
|
|
332
|
+
blurMap: {
|
|
333
|
+
storageTexture: d.WgslStorageTexture2d<"rgba32float", string>;
|
|
334
|
+
};
|
|
335
|
+
params: {
|
|
336
|
+
uniform: d.WgslStruct<{
|
|
337
|
+
inputWidth: d.F32;
|
|
338
|
+
inputHeight: d.F32;
|
|
339
|
+
threshold: d.F32;
|
|
340
|
+
size: d.F32;
|
|
341
|
+
}>;
|
|
342
|
+
};
|
|
343
|
+
}>;
|
|
344
|
+
kernel: TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>;
|
|
345
|
+
Params: d.WgslStruct<{
|
|
346
|
+
inputWidth: d.F32;
|
|
347
|
+
inputHeight: d.F32;
|
|
348
|
+
threshold: d.F32;
|
|
349
|
+
size: d.F32;
|
|
350
|
+
}>;
|
|
351
|
+
};
|
|
352
|
+
/**
|
|
353
|
+
* The bloom pre-pass graph with a MAP-DRIVEN blur radius. Bright extraction is identical to
|
|
354
|
+
* {@link buildBloomExtractGraph}; the radius comes from a nearest tap on the map SOURCE (a
|
|
355
|
+
* canvas-resolution RTT, bound late) pushed through the shared remap window. No `× 0.36` scaling —
|
|
356
|
+
* a bloom's size prop is already in pixels.
|
|
357
|
+
*/
|
|
358
|
+
export declare function buildBloomExtractMapGraph(computeWidth: number, computeHeight: number, kernelName: string, channel: BlurMapChannel): {
|
|
359
|
+
layout: TgpuBindGroupLayout<{
|
|
360
|
+
childTexture: {
|
|
361
|
+
texture: d.WgslTexture2d<d.F32>;
|
|
362
|
+
};
|
|
363
|
+
source: {
|
|
364
|
+
texture: d.WgslTexture2d<d.F32>;
|
|
365
|
+
};
|
|
366
|
+
brightMap: {
|
|
367
|
+
storageTexture: d.WgslStorageTexture2d<"rgba16float", string>;
|
|
368
|
+
};
|
|
369
|
+
blurMap: {
|
|
370
|
+
storageTexture: d.WgslStorageTexture2d<"rgba32float", string>;
|
|
371
|
+
};
|
|
372
|
+
params: {
|
|
373
|
+
uniform: d.WgslStruct<{
|
|
374
|
+
inputMin: d.F32;
|
|
375
|
+
inputMax: d.F32;
|
|
376
|
+
outputMin: d.F32;
|
|
377
|
+
outputMax: d.F32;
|
|
378
|
+
curve: d.F32;
|
|
379
|
+
inputWidth: d.F32;
|
|
380
|
+
inputHeight: d.F32;
|
|
381
|
+
threshold: d.F32;
|
|
382
|
+
}>;
|
|
383
|
+
};
|
|
384
|
+
}>;
|
|
385
|
+
kernel: TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>;
|
|
386
|
+
Params: d.WgslStruct<{
|
|
387
|
+
inputMin: d.F32;
|
|
388
|
+
inputMax: d.F32;
|
|
389
|
+
outputMin: d.F32;
|
|
390
|
+
outputMax: d.F32;
|
|
391
|
+
curve: d.F32;
|
|
392
|
+
inputWidth: d.F32;
|
|
393
|
+
inputHeight: d.F32;
|
|
394
|
+
threshold: d.F32;
|
|
395
|
+
}>;
|
|
396
|
+
};
|
|
397
|
+
/**
|
|
398
|
+
* Compute resolution for a bloom: cap the LONGER edge at the default long edge and derive the other
|
|
399
|
+
* from the canvas aspect. A fixed 1024×640 grid stretches the glow kernel on any other aspect —
|
|
400
|
+
* the blur works in compute pixels, so non-square compute pixels smear it directionally.
|
|
401
|
+
*/
|
|
402
|
+
export declare function aspectAwareComputeRes(canvasWidth: number, canvasHeight: number): {
|
|
403
|
+
width: number;
|
|
404
|
+
height: number;
|
|
405
|
+
};
|
|
406
|
+
/** What a `compute` hook returns. */
|
|
407
|
+
type BlurComputeNode = NonNullable<ReturnType<GpuComputeNode>>;
|
|
408
|
+
export interface FixedBlurComputeConfig {
|
|
409
|
+
/** Per-frame Gaussian radius in INPUT (canvas) pixels. Read live so mouse/auto drivers pull through. */
|
|
410
|
+
radius: () => number;
|
|
411
|
+
halfKernel?: number;
|
|
412
|
+
outputKey?: string;
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* A uniform-radius separable Gaussian over the composed child. Blur's static path and ChannelBlur.
|
|
416
|
+
*/
|
|
417
|
+
export declare function withFixedBlurCompute(params: GpuFragmentParams, config: FixedBlurComputeConfig): BlurComputeNode | null;
|
|
418
|
+
export interface VariableBlurComputeConfig {
|
|
419
|
+
/**
|
|
420
|
+
* Build the radius-map fill graph at the blur's compute resolution. Its layout MUST bind
|
|
421
|
+
* `blurMap` (write-only, {@link BLUR_MAP_FORMAT}) and `params`; with `source` set it must also
|
|
422
|
+
* bind a `source` sampled texture.
|
|
423
|
+
*/
|
|
424
|
+
buildFill: (computeWidth: number, computeHeight: number) => BlurFillGraph;
|
|
425
|
+
/**
|
|
426
|
+
* Per-frame values for the fill params. `dims` is the live canvas size in device pixels;
|
|
427
|
+
* `window` is the live remap window, present only on the map-driven path.
|
|
428
|
+
*/
|
|
429
|
+
fillValues: (dims: {
|
|
430
|
+
width: number;
|
|
431
|
+
height: number;
|
|
432
|
+
}, window?: GpuMapWindow) => Record<string, number>;
|
|
433
|
+
/** Map-driven radius: pass `getMapInfo(prop)`. Its source RTT is bound late, like the child. */
|
|
434
|
+
source?: GpuMapInfo;
|
|
435
|
+
halfKernel?: number;
|
|
436
|
+
outputKey?: string;
|
|
437
|
+
}
|
|
438
|
+
/**
|
|
439
|
+
* A per-pixel-radius Gaussian whose radius map is filled by a caller-supplied kernel each frame.
|
|
440
|
+
* ProgressiveBlur, TiltShift, and Blur's map-driven path.
|
|
441
|
+
*/
|
|
442
|
+
export declare function withVariableBlurCompute(params: GpuFragmentParams, config: VariableBlurComputeConfig): BlurComputeNode | null;
|
|
443
|
+
export interface BloomComputeConfig {
|
|
444
|
+
/**
|
|
445
|
+
* Build the extract graph at the bloom's compute resolution — normally a one-line delegate to
|
|
446
|
+
* {@link buildBloomExtractGraph} carrying the shader's own kernel name (so its snapshot is
|
|
447
|
+
* stable and its GPU-free resolve test has something to import).
|
|
448
|
+
*/
|
|
449
|
+
buildExtract: (computeWidth: number, computeHeight: number) => BlurFillGraph;
|
|
450
|
+
/** The map-driven twin, via {@link buildBloomExtractMapGraph}. Required when `mapInfo` is given. */
|
|
451
|
+
buildExtractMap?: (computeWidth: number, computeHeight: number, channel: BlurMapChannel) => BlurFillGraph;
|
|
452
|
+
/** Map-driven radius: pass `getMapInfo(sizeProp)`, or null for the uniform path. */
|
|
453
|
+
mapInfo?: GpuMapInfo | null;
|
|
454
|
+
/** Per-frame soft-knee threshold in [0, 1]. */
|
|
455
|
+
threshold: () => number;
|
|
456
|
+
/** Per-frame uniform bloom radius in canvas pixels (uniform path only). */
|
|
457
|
+
radius: () => number;
|
|
458
|
+
/** Key the blurred bright buffer is published under (Glow: default; FilmStock: `halationTexture`). */
|
|
459
|
+
outputKey?: string;
|
|
460
|
+
}
|
|
461
|
+
/**
|
|
462
|
+
* A bloom: bright-extract the child at aspect-aware compute resolution, then blur the extract.
|
|
463
|
+
*
|
|
464
|
+
* The blur's input dimensions ARE its compute dimensions here (scaleY 1), so the H pass maps 1:1 and
|
|
465
|
+
* the blur never needs `setInputDimensions` — only the extract kernel's canvas dims change on
|
|
466
|
+
* resize. Tap jitter is on: the bloom radius is large and a fixed tap comb beats against periodic
|
|
467
|
+
* content as halo moiré.
|
|
468
|
+
*/
|
|
469
|
+
export declare function withBloomCompute(params: GpuFragmentParams, config: BloomComputeConfig): BlurComputeNode | null;
|
|
470
|
+
/**
|
|
471
|
+
* The fragment tail every compute-backed blur shares: composite the canvas-resolution SHARP child
|
|
472
|
+
* against the compute-resolution BLURRED buffer, and unpremultiply on the way back into the
|
|
473
|
+
* straight-alpha blend pipeline (both textures hold premultiplied data — the child RTT always does).
|
|
474
|
+
*
|
|
475
|
+
* `compose` receives `(blurred, sharp)` samples at `ctx.uv` and returns the premultiplied result:
|
|
476
|
+
* `vec4(blurred.rgb, sharp.a)` for a plain blur, a mix by the shader's own blur-amount field for a
|
|
477
|
+
* selective one, a bloom add for a glow.
|
|
478
|
+
*
|
|
479
|
+
* When compute did not run — no device, or a shader's own bypass returned `null` from its `compute`
|
|
480
|
+
* hook — this falls back to a sharp passthrough of the child RTT. That fallback is what makes the
|
|
481
|
+
* GPU-free resolve gates work, so every consumer needs it and none should write it again.
|
|
482
|
+
*/
|
|
483
|
+
export declare function composeBlurredOverSharp(params: GpuFragmentParams, compose: (blurred: Expr, sharp: Expr) => Expr, options?: {
|
|
484
|
+
blurredKey?: string;
|
|
485
|
+
sharpKey?: string;
|
|
486
|
+
}): Expr;
|
|
487
|
+
export {};
|
|
209
488
|
//# sourceMappingURL=blur.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blur.d.ts","sourceRoot":"","sources":["../../../src/gpu/kit/blur.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,OAAa,EAAC,KAAK,QAAQ,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAC,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"blur.d.ts","sourceRoot":"","sources":["../../../src/gpu/kit/blur.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { d } from './index';
|
|
2
|
+
|
|
3
|
+
/** One square cell: its integer index and the `[0,1)²` coordinate within it. */
|
|
4
|
+
export declare const CellTile: d.WgslStruct<{
|
|
5
|
+
/** Integer cell index — `floor(p)`. Stable per cell, so it is what you hash. */
|
|
6
|
+
cell: d.Vec2f;
|
|
7
|
+
/** Position within the cell, `[0,1)²` — `fract(p)`. What you draw against. */
|
|
8
|
+
local: d.Vec2f;
|
|
9
|
+
}>;
|
|
10
|
+
/**
|
|
11
|
+
* Split a scaled UV into its square cell index and in-cell coordinate.
|
|
12
|
+
*
|
|
13
|
+
* Both halves come back because a pattern needs both: `local` draws the cell's content, `cell`
|
|
14
|
+
* seeds its randomness. Splitting them at the call site is where sign bugs creep in — `fract` is
|
|
15
|
+
* floored in WGSL and `floor` matches it, so this pair is consistent for negative coordinates
|
|
16
|
+
* (which a rotation or an upstream distortion's `uvContext` will produce).
|
|
17
|
+
*/
|
|
18
|
+
export declare const squareTiling: import('typegpu').TgpuFn<(p: d.Vec2f) => d.WgslStruct<{
|
|
19
|
+
/** Integer cell index — `floor(p)`. Stable per cell, so it is what you hash. */
|
|
20
|
+
cell: d.Vec2f;
|
|
21
|
+
/** Position within the cell, `[0,1)²` — `fract(p)`. What you draw against. */
|
|
22
|
+
local: d.Vec2f;
|
|
23
|
+
}>>;
|
|
24
|
+
/** One hexagonal cell: the local vector from its centre, and the centre's own coordinate. */
|
|
25
|
+
export declare const HexCell: d.WgslStruct<{
|
|
26
|
+
/** Vector from the nearest hex centre to the sample point. Drives edge distance and face cuts. */
|
|
27
|
+
gv: d.Vec2f;
|
|
28
|
+
/** The hex centre in lattice space (`p - gv`). Snap and round this to get a hashable index. */
|
|
29
|
+
id: d.Vec2f;
|
|
30
|
+
}>;
|
|
31
|
+
/**
|
|
32
|
+
* Hexagonal lattice lookup: find the nearest hex centre to `p` and return the local offset.
|
|
33
|
+
*
|
|
34
|
+
* The standard two-offset-grids trick — a hex lattice is two interleaved rectangular grids, so
|
|
35
|
+
* folding `p` into both and keeping whichever candidate centre is nearer lands on the correct hex
|
|
36
|
+
* without any branching. The fold uses {@link geom.flooredMod2} (not WGSL `%`, which is truncated)
|
|
37
|
+
* so it stays periodic for negative coordinates.
|
|
38
|
+
*
|
|
39
|
+
* `s` is the lattice period and picks the ORIENTATION:
|
|
40
|
+
*
|
|
41
|
+
* - `vec2f(SQRT3, 1)` — pointy-top hexagons (flat sides left/right). HexGrid's honeycomb.
|
|
42
|
+
* - `vec2f(1, SQRT3)` — the transpose, flat-top hexagons. What a rhombille / isometric-cube cut
|
|
43
|
+
* needs, because the three rhombus faces have to meet at a vertical vertex.
|
|
44
|
+
*
|
|
45
|
+
* Those two really are the same code with `s` transposed, which is why the orientation is a
|
|
46
|
+
* parameter and not two functions.
|
|
47
|
+
*/
|
|
48
|
+
export declare const hexTiling: import('typegpu').TgpuFn<(p: d.Vec2f, s: d.Vec2f) => d.WgslStruct<{
|
|
49
|
+
/** Vector from the nearest hex centre to the sample point. Drives edge distance and face cuts. */
|
|
50
|
+
gv: d.Vec2f;
|
|
51
|
+
/** The hex centre in lattice space (`p - gv`). Snap and round this to get a hashable index. */
|
|
52
|
+
id: d.Vec2f;
|
|
53
|
+
}>>;
|
|
54
|
+
/**
|
|
55
|
+
* Skew an equilateral-triangle lattice onto a unit-square integer grid:
|
|
56
|
+
* `M · p` where `M = [[1, -1/√3], [0, 2/√3]]`.
|
|
57
|
+
*
|
|
58
|
+
* Equilateral triangles are awkward to index directly; after this skew each unit square holds
|
|
59
|
+
* exactly two triangles, split by the anti-diagonal, so `floor`/`fract` indexing works and the
|
|
60
|
+
* anti-diagonal test (`fract.x + fract.y > 1`) picks which of the pair you are in.
|
|
61
|
+
*
|
|
62
|
+
* The result is a sheared space: distances in it are NOT the distances in the original lattice, so
|
|
63
|
+
* take anti-aliasing footprints from this coordinate (which is what the derivative sees) and read
|
|
64
|
+
* edge distances in it too, consistently.
|
|
65
|
+
*
|
|
66
|
+
* The X term divides by `SQRT3` rather than multiplying by a folded `1/√3`: the two differ in the
|
|
67
|
+
* last bit, and the division is what the shipped lattice was authored against.
|
|
68
|
+
*/
|
|
69
|
+
export declare const triLattice: import('typegpu').TgpuFn<(p: d.Vec2f) => d.Vec2f>;
|
|
70
|
+
/**
|
|
71
|
+
* Screen UV of the CENTRE of the cell containing `uv`, for a `cells`-per-shortest-edge lattice
|
|
72
|
+
* (aspect-corrected, Y-flipped, guarded aspect).
|
|
73
|
+
*
|
|
74
|
+
* This is what a pattern generator returns from `mapSampleUVs` so that mapped props are sampled
|
|
75
|
+
* once per cell rather than once per fragment. Without it, a mapped `thickness` or `dotSize` varies
|
|
76
|
+
* *within* a cell, which clips the cell's content against the map source's boundaries instead of
|
|
77
|
+
* transitioning whole cells — the difference between dots that grow and dots that get shaved.
|
|
78
|
+
*
|
|
79
|
+
* The round trip is deliberate: correct → snap → un-correct, so the returned value is a screen UV
|
|
80
|
+
* the composer can sample a map texture with directly.
|
|
81
|
+
*
|
|
82
|
+
* See {@link cellCentreUVRotated} for the lattice-with-rotation form. There are two functions
|
|
83
|
+
* rather than one with a rotation argument because a rotation of zero still costs a `cos`, a `sin`,
|
|
84
|
+
* and a second un-rotate in the unrotated case.
|
|
85
|
+
*/
|
|
86
|
+
export declare const cellCentreUV: import('typegpu').TgpuFn<(uv: d.Vec2f, viewport: d.Vec2f, cells: d.F32) => d.Vec2f>;
|
|
87
|
+
/**
|
|
88
|
+
* {@link cellCentreUV} for a lattice rotated by `rotationRad` about the canvas centre: correct +
|
|
89
|
+
* flip, rotate, snap to the cell centre in rotated space, un-rotate, un-correct.
|
|
90
|
+
*
|
|
91
|
+
* The angle arrives in RADIANS — the caller converts, so the degrees-to-radians constant stays at
|
|
92
|
+
* the shader's own module scope where the rest of its rotation math reads it.
|
|
93
|
+
*/
|
|
94
|
+
export declare const cellCentreUVRotated: import('typegpu').TgpuFn<(uv: d.Vec2f, viewport: d.Vec2f, cells: d.F32, rotationRad: d.F32) => d.Vec2f>;
|
|
95
|
+
/**
|
|
96
|
+
* Per-cell pseudo-random scalar in `[0, 1)` from an integer cell index.
|
|
97
|
+
*
|
|
98
|
+
* The legacy fract-only chain (NO `sin` — unlike {@link rowSpeedHash} below), byte-identical across
|
|
99
|
+
* the pattern fleet: scale the index by `(123.34, 345.45)` and take the fractional part, cross-couple
|
|
100
|
+
* the two components through `q + dot(q, q + 34.345)`, then fract their product. It is not a good
|
|
101
|
+
* hash — it has visible structure at large indices and is sensitive to float precision — but it is
|
|
102
|
+
* the hash every shipped preset's cell randomness was authored against, so it is frozen (D-6).
|
|
103
|
+
*
|
|
104
|
+
* Hash INTEGER indices. Feeding a continuous coordinate produces sub-pixel jitter within a cell
|
|
105
|
+
* instead of one value per cell; lattices whose centres fall on non-integers (hex, rhombille) must
|
|
106
|
+
* `round` them onto integers first.
|
|
107
|
+
*
|
|
108
|
+
* New shaders: use `noise.hash*` instead.
|
|
109
|
+
*/
|
|
110
|
+
export declare const cellHash: import('typegpu').TgpuFn<(id: d.Vec2f) => d.F32>;
|
|
111
|
+
/**
|
|
112
|
+
* Per-ROW pseudo-random scalar in `[0, 1)` from a row index — the 1D member of the same legacy
|
|
113
|
+
* family, and the one that genuinely is a sin-fract chain
|
|
114
|
+
* (`fract(sin(row * 127.1) * 43758.5453)`), frozen for the same reason (D-6).
|
|
115
|
+
*
|
|
116
|
+
* Used to give each row of a pattern its own drift speed. Pass a floored row index.
|
|
117
|
+
*/
|
|
118
|
+
export declare const rowSpeedHash: import('typegpu').TgpuFn<(row: d.F32) => d.F32>;
|
|
119
|
+
/**
|
|
120
|
+
* Turn a `[0,1)` row hash into a speed multiplier centred on 1: `1 + (hash - 0.5) * 4 * variance`.
|
|
121
|
+
*
|
|
122
|
+
* Centred on 1 so `variance = 0` leaves every row at the base speed, and scaled by 4 so a variance
|
|
123
|
+
* of 1 spans `[-1, 3]` — wide enough that some rows reverse, which is what makes the motion read as
|
|
124
|
+
* irregular rather than as a single sheared drift.
|
|
125
|
+
*/
|
|
126
|
+
export declare const rowSpeedMultiplier: import('typegpu').TgpuFn<(rowHash: d.F32, variance: d.F32) => d.F32>;
|
|
127
|
+
/**
|
|
128
|
+
* Turn a `[0,1)` cell hash into a brightness multiplier: `max(1 + (rand - 0.5) * 2 * variation, 0)`.
|
|
129
|
+
*
|
|
130
|
+
* Centred on 1 so `variation = 0` is exactly the unmodified colour, spanning `[0, 2]` at full
|
|
131
|
+
* variation (some cells doubled, some black). The `max(_, 0)` floor matters because the multiplier
|
|
132
|
+
* is applied to a colour: a negative factor would flip the sign of the RGB and, once blended,
|
|
133
|
+
* produce colours that are not in the authored palette at all.
|
|
134
|
+
*/
|
|
135
|
+
export declare const variationFactor: import('typegpu').TgpuFn<(rand: d.F32, variation: d.F32) => d.F32>;
|
|
136
|
+
//# sourceMappingURL=cells.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cells.d.ts","sourceRoot":"","sources":["../../../src/gpu/kit/cells.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAO,CAAC,EAAM,MAAM,SAAS,CAAA;AAUpC,gFAAgF;AAChF,eAAO,MAAM,QAAQ;IACjB,gFAAgF;;IAEhF,8EAA8E;;EAE9D,CAAA;AAEpB;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY;IAdrB,gFAAgF;;IAEhF,8EAA8E;;GAehF,CAAA;AAIF,6FAA6F;AAC7F,eAAO,MAAM,OAAO;IAChB,kGAAkG;;IAElG,+FAA+F;;EAEhF,CAAA;AAEnB;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,SAAS;IAvBlB,kGAAkG;;IAElG,+FAA+F;;GA4BjG,CAAA;AAIF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,UAAU,mDAGrB,CAAA;AAIF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,YAAY,qFAQvB,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,yGAqB9B,CAAA;AAIF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,QAAQ,kDAKnB,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,iDAGvB,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,sEAG7B,CAAA;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,oEAG1B,CAAA"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { d } from './index';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Cell coordinate → feature point in [0,1]², via the classic sin-fract hash
|
|
5
|
+
* (`fract(sin(vec2(dot(p, k1), dot(p, k2))) · 43758.5453)`).
|
|
6
|
+
*
|
|
7
|
+
* GPU-only: `sin` at these argument magnitudes is driver-approximate and diverges from JS `Math.sin`,
|
|
8
|
+
* so this cannot be golden-tested on the CPU.
|
|
9
|
+
*/
|
|
10
|
+
export declare const cellHash2: import('typegpu').TgpuFn<(p: d.Vec2f) => d.Vec2f>;
|
|
11
|
+
/**
|
|
12
|
+
* {@link nearest2Cells}'s options, as a discriminated union: only the two pairings the builder
|
|
13
|
+
* actually implements are expressible. `distance` and `jitter` are NOT independent — pairing
|
|
14
|
+
* `length` with `mix` (or `selectableSquared` with `none`) has no branch and would silently fall
|
|
15
|
+
* through to the other form's emitted signature, so the type forbids it.
|
|
16
|
+
*
|
|
17
|
+
* - `{distance: 'length', jitter: 'none'}` — `length(delta)`, a true Euclidean distance per tap, and
|
|
18
|
+
* the drifted feature point clamped into the cell interior and used directly. The fold carries real
|
|
19
|
+
* distances, which is what a ratio reduction needs.
|
|
20
|
+
* - `{distance: 'selectableSquared', jitter: 'mix'}` — computes Euclidean-SQUARED, Manhattan and
|
|
21
|
+
* Chebyshev and selects between them on a runtime `metric` argument (Euclidean stays squared
|
|
22
|
+
* through the fold; the sqrt is deferred to {@link cellReduceSelectable}), and lerps from the cell
|
|
23
|
+
* centre (0.5, 0.5) toward the clamped point by a runtime `jitter` argument, so 0 gives a rigid
|
|
24
|
+
* lattice and 1 full randomness. All three metric branches are always computed — see the note on
|
|
25
|
+
* branchlessness below.
|
|
26
|
+
*/
|
|
27
|
+
export type Nearest2Options = {
|
|
28
|
+
distance: 'length';
|
|
29
|
+
jitter: 'none';
|
|
30
|
+
/** Emitted WGSL identifier base. The option key is appended, so configs cannot collide. */
|
|
31
|
+
name?: string;
|
|
32
|
+
} | {
|
|
33
|
+
distance: 'selectableSquared';
|
|
34
|
+
jitter: 'mix';
|
|
35
|
+
/** Emitted WGSL identifier base. The option key is appended, so configs cannot collide. */
|
|
36
|
+
name?: string;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* The 3×3 nearest-two-features fold, as a builder. Emits a `tgpu.fn` taking the SCALED cell-space
|
|
40
|
+
* position and returning `vec2(d1, d2)` — the nearest and second-nearest feature distances (squared,
|
|
41
|
+
* for `distance: 'selectableSquared'`).
|
|
42
|
+
*
|
|
43
|
+
* Emitted signature, by options:
|
|
44
|
+
* - `{distance: 'length', jitter: 'none'}` → `(scaledUV: vec2f, animT: f32, seed: f32) → vec2f`
|
|
45
|
+
* - `{distance: 'selectableSquared', jitter: 'mix'}` →
|
|
46
|
+
* `(scaledUV: vec2f, animT: f32, seed: f32, jitter: f32, metric: f32) → vec2f`
|
|
47
|
+
* (`metric`: 0 Euclidean-squared, 1 Manhattan, 2 Chebyshev)
|
|
48
|
+
*
|
|
49
|
+
* The feature points DRIFT: each is displaced by `sin/cos` of its own hash plus `animT` (the y axis
|
|
50
|
+
* at 0.7× the rate, so the motion is not diagonal), then clamped away from the cell walls so a point
|
|
51
|
+
* cannot cross into a neighbour and pop the topology. The phase constant is the full-precision TAU;
|
|
52
|
+
* one consumer shipped a truncated `6.28` here and was corrected on adoption (Gate C).
|
|
53
|
+
*
|
|
54
|
+
* THE FOLD IS BRANCHLESS AND THAT IS DELIBERATE. `d2 = min(d2, max(dd, d1))` followed by
|
|
55
|
+
* `d1 = min(d1, dd)` maintains the sorted pair without a conditional, because the d2 update reads
|
|
56
|
+
* the PRE-update d1. It is exactly equivalent to the nested-select spelling — case `dd < d1` gives
|
|
57
|
+
* `(d1, dd)`, case `dd ≥ d1` gives `(min(d2, dd), d1)` — and both spellings only ever SELECT
|
|
58
|
+
* existing values, never arithmetic on them, so the choice is bit-neutral. The unified spelling is
|
|
59
|
+
* why a consumer that only wants F1 can still use this fold: the extra d2 work leaves d1 untouched.
|
|
60
|
+
*
|
|
61
|
+
* Likewise `selectableSquared` computes all three metrics and selects, rather than JS-branching per
|
|
62
|
+
* compile-time metric. That looks like waste but is not: the metric is a compile-time prop, so a
|
|
63
|
+
* branch would recompile the pipeline on every change, and the dead arithmetic is a handful of ALU
|
|
64
|
+
* ops the driver's dead-code pass largely removes. It is the FractalNoise "harmless waste" pattern.
|
|
65
|
+
*/
|
|
66
|
+
export declare function nearest2Cells(options: Nearest2Options): Nearest2Fn;
|
|
67
|
+
/** {@link nearest2Cells}'s output. Trailing arguments exist only for the `selectableSquared` form. */
|
|
68
|
+
export type Nearest2Fn = (scaledUV: d.v2f, animT: number, seed: number, jitterAmount?: number, metric?: number) => d.v2f;
|
|
69
|
+
/** Feature-combination modes for {@link cellReduceSelectable}, and the enum a `mode` prop maps to. */
|
|
70
|
+
export declare const CELL_MODES: Record<string, number>;
|
|
71
|
+
/** Distance metrics for `nearest2Cells({distance: 'selectableSquared'})`, and the prop enum. */
|
|
72
|
+
export declare const CELL_METRICS: Record<string, number>;
|
|
73
|
+
/**
|
|
74
|
+
* Reduce a `(d1, d2)` pair to a scalar by {@link CELL_MODES} mode, taking the deferred Euclidean
|
|
75
|
+
* square root when `metric` is 0.
|
|
76
|
+
*
|
|
77
|
+
* The sqrt lives HERE rather than in the fold so the fold can keep squared distances (one multiply
|
|
78
|
+
* per tap instead of a sqrt), and taking it after the min-fold is exact: `sqrt` is monotonic and
|
|
79
|
+
* correctly rounded, so `sqrt(min(a, b)) == min(sqrt a, sqrt b)`.
|
|
80
|
+
*
|
|
81
|
+
* `sd1`/`sd2` unify the squared and linear cases so every mode is one expression for both — e.g.
|
|
82
|
+
* F1×F2 is `sd1·sd2`, which is `sqrt(d1·d2)`-equivalent for Euclidean and `d1·d2` otherwise.
|
|
83
|
+
*/
|
|
84
|
+
export declare const cellReduceSelectable: import('typegpu').TgpuFn<(d1: d.F32, d2: d.F32, metric: d.F32, mode: d.F32) => d.F32>;
|
|
85
|
+
/**
|
|
86
|
+
* The scale-invariant cell gradient: `pow(clamp(2·d1 / (d1 + d2)), power)`.
|
|
87
|
+
*
|
|
88
|
+
* The `2·d1/(d1+d2)` ratio is the reason to compute d2 at all for a fill gradient — it maps 0 at a
|
|
89
|
+
* feature point to 1 at a cell boundary REGARDLESS of cell size, where a raw F1 would make large
|
|
90
|
+
* cells read darker than small ones. `power` shapes how much of the interior the far colour claims.
|
|
91
|
+
*/
|
|
92
|
+
export declare const cellRatio: import('typegpu').TgpuFn<(d1: d.F32, d2: d.F32, power: d.F32) => d.F32>;
|
|
93
|
+
/**
|
|
94
|
+
* The cell-boundary line mask: `smoothstep(0, softness, (d2 − d1) / (d1 + d2))`, 0 ON the boundary
|
|
95
|
+
* and 1 in the interior.
|
|
96
|
+
*
|
|
97
|
+
* `(d2 − d1)` alone would give boundary lines whose apparent width scales with cell size; dividing
|
|
98
|
+
* by the sum normalizes it, so `softness` reads as a constant line width across the field. Callers
|
|
99
|
+
* that expose softness in cell units should pre-scale it by the cell count.
|
|
100
|
+
*/
|
|
101
|
+
export declare const cellEdgeMask: import('typegpu').TgpuFn<(d1: d.F32, d2: d.F32, softness: d.F32) => d.F32>;
|
|
102
|
+
//# sourceMappingURL=cellular.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cellular.d.ts","sourceRoot":"","sources":["../../../src/gpu/kit/cellular.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAO,CAAC,EAAM,MAAM,SAAS,CAAA;AAGpC;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,mDAIpB,CAAA;AAIF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,eAAe,GACrB;IACE,QAAQ,EAAE,QAAQ,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,2FAA2F;IAC3F,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB,GACC;IACE,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,MAAM,EAAE,KAAK,CAAA;IACb,2FAA2F;IAC3F,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,UAAU,CAmElE;AAED,sGAAsG;AACtG,MAAM,MAAM,UAAU,GAAG,CACrB,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KACnF,CAAC,CAAC,GAAG,CAAA;AAMV,sGAAsG;AACtG,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAM7C,CAAA;AAED,gGAAgG;AAChG,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAI/C,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,uFAa3B,CAAA;AAEN;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,yEAKpB,CAAA;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,4EAKvB,CAAA"}
|