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.
Files changed (776) hide show
  1. package/dist/cli.js +2 -2
  2. package/dist/core/{AngularBlur-B0m-LKoD.js → AngularBlur-CIw_xeFr.js} +25 -31
  3. package/dist/core/Arc-Dh0gjBrJ.js +183 -0
  4. package/dist/core/{Ascii-BiFuRRQ1.js → Ascii-CUk527uY.js} +34 -46
  5. package/dist/core/{Aurora-B35I8qRz.js → Aurora-CTWNhlNr.js} +14 -15
  6. package/dist/core/{BarShift-C_waFkRO.js → BarShift-BrOamln6.js} +24 -122
  7. package/dist/core/BarnDoors-D_lVAMPJ.js +170 -0
  8. package/dist/core/{Beam-BPBmQMGD.js → Beam-CgpfMTUq.js} +45 -461
  9. package/dist/core/{Bend-Bq1Qlhq4.js → Bend-CRuu6NuH.js} +13 -57
  10. package/dist/core/{Blob-BtInePsq.js → Blob-1mhEIcv5.js} +3 -3
  11. package/dist/core/BlockDissolve-DwWPjla0.js +178 -0
  12. package/dist/core/{BlockNoise-BfDNfyBP.js → BlockNoise-BMt760_p.js} +36 -113
  13. package/dist/core/{BlueNoise-CNLIGPMW.js → BlueNoise-Cfo_HthN.js} +24 -46
  14. package/dist/core/Blur-Bc8evwsz.js +428 -0
  15. package/dist/core/{Boids-D51ZdvH0.js → Boids-CtvT1VsV.js} +105 -427
  16. package/dist/core/{BokehBlur-DO4V8nZ-.js → BokehBlur-CWQm00ut.js} +37 -214
  17. package/dist/core/{BrickPattern-D21Nqxcj.js → BrickPattern-DomddM0C.js} +89 -335
  18. package/dist/core/{BrightnessContrast-QxVeVMih.js → BrightnessContrast-Bs8AV0he.js} +16 -15
  19. package/dist/core/{BrushedMetal-Xq4jMVz1.js → BrushedMetal-BAgNgeo1.js} +342 -1001
  20. package/dist/core/{Bulge-CdCqTfrp.js → Bulge-CdhRTWSH.js} +13 -71
  21. package/dist/core/{CRTScreen-D7WSk5fJ.js → CRTScreen-BxnPxDw9.js} +1 -1
  22. package/dist/core/{CarbonFiber-Dg-XleHg.js → CarbonFiber-mK6eHIpy.js} +281 -935
  23. package/dist/core/{Chalkboard-B_YRavSR.js → Chalkboard-BizZEHlC.js} +2 -2
  24. package/dist/core/{ChannelBlur-BmEILWdn.js → ChannelBlur-Oz40DKPZ.js} +15 -39
  25. package/dist/core/{CheckerWipe-Dbt7TTDK.js → CheckerWipe-yv4dK6n5.js} +83 -211
  26. package/dist/core/Checkerboard-Ynfnt3oJ.js +158 -0
  27. package/dist/core/{Chevron-DsJK3THV.js → Chevron-CEwNP2vt.js} +46 -117
  28. package/dist/core/{ChromaFlow-Bj4rfeWl.js → ChromaFlow-BXw1jQkn.js} +3 -3
  29. package/dist/core/{ChromaticAberration-C2UtSgN3.js → ChromaticAberration-CWhYEGDU.js} +2 -2
  30. package/dist/core/{Chrome-CSrC5yk_.js → Chrome-DoPYr4Kd.js} +97 -351
  31. package/dist/core/Circle-DGvP0Svo.js +267 -0
  32. package/dist/core/{ColorWheel-C_YLOL93.js → ColorWheel-BCReEdLZ.js} +48 -63
  33. package/dist/core/{CompressionArtifacts-BXto-pLr.js → CompressionArtifacts-Cm0iOzys.js} +2 -2
  34. package/dist/core/{ConcentricSpin-1tArUXYX.js → ConcentricSpin-B3GHzoS1.js} +37 -146
  35. package/dist/core/{ConicGradient-Tw-pg593.js → ConicGradient-C3zzgyV4.js} +25 -143
  36. package/dist/core/{ContourLines-CBFm0hjl.js → ContourLines-DDzxvg9k.js} +5 -66
  37. package/dist/core/{CornerPin-BNgPHIHY.js → CornerPin-VFPI_Jzq.js} +9 -54
  38. package/dist/core/Crescent-DL6EeZZp.js +187 -0
  39. package/dist/core/Cross-DQIgZt-C.js +188 -0
  40. package/dist/core/{Crystal-DN2WgBrm.js → Crystal-B9DIgDD7.js} +81 -262
  41. package/dist/core/{CurlNoise-RsATuC8w.js → CurlNoise-D6kSV8PJ.js} +40 -98
  42. package/dist/core/{CursorRipples-DbtJtDDl.js → CursorRipples-C1hLNWzZ.js} +63 -60
  43. package/dist/core/{CursorTrail-yoPFtwk9.js → CursorTrail-CPW8orHG.js} +66 -52
  44. package/dist/core/{DataMosh-DabFQ-B5.js → DataMosh-CjVK_gxL.js} +23 -56
  45. package/dist/core/{DiamondGradient-DbaUt2tC.js → DiamondGradient-BkrLPdAd.js} +43 -186
  46. package/dist/core/{DiamondWipe-Jth0vS7V.js → DiamondWipe-Cscn7Dyy.js} +45 -205
  47. package/dist/core/{DiffuseBlur-BZxj-iAt.js → DiffuseBlur-DUBfHpUN.js} +8 -11
  48. package/dist/core/{DisplacementMap-31H7QPQl.js → DisplacementMap-B-cVoGbC.js} +4 -3
  49. package/dist/core/{Dither-BN-zSZ0l.js → Dither-B4lhnNLA.js} +9 -12
  50. package/dist/core/{DotGrid-BRDFAkBz.js → DotGrid-CJJXTOk6.js} +78 -355
  51. package/dist/core/{DropShadow-_lFvglPh.js → DropShadow-B4msUftn.js} +31 -32
  52. package/dist/core/{Duotone-BhxXqh0S.js → Duotone-DF3dn0kC.js} +11 -8
  53. package/dist/core/Ellipse-WuGsM7Gr.js +168 -0
  54. package/dist/core/{Emboss--yOZdnyf.js → Emboss-D5RYAc-U.js} +14 -35
  55. package/dist/core/{Engraving-B26NgnCE.js → Engraving-DNNHKvIr.js} +12 -12
  56. package/dist/core/{ErosionNoise-_uC5Hx2q.js → ErosionNoise-w1aTuwY4.js} +35 -98
  57. package/dist/core/{Exposure-BM3eE3ol.js → Exposure-BSsbosYN.js} +15 -11
  58. package/dist/core/{FallingLines-BuczyepF.js → FallingLines-C1YT49dj.js} +13 -14
  59. package/dist/core/{FilmGrain-Dyy76ena.js → FilmGrain-BeZQzxdU.js} +21 -15
  60. package/dist/core/{FilmStock-mi-H3Ul9.js → FilmStock-Bgn9OyQY.js} +9 -734
  61. package/dist/core/{Flip-rZzkYscj.js → Flip-DJuox9qR.js} +11 -25
  62. package/dist/core/{FloatingParticles-BbbTJldX.js → FloatingParticles-Ch5OJjCc.js} +128 -447
  63. package/dist/core/{FlowField-u0qYoqV2.js → FlowField-Cime_Fqy.js} +6 -5
  64. package/dist/core/Flower--1qeeCuA.js +187 -0
  65. package/dist/core/{FlowingGradient-_zyM9KQn.js → FlowingGradient-DL1e3OKu.js} +12 -17
  66. package/dist/core/{FlutedGlass-C9-K6UQ7.js → FlutedGlass-CqSVa4kd.js} +5 -4
  67. package/dist/core/Fog-DvOvVKbF.js +2261 -0
  68. package/dist/core/{Form3D-Dmvpcqp1.js → Form3D-CabM27VZ.js} +152 -838
  69. package/dist/core/{FractalNoise-C8uudMNt.js → FractalNoise-Bu8FbMYX.js} +57 -321
  70. package/dist/core/{Frost-DV2zJSAL.js → Frost-BnE3EI6s.js} +77 -170
  71. package/dist/core/{GaborNoise-Bty1hWmn.js → GaborNoise-BZFyQbDr.js} +36 -99
  72. package/dist/core/{Glass-CYmFGP1b.js → Glass-DPa3OWjZ.js} +15 -27
  73. package/dist/core/{GlassTiles-B3vyGos-.js → GlassTiles-B4Y8x78X.js} +3 -2
  74. package/dist/core/{Glitch-DcjdwJep.js → Glitch-nokyLk8Q.js} +1 -1
  75. package/dist/core/Glow-C3VfGUb6.js +198 -0
  76. package/dist/core/{Godrays-lPn_O_W-.js → Godrays-fglKeS0z.js} +37 -72
  77. package/dist/core/{Goo-DxEB8kMF.js → Goo-BPaUKk1S.js} +13 -42
  78. package/dist/core/{GradientMap-7G6EOwy8.js → GradientMap-DQ4IbzIx.js} +23 -17
  79. package/dist/core/{Grayscale-BJz0olll.js → Grayscale-Bpp1Q2KT.js} +9 -11
  80. package/dist/core/Grid-BneV9T3T.js +684 -0
  81. package/dist/core/{GridDistortion-CSBRousF.js → GridDistortion-CAKSKhII.js} +8 -53
  82. package/dist/core/{Group-BSg6a8Ro.js → Group-UvbIuzy-.js} +1 -1
  83. package/dist/core/{HTMLInCanvas-DnQ0ZY38.js → HTMLInCanvas-CMxSuq5H.js} +16 -27
  84. package/dist/core/{Halftone-B2C55h6_.js → Halftone-SiFx0wAg.js} +4 -3
  85. package/dist/core/Heart-DLQnxsbQ.js +144 -0
  86. package/dist/core/{Heatmap-BdExXQBU.js → Heatmap-Bp0wi8r1.js} +14 -31
  87. package/dist/core/{HexGrid-B6UygS6q.js → HexGrid-LGx240mZ.js} +82 -486
  88. package/dist/core/{Hologram-D_eqqb8P.js → Hologram-B-090nzV.js} +14 -48
  89. package/dist/core/{Holographic-Ctrsya3k.js → Holographic-CSIQUm1_.js} +90 -298
  90. package/dist/core/{HueShift-CFXxhPpm.js → HueShift-B7l4vcZP.js} +17 -14
  91. package/dist/core/ImageTexture-D41xKACO.js +58 -0
  92. package/dist/core/InkFlow-Bd4RXQmm.js +1159 -0
  93. package/dist/core/{Invert-Bya7lBpK.js → Invert-CEfJB0WN.js} +9 -11
  94. package/dist/core/IrisWipe-O6dc-Aq2.js +163 -0
  95. package/dist/core/{IsometricCubes-CC-l8cnR.js → IsometricCubes-BQFwe-5s.js} +106 -473
  96. package/dist/core/{Kaleidoscope-DhvQTJdp.js → Kaleidoscope-DQFV4-lX.js} +15 -71
  97. package/dist/core/{KeyFrames-ZTsc7rtN.js → KeyFrames-BjH6gHSf.js} +32 -67
  98. package/dist/core/{LensDistortion-KiZJXFKC.js → LensDistortion-BcodYk7_.js} +3 -3
  99. package/dist/core/{LensFlare-D5fr8RPA.js → LensFlare-B4F0dq7O.js} +106 -348
  100. package/dist/core/{LightEdge-D0NOWDh7.js → LightEdge-l2zPIeMQ.js} +14 -31
  101. package/dist/core/{LightLeak-DdaidQ1D.js → LightLeak-BSy19CB6.js} +49 -333
  102. package/dist/core/{Line-B5DIIWBz.js → Line-CRGYWOyW.js} +2 -2
  103. package/dist/core/{LinearBlur-CyQxSLS2.js → LinearBlur-DGfbbIWb.js} +20 -31
  104. package/dist/core/{LinearGradient-B8tyawJy.js → LinearGradient-DOWwm0bP.js} +59 -110
  105. package/dist/core/LinearWipe-0nTDgTcZ.js +162 -0
  106. package/dist/core/{LiquidMetal-vARkyRL2.js → LiquidMetal-BbyxqZoO.js} +90 -446
  107. package/dist/core/{Liquify-Djnk6ryT.js → Liquify-Bg2tEc64.js} +10 -54
  108. package/dist/core/{MagneticFilings-BfTe8-Jn.js → MagneticFilings-5NVqpsrW.js} +123 -416
  109. package/dist/core/{Marble-3s7VS-tT.js → Marble-CzoJcXvo.js} +14 -15
  110. package/dist/core/{Mirror-Ck4Hzdd8.js → Mirror-B_2eQT6d.js} +11 -67
  111. package/dist/core/{MultiPointGradient-CdzqMTN9.js → MultiPointGradient-NJZfFGVb.js} +27 -140
  112. package/dist/core/{Neon-B8iSfL5s.js → Neon-m8PtEGdE.js} +14 -33
  113. package/dist/core/{NoiseDissolve-Df70NgHI.js → NoiseDissolve-DxvqR71w.js} +21 -129
  114. package/dist/core/{ObjectTracker-CFpotAyg.js → ObjectTracker-DlVNN9LJ.js} +41 -51
  115. package/dist/core/{PagePeel-Bmc4hBhO.js → PagePeel-BZOvdHFV.js} +3 -2
  116. package/dist/core/{Paper-af7JgKOt.js → Paper-Bn3DETI2.js} +2 -2
  117. package/dist/core/Parallelogram-a6zB6mY9.js +187 -0
  118. package/dist/core/{ParticleField-FPUBkJmo.js → ParticleField-CUtlCqxz.js} +172 -385
  119. package/dist/core/{ParticleFlow-DfdDvN-j.js → ParticleFlow-Ck5Ta_Rj.js} +250 -2572
  120. package/dist/core/{Particles-DZaTzOZP.js → Particles-rnTAu4Mr.js} +366 -475
  121. package/dist/core/{PerlinNoise-DPaPG55C.js → PerlinNoise-BUbmE_JA.js} +36 -113
  122. package/dist/core/{Perspective-DBzb7DC9.js → Perspective-S94umCQn.js} +17 -71
  123. package/dist/core/{PixelSort-sqoLBmqR.js → PixelSort-CF0-TpU7.js} +2 -2
  124. package/dist/core/{PixelThrow-arRYRlCO.js → PixelThrow-2WPijuDY.js} +17 -652
  125. package/dist/core/{Pixelate-Ba_iNPwv.js → Pixelate-BLdO8qAT.js} +1 -1
  126. package/dist/core/Plasma-DOH9gxWt.js +355 -0
  127. package/dist/core/{Plastic-C-NBXCG-.js → Plastic-CQNoTl22.js} +86 -271
  128. package/dist/core/{PolarCoordinates-CjV_EFpN.js → PolarCoordinates-DZNOyHmN.js} +15 -72
  129. package/dist/core/Polygon-BM3xGxOC.js +231 -0
  130. package/dist/core/{Posterize-BUt2MAqY.js → Posterize-BJl7Irml.js} +51 -18
  131. package/dist/core/{Prism-BBSdqnRm.js → Prism-CaJyExNA.js} +3 -3
  132. package/dist/core/{ProgressiveBlur-CQhyaOwl.js → ProgressiveBlur-B1Ur87dm.js} +56 -368
  133. package/dist/core/{RadialGradient-BXLBHnCC.js → RadialGradient-C1Fb8TaL.js} +44 -185
  134. package/dist/core/RadialWipe-CA5xWWPN.js +222 -0
  135. package/dist/core/RandomBars-B7ZwitL3.js +238 -0
  136. package/dist/core/{ReactionDiffusion-r1qHYWoB.js → ReactionDiffusion--54drNkY.js} +403 -1270
  137. package/dist/core/{RectangularCoordinates-CFGiELUv.js → RectangularCoordinates-BEOFurXt.js} +14 -70
  138. package/dist/core/{ReflectivePlane-BbKUjtUs.js → ReflectivePlane-wERmyiKx.js} +12 -77
  139. package/dist/core/{Repeater-DZhhgwMr.js → Repeater-Cy8up7cj.js} +2 -2
  140. package/dist/core/{Ring-DFxV0XzX.js → Ring-Cogdtn-0.js} +19 -134
  141. package/dist/core/{RippleWipe-DFh-8SmT.js → RippleWipe-fJwyE4vj.js} +24 -273
  142. package/dist/core/{Ripples-BG24IcNH.js → Ripples-BSHfhVG1.js} +3 -3
  143. package/dist/core/RoundedRect-D3intNNI.js +188 -0
  144. package/dist/core/{Saturation-DKbtxVNf.js → Saturation-D42Bfc5P.js} +14 -12
  145. package/dist/core/{Scratches-C40D6A1_.js → Scratches-Ih3Kx_UW.js} +5 -5
  146. package/dist/core/{Sharpness-DygCiVsY.js → Sharpness-Dyh6312-.js} +11 -11
  147. package/dist/core/{Shatter-eVP3Mt9W.js → Shatter-Qc5aMkWj.js} +3 -4
  148. package/dist/core/{SimplexNoise-HorjLzId.js → SimplexNoise-E7ssgWPN.js} +37 -179
  149. package/dist/core/{SineWave-CTIhqhO-.js → SineWave-CnPtZLSs.js} +6 -5
  150. package/dist/core/{SliceWipe-D3yX3CAm.js → SliceWipe-Byb46V6I.js} +15 -25
  151. package/dist/core/Smoke-5x6IAk2_.js +1265 -0
  152. package/dist/core/SmokeFill-DOQpTlCv.js +3192 -0
  153. package/dist/core/SmokeFlow-B4fdM2M-.js +903 -0
  154. package/dist/core/{Solarize-wvgIpPSb.js → Solarize-BB0bXhP0.js} +15 -15
  155. package/dist/core/{SolidColor-CQ9bQ-k6.js → SolidColor-D-6N9JmI.js} +1 -1
  156. package/dist/core/{Spherize-N33ACzeM.js → Spherize-aWpru70e.js} +2 -2
  157. package/dist/core/{Spiral-NeLWfZ6k.js → Spiral-Dbm2j7mM.js} +5 -4
  158. package/dist/core/Star-XtB9FBhQ.js +187 -0
  159. package/dist/core/{Stone-mVzuC5SK.js → Stone-i7v3RIb9.js} +2 -2
  160. package/dist/core/{Strands-C19HsqO_.js → Strands-BFaZBnNo.js} +6 -5
  161. package/dist/core/{Stretch-CAGlZjVf.js → Stretch-BKg0gjm4.js} +15 -72
  162. package/dist/core/{Stripes-DH9wZV3F.js → Stripes-B_SkTR2m.js} +83 -378
  163. package/dist/core/{StudioBackground-DPsj_N10.js → StudioBackground-CUsUWJ2L.js} +14 -133
  164. package/dist/core/{SunBurst-D5p0QAnh.js → SunBurst-DiqSzz5A.js} +34 -52
  165. package/dist/core/{Surface3D-HSAAGomd.js → Surface3D-DxzfMHn2.js} +15 -21
  166. package/dist/core/{Swirl-C1lH2gAk.js → Swirl-DBxZ6Wud.js} +3 -3
  167. package/dist/core/Teardrop-CnhwMyQx.js +168 -0
  168. package/dist/core/{Text-DPjLa6Eh.js → Text-Cb6QJNWo.js} +51 -70
  169. package/dist/core/{ThinFilm-DhpK-SoR.js → ThinFilm-B7CTONK1.js} +28 -176
  170. package/dist/core/{TiltShift-e57KIilk.js → TiltShift-DqEFOoJG.js} +62 -368
  171. package/dist/core/{TimeTrail-CYofyeeE.js → TimeTrail-G_JamlY8.js} +28 -73
  172. package/dist/core/{Tint-DBM82OkZ.js → Tint-Dj1rSoJ0.js} +14 -21
  173. package/dist/core/{Trapezoid-DaIBhsop.js → Trapezoid-D2PMU9G3.js} +40 -160
  174. package/dist/core/{TriangularGrid-CBOVJOcR.js → TriangularGrid-C3DBCmaj.js} +69 -349
  175. package/dist/core/{Tritone-D6Dur2eo.js → Tritone-DfULv51I.js} +11 -8
  176. package/dist/core/{Truchet-sunCQd_E.js → Truchet-yjZm8xe3.js} +73 -172
  177. package/dist/core/{Twirl-D3-3HSuS.js → Twirl-DfRsql00.js} +11 -67
  178. package/dist/core/{VHS-DtyeGxi8.js → VHS-Z23X9XD6.js} +1 -1
  179. package/dist/core/VenetianBlinds-CCucT73e.js +188 -0
  180. package/dist/core/Vesica-BIGpXjWv.js +168 -0
  181. package/dist/core/{Vibrance-B8gBhQS7.js → Vibrance-CtlvCONz.js} +15 -11
  182. package/dist/core/VideoTexture-DW6bQduh.js +58 -0
  183. package/dist/core/{Vignette-yIXlpfCE.js → Vignette-Dz3pPnPR.js} +24 -21
  184. package/dist/core/Voronoi-5QA-0zme.js +363 -0
  185. package/dist/core/{Water-uLbQQrt-.js → Water-DlvNrnrU.js} +84 -269
  186. package/dist/core/{Watercolor-CcZ0fVEu.js → Watercolor-BWx4xdwk.js} +3 -3
  187. package/dist/core/{WaveDistortion-DasSsVxv.js → WaveDistortion-CRQzZDLP.js} +18 -66
  188. package/dist/core/{WaveletNoise-DpRWc5Qw.js → WaveletNoise-CZS67VBU.js} +36 -99
  189. package/dist/core/{Weave-CLGYIcmf.js → Weave-DpwAU5Rn.js} +77 -254
  190. package/dist/core/WebcamTexture-DauLQjCl.js +130 -0
  191. package/dist/core/{Wool-uy61uieK.js → Wool-CEaWGZB1.js} +2 -2
  192. package/dist/core/WorleyNoise-CjRMr7xP.js +558 -0
  193. package/dist/core/{ZoomBlur-OQP2jw3F.js → ZoomBlur-DgG9JA7a.js} +18 -29
  194. package/dist/core/aa-C8WSqiNB.js +1094 -0
  195. package/dist/core/{agents-BVhq_Z2T.js → agents-C_kohsYu.js} +1 -1
  196. package/dist/core/{bevel-BGAb1fb2.js → bevel-ogqjoZKV.js} +1 -1
  197. package/dist/core/{blur-cLcFzL4x.js → blur-CZuIxzX6.js} +1782 -3
  198. package/dist/core/canvasRaster-BB2bNhS7.js +80 -0
  199. package/dist/core/cells-CM9mfnTr.js +1042 -0
  200. package/dist/core/cellular-qYnxKdPx.js +1593 -0
  201. package/dist/core/constants-DoOzbl5b.js +9 -0
  202. package/dist/core/{sdf-B8rPE1PG.js → device-B0ZwBfOg.js} +107 -6
  203. package/dist/core/{edges-B7Yet3LV.js → edges-CD7gCAto.js} +665 -1
  204. package/dist/core/fields-CC0756V2.js +1311 -0
  205. package/dist/core/geom-90G-d_hc.js +1036 -0
  206. package/dist/core/{glass-CNFJB2On.js → glass-D8xs_kIG.js} +1 -1
  207. package/dist/core/gpu/compute.d.ts +80 -9
  208. package/dist/core/gpu/compute.d.ts.map +1 -1
  209. package/dist/core/gpu/contract.d.ts +22 -1
  210. package/dist/core/gpu/contract.d.ts.map +1 -1
  211. package/dist/core/gpu/index.d.ts.map +1 -1
  212. package/dist/core/gpu/kit/aa.d.ts +111 -0
  213. package/dist/core/gpu/kit/aa.d.ts.map +1 -0
  214. package/dist/core/gpu/kit/blur.d.ts +288 -9
  215. package/dist/core/gpu/kit/blur.d.ts.map +1 -1
  216. package/dist/core/gpu/kit/cells.d.ts +136 -0
  217. package/dist/core/gpu/kit/cells.d.ts.map +1 -0
  218. package/dist/core/gpu/kit/cellular.d.ts +102 -0
  219. package/dist/core/gpu/kit/cellular.d.ts.map +1 -0
  220. package/dist/core/gpu/kit/constants.d.ts +52 -0
  221. package/dist/core/gpu/kit/constants.d.ts.map +1 -0
  222. package/dist/core/gpu/kit/effects/index.d.ts +2 -3
  223. package/dist/core/gpu/kit/effects/index.d.ts.map +1 -1
  224. package/dist/core/gpu/kit/effects/raymarch3d.d.ts +17 -34
  225. package/dist/core/gpu/kit/effects/raymarch3d.d.ts.map +1 -1
  226. package/dist/core/gpu/kit/effects/thinFilm.d.ts +3 -1
  227. package/dist/core/gpu/kit/effects/thinFilm.d.ts.map +1 -1
  228. package/dist/core/gpu/kit/fields.d.ts +143 -0
  229. package/dist/core/gpu/kit/fields.d.ts.map +1 -0
  230. package/dist/core/gpu/kit/geom.d.ts +129 -0
  231. package/dist/core/gpu/kit/geom.d.ts.map +1 -0
  232. package/dist/core/gpu/kit/host/canvasRaster.d.ts +104 -0
  233. package/dist/core/gpu/kit/host/canvasRaster.d.ts.map +1 -0
  234. package/dist/core/gpu/kit/host/mediaLifecycle.d.ts +173 -0
  235. package/dist/core/gpu/kit/host/mediaLifecycle.d.ts.map +1 -0
  236. package/dist/core/gpu/kit/host/pointer.d.ts +155 -0
  237. package/dist/core/gpu/kit/host/pointer.d.ts.map +1 -0
  238. package/dist/core/gpu/kit/index.d.ts +10 -0
  239. package/dist/core/gpu/kit/index.d.ts.map +1 -1
  240. package/dist/core/gpu/kit/lightfields.d.ts +114 -0
  241. package/dist/core/gpu/kit/lightfields.d.ts.map +1 -0
  242. package/dist/core/gpu/kit/lighting.d.ts +115 -0
  243. package/dist/core/gpu/kit/lighting.d.ts.map +1 -0
  244. package/dist/core/gpu/kit/media.d.ts +44 -0
  245. package/dist/core/gpu/kit/media.d.ts.map +1 -1
  246. package/dist/core/gpu/kit/noiseColor.d.ts +19 -4
  247. package/dist/core/gpu/kit/noiseColor.d.ts.map +1 -1
  248. package/dist/core/gpu/kit/reveal.d.ts +75 -0
  249. package/dist/core/gpu/kit/reveal.d.ts.map +1 -0
  250. package/dist/core/gpu/kit/sampling.d.ts +43 -0
  251. package/dist/core/gpu/kit/sampling.d.ts.map +1 -1
  252. package/dist/core/gpu/kit/sdf.d.ts +23 -0
  253. package/dist/core/gpu/kit/sdf.d.ts.map +1 -1
  254. package/dist/core/gpu/kit/sdf3d.d.ts +54 -1
  255. package/dist/core/gpu/kit/sdf3d.d.ts.map +1 -1
  256. package/dist/core/gpu/kit/tone.d.ts +100 -0
  257. package/dist/core/gpu/kit/tone.d.ts.map +1 -0
  258. package/dist/core/gpu/porters.d.ts +11 -1
  259. package/dist/core/gpu/porters.d.ts.map +1 -1
  260. package/dist/core/gpu/scaffolds/agentSystem.d.ts +244 -0
  261. package/dist/core/gpu/scaffolds/agentSystem.d.ts.map +1 -0
  262. package/dist/core/gpu/scaffolds/feedbackSim.d.ts +102 -0
  263. package/dist/core/gpu/scaffolds/feedbackSim.d.ts.map +1 -0
  264. package/dist/core/gpu/scaffolds/fluids.d.ts +170 -0
  265. package/dist/core/gpu/scaffolds/fluids.d.ts.map +1 -0
  266. package/dist/core/gpu/scaffolds/lateBoundChild.d.ts +51 -0
  267. package/dist/core/gpu/scaffolds/lateBoundChild.d.ts.map +1 -0
  268. package/dist/core/gpu/scaffolds/pointwiseFilter.d.ts +77 -0
  269. package/dist/core/gpu/scaffolds/pointwiseFilter.d.ts.map +1 -0
  270. package/dist/core/gpu/scaffolds/rttFilter.d.ts +35 -0
  271. package/dist/core/gpu/scaffolds/rttFilter.d.ts.map +1 -0
  272. package/dist/core/gpu/scaffolds/sdfShape.d.ts +98 -0
  273. package/dist/core/gpu/scaffolds/sdfShape.d.ts.map +1 -0
  274. package/dist/core/gpu/scaffolds/shared.d.ts +16 -0
  275. package/dist/core/gpu/scaffolds/shared.d.ts.map +1 -0
  276. package/dist/core/gpu/scaffolds/simShared.d.ts +61 -0
  277. package/dist/core/gpu/scaffolds/simShared.d.ts.map +1 -0
  278. package/dist/core/gpu/scaffolds/uvRemapShader.d.ts +134 -0
  279. package/dist/core/gpu/scaffolds/uvRemapShader.d.ts.map +1 -0
  280. package/dist/core/index.js +230 -217
  281. package/dist/core/lightfields-ffHoLyJn.js +1550 -0
  282. package/dist/core/lighting-D3jc6qOc.js +1270 -0
  283. package/dist/core/{media-Y-WxQcQD.js → media-fQMXfvXd.js} +31 -2
  284. package/dist/core/mediaLifecycle-yHZ8w5aj.js +314 -0
  285. package/dist/core/{noise-B-PI7JUx.js → noise-Bd6IGS0W.js} +1 -1
  286. package/dist/core/{noiseColor-Cgx-FS2o.js → noiseColor-DRDY44sf.js} +2 -2
  287. package/dist/core/noiseColor-DYhX5Js1.js +28 -0
  288. package/dist/core/{noiseStylize-BN5zji1E.js → noiseStylize-CkeVSB9C.js} +2 -2
  289. package/dist/core/pointer-DGDGF-yO.js +88 -0
  290. package/dist/core/porters-DUtQounc.js +12220 -0
  291. package/dist/core/presetRenderer.d.ts.map +1 -1
  292. package/dist/core/propConfigs-k3hs8KYL.js +190 -0
  293. package/dist/core/registry.js +222 -212
  294. package/dist/core/reveal-DhktaT1C.js +1071 -0
  295. package/dist/core/{shapeEffectBounds-Svfd_R5a.js → sdf3d-CP87OlsQ.js} +18752 -18710
  296. package/dist/core/shaderRegistry-DLSuwWtO.js +431 -0
  297. package/dist/core/shaders/AngularBlur/index.d.ts +8 -4
  298. package/dist/core/shaders/AngularBlur/index.d.ts.map +1 -1
  299. package/dist/core/shaders/AngularBlur/index.js +7 -5
  300. package/dist/core/shaders/Arc/index.d.ts +0 -65
  301. package/dist/core/shaders/Arc/index.d.ts.map +1 -1
  302. package/dist/core/shaders/Arc/index.js +6 -7
  303. package/dist/core/shaders/Ascii/index.d.ts.map +1 -1
  304. package/dist/core/shaders/Ascii/index.js +8 -5
  305. package/dist/core/shaders/Aurora/index.d.ts.map +1 -1
  306. package/dist/core/shaders/Aurora/index.js +9 -6
  307. package/dist/core/shaders/BarShift/index.d.ts +1 -7
  308. package/dist/core/shaders/BarShift/index.d.ts.map +1 -1
  309. package/dist/core/shaders/BarShift/index.js +8 -6
  310. package/dist/core/shaders/BarnDoors/index.d.ts.map +1 -1
  311. package/dist/core/shaders/BarnDoors/index.js +8 -5
  312. package/dist/core/shaders/Beam/index.d.ts.map +1 -1
  313. package/dist/core/shaders/Beam/index.js +9 -5
  314. package/dist/core/shaders/Bend/index.d.ts +0 -6
  315. package/dist/core/shaders/Bend/index.d.ts.map +1 -1
  316. package/dist/core/shaders/Bend/index.js +7 -5
  317. package/dist/core/shaders/Blob/index.js +6 -5
  318. package/dist/core/shaders/BlockDissolve/index.d.ts.map +1 -1
  319. package/dist/core/shaders/BlockDissolve/index.js +9 -6
  320. package/dist/core/shaders/BlockNoise/index.d.ts.map +1 -1
  321. package/dist/core/shaders/BlockNoise/index.js +13 -8
  322. package/dist/core/shaders/BlueNoise/index.d.ts.map +1 -1
  323. package/dist/core/shaders/BlueNoise/index.js +13 -8
  324. package/dist/core/shaders/Blur/index.d.ts +6 -6
  325. package/dist/core/shaders/Blur/index.d.ts.map +1 -1
  326. package/dist/core/shaders/Blur/index.js +7 -6
  327. package/dist/core/shaders/Boids/index.d.ts.map +1 -1
  328. package/dist/core/shaders/Boids/index.js +9 -8
  329. package/dist/core/shaders/BokehBlur/index.d.ts +16 -16
  330. package/dist/core/shaders/BokehBlur/index.d.ts.map +1 -1
  331. package/dist/core/shaders/BokehBlur/index.js +8 -6
  332. package/dist/core/shaders/BrickPattern/index.d.ts.map +1 -1
  333. package/dist/core/shaders/BrickPattern/index.js +10 -5
  334. package/dist/core/shaders/BrightnessContrast/index.d.ts.map +1 -1
  335. package/dist/core/shaders/BrightnessContrast/index.js +6 -5
  336. package/dist/core/shaders/BrushedMetal/index.d.ts.map +1 -1
  337. package/dist/core/shaders/BrushedMetal/index.js +12 -12
  338. package/dist/core/shaders/Bulge/index.d.ts +2 -16
  339. package/dist/core/shaders/Bulge/index.d.ts.map +1 -1
  340. package/dist/core/shaders/Bulge/index.js +6 -5
  341. package/dist/core/shaders/CRTScreen/index.js +6 -5
  342. package/dist/core/shaders/CarbonFiber/index.d.ts.map +1 -1
  343. package/dist/core/shaders/CarbonFiber/index.js +12 -12
  344. package/dist/core/shaders/Chalkboard/index.js +6 -5
  345. package/dist/core/shaders/ChannelBlur/index.d.ts.map +1 -1
  346. package/dist/core/shaders/ChannelBlur/index.js +7 -6
  347. package/dist/core/shaders/CheckerWipe/index.d.ts.map +1 -1
  348. package/dist/core/shaders/CheckerWipe/index.js +8 -5
  349. package/dist/core/shaders/Checkerboard/index.d.ts +0 -2
  350. package/dist/core/shaders/Checkerboard/index.d.ts.map +1 -1
  351. package/dist/core/shaders/Checkerboard/index.js +9 -6
  352. package/dist/core/shaders/Chevron/index.d.ts.map +1 -1
  353. package/dist/core/shaders/Chevron/index.js +8 -5
  354. package/dist/core/shaders/ChromaFlow/index.js +6 -6
  355. package/dist/core/shaders/ChromaticAberration/index.js +6 -5
  356. package/dist/core/shaders/Chrome/index.d.ts.map +1 -1
  357. package/dist/core/shaders/Chrome/index.js +12 -12
  358. package/dist/core/shaders/Circle/index.d.ts +0 -50
  359. package/dist/core/shaders/Circle/index.d.ts.map +1 -1
  360. package/dist/core/shaders/Circle/index.js +6 -7
  361. package/dist/core/shaders/ColorWheel/index.d.ts.map +1 -1
  362. package/dist/core/shaders/ColorWheel/index.js +8 -5
  363. package/dist/core/shaders/CompressionArtifacts/index.js +6 -5
  364. package/dist/core/shaders/ConcentricSpin/index.d.ts +3 -17
  365. package/dist/core/shaders/ConcentricSpin/index.d.ts.map +1 -1
  366. package/dist/core/shaders/ConcentricSpin/index.js +8 -6
  367. package/dist/core/shaders/ConicGradient/index.d.ts.map +1 -1
  368. package/dist/core/shaders/ConicGradient/index.js +10 -5
  369. package/dist/core/shaders/ContourLines/index.d.ts +1 -1
  370. package/dist/core/shaders/ContourLines/index.d.ts.map +1 -1
  371. package/dist/core/shaders/ContourLines/index.js +7 -5
  372. package/dist/core/shaders/CornerPin/index.d.ts +0 -6
  373. package/dist/core/shaders/CornerPin/index.d.ts.map +1 -1
  374. package/dist/core/shaders/CornerPin/index.js +6 -5
  375. package/dist/core/shaders/Crescent/index.d.ts +0 -71
  376. package/dist/core/shaders/Crescent/index.d.ts.map +1 -1
  377. package/dist/core/shaders/Crescent/index.js +6 -7
  378. package/dist/core/shaders/Cross/index.d.ts +0 -71
  379. package/dist/core/shaders/Cross/index.d.ts.map +1 -1
  380. package/dist/core/shaders/Cross/index.js +6 -7
  381. package/dist/core/shaders/Crystal/index.d.ts.map +1 -1
  382. package/dist/core/shaders/Crystal/index.js +11 -11
  383. package/dist/core/shaders/CurlNoise/index.d.ts.map +1 -1
  384. package/dist/core/shaders/CurlNoise/index.js +13 -8
  385. package/dist/core/shaders/CursorRipples/index.d.ts.map +1 -1
  386. package/dist/core/shaders/CursorRipples/index.js +7 -5
  387. package/dist/core/shaders/CursorTrail/index.d.ts.map +1 -1
  388. package/dist/core/shaders/CursorTrail/index.js +7 -5
  389. package/dist/core/shaders/DataMosh/index.d.ts.map +1 -1
  390. package/dist/core/shaders/DataMosh/index.js +6 -5
  391. package/dist/core/shaders/DiamondGradient/index.d.ts.map +1 -1
  392. package/dist/core/shaders/DiamondGradient/index.js +10 -5
  393. package/dist/core/shaders/DiamondWipe/index.d.ts.map +1 -1
  394. package/dist/core/shaders/DiamondWipe/index.js +8 -5
  395. package/dist/core/shaders/DiffuseBlur/index.d.ts.map +1 -1
  396. package/dist/core/shaders/DiffuseBlur/index.js +6 -5
  397. package/dist/core/shaders/DisplacementMap/index.d.ts.map +1 -1
  398. package/dist/core/shaders/DisplacementMap/index.js +7 -5
  399. package/dist/core/shaders/Dither/index.d.ts.map +1 -1
  400. package/dist/core/shaders/Dither/index.js +6 -5
  401. package/dist/core/shaders/DotGrid/index.d.ts +0 -1
  402. package/dist/core/shaders/DotGrid/index.d.ts.map +1 -1
  403. package/dist/core/shaders/DotGrid/index.js +11 -6
  404. package/dist/core/shaders/DropShadow/index.d.ts.map +1 -1
  405. package/dist/core/shaders/DropShadow/index.js +8 -5
  406. package/dist/core/shaders/Duotone/index.d.ts.map +1 -1
  407. package/dist/core/shaders/Duotone/index.js +6 -5
  408. package/dist/core/shaders/Ellipse/index.d.ts +0 -65
  409. package/dist/core/shaders/Ellipse/index.d.ts.map +1 -1
  410. package/dist/core/shaders/Ellipse/index.js +6 -7
  411. package/dist/core/shaders/Emboss/index.d.ts.map +1 -1
  412. package/dist/core/shaders/Emboss/index.js +8 -10
  413. package/dist/core/shaders/Engraving/index.d.ts.map +1 -1
  414. package/dist/core/shaders/Engraving/index.js +8 -6
  415. package/dist/core/shaders/ErosionNoise/index.d.ts.map +1 -1
  416. package/dist/core/shaders/ErosionNoise/index.js +13 -8
  417. package/dist/core/shaders/Exposure/index.d.ts.map +1 -1
  418. package/dist/core/shaders/Exposure/index.js +6 -5
  419. package/dist/core/shaders/FallingLines/index.d.ts.map +1 -1
  420. package/dist/core/shaders/FallingLines/index.js +8 -5
  421. package/dist/core/shaders/FilmGrain/index.d.ts.map +1 -1
  422. package/dist/core/shaders/FilmGrain/index.js +6 -5
  423. package/dist/core/shaders/FilmStock/index.d.ts +9 -10
  424. package/dist/core/shaders/FilmStock/index.d.ts.map +1 -1
  425. package/dist/core/shaders/FilmStock/index.js +7 -6
  426. package/dist/core/shaders/Flip/index.d.ts.map +1 -1
  427. package/dist/core/shaders/Flip/index.js +6 -5
  428. package/dist/core/shaders/FloatingParticles/index.d.ts.map +1 -1
  429. package/dist/core/shaders/FloatingParticles/index.js +9 -8
  430. package/dist/core/shaders/FlowField/index.d.ts.map +1 -1
  431. package/dist/core/shaders/FlowField/index.js +8 -6
  432. package/dist/core/shaders/Flower/index.d.ts +0 -71
  433. package/dist/core/shaders/Flower/index.d.ts.map +1 -1
  434. package/dist/core/shaders/Flower/index.js +6 -7
  435. package/dist/core/shaders/FlowingGradient/index.d.ts.map +1 -1
  436. package/dist/core/shaders/FlowingGradient/index.js +8 -6
  437. package/dist/core/shaders/FlutedGlass/index.d.ts.map +1 -1
  438. package/dist/core/shaders/FlutedGlass/index.js +7 -5
  439. package/dist/core/shaders/Fog/index.d.ts +1 -9
  440. package/dist/core/shaders/Fog/index.d.ts.map +1 -1
  441. package/dist/core/shaders/Fog/index.js +8 -5
  442. package/dist/core/shaders/Form3D/index.d.ts.map +1 -1
  443. package/dist/core/shaders/Form3D/index.js +7 -5
  444. package/dist/core/shaders/FractalNoise/index.d.ts.map +1 -1
  445. package/dist/core/shaders/FractalNoise/index.js +12 -7
  446. package/dist/core/shaders/Frost/index.d.ts.map +1 -1
  447. package/dist/core/shaders/Frost/index.js +11 -11
  448. package/dist/core/shaders/GaborNoise/index.d.ts.map +1 -1
  449. package/dist/core/shaders/GaborNoise/index.js +13 -8
  450. package/dist/core/shaders/Glass/index.d.ts.map +1 -1
  451. package/dist/core/shaders/Glass/index.js +9 -11
  452. package/dist/core/shaders/GlassTiles/index.d.ts.map +1 -1
  453. package/dist/core/shaders/GlassTiles/index.js +7 -5
  454. package/dist/core/shaders/Glitch/index.js +6 -5
  455. package/dist/core/shaders/Glow/index.d.ts +22 -26
  456. package/dist/core/shaders/Glow/index.d.ts.map +1 -1
  457. package/dist/core/shaders/Glow/index.js +7 -6
  458. package/dist/core/shaders/Godrays/index.d.ts.map +1 -1
  459. package/dist/core/shaders/Godrays/index.js +9 -5
  460. package/dist/core/shaders/Goo/index.d.ts.map +1 -1
  461. package/dist/core/shaders/Goo/index.js +9 -10
  462. package/dist/core/shaders/GradientMap/index.d.ts.map +1 -1
  463. package/dist/core/shaders/GradientMap/index.js +7 -5
  464. package/dist/core/shaders/Grayscale/index.d.ts.map +1 -1
  465. package/dist/core/shaders/Grayscale/index.js +6 -5
  466. package/dist/core/shaders/Grid/index.d.ts +0 -1
  467. package/dist/core/shaders/Grid/index.d.ts.map +1 -1
  468. package/dist/core/shaders/Grid/index.js +11 -6
  469. package/dist/core/shaders/GridDistortion/index.d.ts +0 -6
  470. package/dist/core/shaders/GridDistortion/index.d.ts.map +1 -1
  471. package/dist/core/shaders/GridDistortion/index.js +6 -5
  472. package/dist/core/shaders/Group/index.js +6 -5
  473. package/dist/core/shaders/HTMLInCanvas/index.d.ts.map +1 -1
  474. package/dist/core/shaders/HTMLInCanvas/index.js +7 -5
  475. package/dist/core/shaders/Halftone/index.d.ts.map +1 -1
  476. package/dist/core/shaders/Halftone/index.js +7 -5
  477. package/dist/core/shaders/Heart/index.d.ts +0 -59
  478. package/dist/core/shaders/Heart/index.d.ts.map +1 -1
  479. package/dist/core/shaders/Heart/index.js +6 -7
  480. package/dist/core/shaders/Heatmap/index.d.ts.map +1 -1
  481. package/dist/core/shaders/Heatmap/index.js +10 -11
  482. package/dist/core/shaders/HexGrid/index.d.ts.map +1 -1
  483. package/dist/core/shaders/HexGrid/index.js +10 -5
  484. package/dist/core/shaders/Hologram/index.d.ts.map +1 -1
  485. package/dist/core/shaders/Hologram/index.js +10 -11
  486. package/dist/core/shaders/Holographic/index.d.ts.map +1 -1
  487. package/dist/core/shaders/Holographic/index.js +11 -11
  488. package/dist/core/shaders/HueShift/index.d.ts.map +1 -1
  489. package/dist/core/shaders/HueShift/index.js +7 -5
  490. package/dist/core/shaders/ImageTexture/index.d.ts +0 -6
  491. package/dist/core/shaders/ImageTexture/index.d.ts.map +1 -1
  492. package/dist/core/shaders/ImageTexture/index.js +6 -7
  493. package/dist/core/shaders/InkFlow/index.d.ts +1 -9
  494. package/dist/core/shaders/InkFlow/index.d.ts.map +1 -1
  495. package/dist/core/shaders/InkFlow/index.js +7 -5
  496. package/dist/core/shaders/Invert/index.d.ts.map +1 -1
  497. package/dist/core/shaders/Invert/index.js +6 -5
  498. package/dist/core/shaders/IrisWipe/index.d.ts.map +1 -1
  499. package/dist/core/shaders/IrisWipe/index.js +8 -5
  500. package/dist/core/shaders/IsometricCubes/index.d.ts.map +1 -1
  501. package/dist/core/shaders/IsometricCubes/index.js +10 -5
  502. package/dist/core/shaders/Kaleidoscope/index.d.ts +2 -16
  503. package/dist/core/shaders/Kaleidoscope/index.d.ts.map +1 -1
  504. package/dist/core/shaders/Kaleidoscope/index.js +7 -5
  505. package/dist/core/shaders/KeyFrames/index.d.ts.map +1 -1
  506. package/dist/core/shaders/KeyFrames/index.js +7 -5
  507. package/dist/core/shaders/LensDistortion/index.js +6 -6
  508. package/dist/core/shaders/LensFlare/index.d.ts.map +1 -1
  509. package/dist/core/shaders/LensFlare/index.js +10 -5
  510. package/dist/core/shaders/LightEdge/index.d.ts.map +1 -1
  511. package/dist/core/shaders/LightEdge/index.js +10 -11
  512. package/dist/core/shaders/LightLeak/index.d.ts.map +1 -1
  513. package/dist/core/shaders/LightLeak/index.js +10 -6
  514. package/dist/core/shaders/Line/index.js +6 -5
  515. package/dist/core/shaders/LinearBlur/index.d.ts +2 -1
  516. package/dist/core/shaders/LinearBlur/index.d.ts.map +1 -1
  517. package/dist/core/shaders/LinearBlur/index.js +8 -5
  518. package/dist/core/shaders/LinearGradient/index.d.ts.map +1 -1
  519. package/dist/core/shaders/LinearGradient/index.js +8 -5
  520. package/dist/core/shaders/LinearWipe/index.d.ts.map +1 -1
  521. package/dist/core/shaders/LinearWipe/index.js +8 -5
  522. package/dist/core/shaders/LiquidMetal/index.d.ts.map +1 -1
  523. package/dist/core/shaders/LiquidMetal/index.js +12 -12
  524. package/dist/core/shaders/Liquify/index.d.ts +0 -6
  525. package/dist/core/shaders/Liquify/index.d.ts.map +1 -1
  526. package/dist/core/shaders/Liquify/index.js +6 -5
  527. package/dist/core/shaders/MagneticFilings/index.d.ts.map +1 -1
  528. package/dist/core/shaders/MagneticFilings/index.js +9 -8
  529. package/dist/core/shaders/Marble/index.d.ts.map +1 -1
  530. package/dist/core/shaders/Marble/index.js +9 -6
  531. package/dist/core/shaders/Mirror/index.d.ts +2 -16
  532. package/dist/core/shaders/Mirror/index.d.ts.map +1 -1
  533. package/dist/core/shaders/Mirror/index.js +7 -5
  534. package/dist/core/shaders/MultiPointGradient/index.d.ts.map +1 -1
  535. package/dist/core/shaders/MultiPointGradient/index.js +7 -5
  536. package/dist/core/shaders/Neon/index.d.ts.map +1 -1
  537. package/dist/core/shaders/Neon/index.js +6 -9
  538. package/dist/core/shaders/NoiseDissolve/index.d.ts.map +1 -1
  539. package/dist/core/shaders/NoiseDissolve/index.js +9 -6
  540. package/dist/core/shaders/ObjectTracker/index.d.ts.map +1 -1
  541. package/dist/core/shaders/ObjectTracker/index.js +9 -6
  542. package/dist/core/shaders/PagePeel/index.d.ts.map +1 -1
  543. package/dist/core/shaders/PagePeel/index.js +7 -5
  544. package/dist/core/shaders/Paper/index.js +7 -6
  545. package/dist/core/shaders/Parallelogram/index.d.ts +0 -71
  546. package/dist/core/shaders/Parallelogram/index.d.ts.map +1 -1
  547. package/dist/core/shaders/Parallelogram/index.js +6 -7
  548. package/dist/core/shaders/ParticleField/index.d.ts.map +1 -1
  549. package/dist/core/shaders/ParticleField/index.js +9 -8
  550. package/dist/core/shaders/ParticleFlow/index.d.ts +1 -6
  551. package/dist/core/shaders/ParticleFlow/index.d.ts.map +1 -1
  552. package/dist/core/shaders/ParticleFlow/index.js +9 -8
  553. package/dist/core/shaders/Particles/index.d.ts.map +1 -1
  554. package/dist/core/shaders/Particles/index.js +10 -11
  555. package/dist/core/shaders/PerlinNoise/index.d.ts.map +1 -1
  556. package/dist/core/shaders/PerlinNoise/index.js +13 -8
  557. package/dist/core/shaders/Perspective/index.d.ts +0 -12
  558. package/dist/core/shaders/Perspective/index.d.ts.map +1 -1
  559. package/dist/core/shaders/Perspective/index.js +7 -5
  560. package/dist/core/shaders/PixelSort/index.js +6 -5
  561. package/dist/core/shaders/PixelThrow/index.d.ts +8 -9
  562. package/dist/core/shaders/PixelThrow/index.d.ts.map +1 -1
  563. package/dist/core/shaders/PixelThrow/index.js +6 -6
  564. package/dist/core/shaders/Pixelate/index.js +6 -5
  565. package/dist/core/shaders/Plasma/index.d.ts +2 -2
  566. package/dist/core/shaders/Plasma/index.d.ts.map +1 -1
  567. package/dist/core/shaders/Plasma/index.js +12 -6
  568. package/dist/core/shaders/Plastic/index.d.ts.map +1 -1
  569. package/dist/core/shaders/Plastic/index.js +11 -11
  570. package/dist/core/shaders/PolarCoordinates/index.d.ts +2 -16
  571. package/dist/core/shaders/PolarCoordinates/index.d.ts.map +1 -1
  572. package/dist/core/shaders/PolarCoordinates/index.js +7 -5
  573. package/dist/core/shaders/Polygon/index.d.ts +0 -71
  574. package/dist/core/shaders/Polygon/index.d.ts.map +1 -1
  575. package/dist/core/shaders/Polygon/index.js +6 -7
  576. package/dist/core/shaders/Posterize/index.d.ts.map +1 -1
  577. package/dist/core/shaders/Posterize/index.js +6 -5
  578. package/dist/core/shaders/Prism/index.d.ts +2 -1
  579. package/dist/core/shaders/Prism/index.d.ts.map +1 -1
  580. package/dist/core/shaders/Prism/index.js +6 -5
  581. package/dist/core/shaders/ProgressiveBlur/index.d.ts +16 -16
  582. package/dist/core/shaders/ProgressiveBlur/index.d.ts.map +1 -1
  583. package/dist/core/shaders/ProgressiveBlur/index.js +8 -6
  584. package/dist/core/shaders/RadialGradient/index.d.ts.map +1 -1
  585. package/dist/core/shaders/RadialGradient/index.js +10 -5
  586. package/dist/core/shaders/RadialWipe/index.d.ts.map +1 -1
  587. package/dist/core/shaders/RadialWipe/index.js +8 -5
  588. package/dist/core/shaders/RandomBars/index.d.ts.map +1 -1
  589. package/dist/core/shaders/RandomBars/index.js +9 -6
  590. package/dist/core/shaders/ReactionDiffusion/index.d.ts.map +1 -1
  591. package/dist/core/shaders/ReactionDiffusion/index.js +8 -5
  592. package/dist/core/shaders/RectangularCoordinates/index.d.ts +2 -16
  593. package/dist/core/shaders/RectangularCoordinates/index.d.ts.map +1 -1
  594. package/dist/core/shaders/RectangularCoordinates/index.js +7 -5
  595. package/dist/core/shaders/ReflectivePlane/index.d.ts.map +1 -1
  596. package/dist/core/shaders/ReflectivePlane/index.js +7 -6
  597. package/dist/core/shaders/Repeater/index.js +6 -5
  598. package/dist/core/shaders/Ring/index.d.ts +0 -59
  599. package/dist/core/shaders/Ring/index.d.ts.map +1 -1
  600. package/dist/core/shaders/Ring/index.js +6 -7
  601. package/dist/core/shaders/RippleWipe/index.d.ts.map +1 -1
  602. package/dist/core/shaders/RippleWipe/index.js +8 -5
  603. package/dist/core/shaders/Ripples/index.js +6 -5
  604. package/dist/core/shaders/RoundedRect/index.d.ts +0 -71
  605. package/dist/core/shaders/RoundedRect/index.d.ts.map +1 -1
  606. package/dist/core/shaders/RoundedRect/index.js +6 -7
  607. package/dist/core/shaders/Saturation/index.d.ts.map +1 -1
  608. package/dist/core/shaders/Saturation/index.js +6 -5
  609. package/dist/core/shaders/Scratches/index.js +10 -8
  610. package/dist/core/shaders/Sharpness/index.d.ts.map +1 -1
  611. package/dist/core/shaders/Sharpness/index.js +6 -5
  612. package/dist/core/shaders/Shatter/index.js +6 -6
  613. package/dist/core/shaders/SimplexNoise/index.d.ts +0 -18
  614. package/dist/core/shaders/SimplexNoise/index.d.ts.map +1 -1
  615. package/dist/core/shaders/SimplexNoise/index.js +13 -7
  616. package/dist/core/shaders/SineWave/index.d.ts.map +1 -1
  617. package/dist/core/shaders/SineWave/index.js +7 -5
  618. package/dist/core/shaders/SliceWipe/index.d.ts.map +1 -1
  619. package/dist/core/shaders/SliceWipe/index.js +7 -5
  620. package/dist/core/shaders/Smoke/index.d.ts +1 -9
  621. package/dist/core/shaders/Smoke/index.d.ts.map +1 -1
  622. package/dist/core/shaders/Smoke/index.js +7 -5
  623. package/dist/core/shaders/SmokeFill/index.d.ts +1 -9
  624. package/dist/core/shaders/SmokeFill/index.d.ts.map +1 -1
  625. package/dist/core/shaders/SmokeFill/index.js +9 -10
  626. package/dist/core/shaders/SmokeFlow/index.d.ts +1 -9
  627. package/dist/core/shaders/SmokeFlow/index.d.ts.map +1 -1
  628. package/dist/core/shaders/SmokeFlow/index.js +7 -5
  629. package/dist/core/shaders/Solarize/index.d.ts.map +1 -1
  630. package/dist/core/shaders/Solarize/index.js +6 -5
  631. package/dist/core/shaders/SolidColor/index.js +2 -2
  632. package/dist/core/shaders/Spherize/index.js +6 -5
  633. package/dist/core/shaders/Spiral/index.d.ts.map +1 -1
  634. package/dist/core/shaders/Spiral/index.js +7 -5
  635. package/dist/core/shaders/Star/index.d.ts +0 -71
  636. package/dist/core/shaders/Star/index.d.ts.map +1 -1
  637. package/dist/core/shaders/Star/index.js +6 -7
  638. package/dist/core/shaders/Stone/index.js +4 -4
  639. package/dist/core/shaders/Strands/index.d.ts.map +1 -1
  640. package/dist/core/shaders/Strands/index.js +7 -5
  641. package/dist/core/shaders/Stretch/index.d.ts +2 -16
  642. package/dist/core/shaders/Stretch/index.d.ts.map +1 -1
  643. package/dist/core/shaders/Stretch/index.js +7 -5
  644. package/dist/core/shaders/Stripes/index.d.ts +0 -1
  645. package/dist/core/shaders/Stripes/index.d.ts.map +1 -1
  646. package/dist/core/shaders/Stripes/index.js +10 -6
  647. package/dist/core/shaders/StudioBackground/index.d.ts.map +1 -1
  648. package/dist/core/shaders/StudioBackground/index.js +9 -5
  649. package/dist/core/shaders/SunBurst/index.d.ts.map +1 -1
  650. package/dist/core/shaders/SunBurst/index.js +9 -5
  651. package/dist/core/shaders/Surface3D/index.d.ts.map +1 -1
  652. package/dist/core/shaders/Surface3D/index.js +8 -7
  653. package/dist/core/shaders/Swirl/index.js +6 -5
  654. package/dist/core/shaders/Teardrop/index.d.ts +0 -65
  655. package/dist/core/shaders/Teardrop/index.d.ts.map +1 -1
  656. package/dist/core/shaders/Teardrop/index.js +6 -7
  657. package/dist/core/shaders/Text/index.d.ts.map +1 -1
  658. package/dist/core/shaders/Text/index.js +10 -6
  659. package/dist/core/shaders/ThinFilm/index.d.ts.map +1 -1
  660. package/dist/core/shaders/ThinFilm/index.js +8 -9
  661. package/dist/core/shaders/TiltShift/index.d.ts +16 -16
  662. package/dist/core/shaders/TiltShift/index.d.ts.map +1 -1
  663. package/dist/core/shaders/TiltShift/index.js +8 -6
  664. package/dist/core/shaders/TimeTrail/index.d.ts.map +1 -1
  665. package/dist/core/shaders/TimeTrail/index.js +6 -6
  666. package/dist/core/shaders/Tint/index.d.ts.map +1 -1
  667. package/dist/core/shaders/Tint/index.js +6 -5
  668. package/dist/core/shaders/Trapezoid/index.d.ts +0 -71
  669. package/dist/core/shaders/Trapezoid/index.d.ts.map +1 -1
  670. package/dist/core/shaders/Trapezoid/index.js +6 -7
  671. package/dist/core/shaders/TriangularGrid/index.d.ts.map +1 -1
  672. package/dist/core/shaders/TriangularGrid/index.js +10 -5
  673. package/dist/core/shaders/Tritone/index.d.ts.map +1 -1
  674. package/dist/core/shaders/Tritone/index.js +6 -5
  675. package/dist/core/shaders/Truchet/index.d.ts.map +1 -1
  676. package/dist/core/shaders/Truchet/index.js +10 -5
  677. package/dist/core/shaders/Twirl/index.d.ts +2 -16
  678. package/dist/core/shaders/Twirl/index.d.ts.map +1 -1
  679. package/dist/core/shaders/Twirl/index.js +6 -5
  680. package/dist/core/shaders/VHS/index.js +6 -5
  681. package/dist/core/shaders/VenetianBlinds/index.d.ts.map +1 -1
  682. package/dist/core/shaders/VenetianBlinds/index.js +8 -5
  683. package/dist/core/shaders/Vesica/index.d.ts +0 -65
  684. package/dist/core/shaders/Vesica/index.d.ts.map +1 -1
  685. package/dist/core/shaders/Vesica/index.js +6 -7
  686. package/dist/core/shaders/Vibrance/index.d.ts.map +1 -1
  687. package/dist/core/shaders/Vibrance/index.js +6 -5
  688. package/dist/core/shaders/VideoTexture/index.d.ts +0 -25
  689. package/dist/core/shaders/VideoTexture/index.d.ts.map +1 -1
  690. package/dist/core/shaders/VideoTexture/index.js +7 -7
  691. package/dist/core/shaders/Vignette/index.d.ts.map +1 -1
  692. package/dist/core/shaders/Vignette/index.js +6 -5
  693. package/dist/core/shaders/Voronoi/index.d.ts.map +1 -1
  694. package/dist/core/shaders/Voronoi/index.js +11 -5
  695. package/dist/core/shaders/Water/index.d.ts.map +1 -1
  696. package/dist/core/shaders/Water/index.js +11 -11
  697. package/dist/core/shaders/Watercolor/index.js +7 -6
  698. package/dist/core/shaders/WaveDistortion/index.d.ts +0 -6
  699. package/dist/core/shaders/WaveDistortion/index.d.ts.map +1 -1
  700. package/dist/core/shaders/WaveDistortion/index.js +7 -5
  701. package/dist/core/shaders/WaveletNoise/index.d.ts.map +1 -1
  702. package/dist/core/shaders/WaveletNoise/index.js +13 -8
  703. package/dist/core/shaders/Weave/index.d.ts.map +1 -1
  704. package/dist/core/shaders/Weave/index.js +10 -5
  705. package/dist/core/shaders/WebcamTexture/index.d.ts +0 -6
  706. package/dist/core/shaders/WebcamTexture/index.d.ts.map +1 -1
  707. package/dist/core/shaders/WebcamTexture/index.js +8 -7
  708. package/dist/core/shaders/Wool/index.js +4 -4
  709. package/dist/core/shaders/WorleyNoise/index.d.ts +2 -2
  710. package/dist/core/shaders/WorleyNoise/index.d.ts.map +1 -1
  711. package/dist/core/shaders/WorleyNoise/index.js +12 -5
  712. package/dist/core/shaders/ZoomBlur/index.d.ts +2 -1
  713. package/dist/core/shaders/ZoomBlur/index.d.ts.map +1 -1
  714. package/dist/core/shaders/ZoomBlur/index.js +7 -5
  715. package/dist/core/tone-DPUvX6X0.js +705 -0
  716. package/dist/core/utilities/halfUvProps.d.ts +35 -0
  717. package/dist/core/utilities/halfUvProps.d.ts.map +1 -0
  718. package/dist/core/utilities/measure.d.ts.map +1 -1
  719. package/dist/core/utilities/propConfigs.d.ts +106 -0
  720. package/dist/core/utilities/propConfigs.d.ts.map +1 -0
  721. package/dist/core/utilities/transformations/index.js +1 -1
  722. package/dist/js/bundle.js +176 -176
  723. package/dist/js/createShader.js +1 -1
  724. package/dist/react/Shader.js +1 -1
  725. package/dist/react/bundle.js +176 -176
  726. package/dist/registry.js +99 -90
  727. package/dist/solid/engine/Shader.js +1 -1
  728. package/dist/svelte/index.js +1 -1
  729. package/dist/vue/Shader.vue_vue_type_script_setup_true_lang.js +1 -1
  730. package/package.json +1 -1
  731. package/dist/core/Arc-DhhcsMqr.js +0 -331
  732. package/dist/core/BarnDoors-Cnyfsla8.js +0 -447
  733. package/dist/core/BlockDissolve-i8V6gmZw.js +0 -365
  734. package/dist/core/Blur-B8NcZJdr.js +0 -701
  735. package/dist/core/Checkerboard-BnWdSZLM.js +0 -709
  736. package/dist/core/Circle-CJ4IbgBH.js +0 -358
  737. package/dist/core/Crescent-BKcpTzwd.js +0 -335
  738. package/dist/core/Cross-CDUSIOgx.js +0 -335
  739. package/dist/core/Ellipse-NdZQjjl7.js +0 -316
  740. package/dist/core/Flower--rN6c2HY.js +0 -335
  741. package/dist/core/Fog-2iNe3zZl.js +0 -5667
  742. package/dist/core/Glow-D_nSsYo1.js +0 -2051
  743. package/dist/core/Grid-D8ewrixy.js +0 -1346
  744. package/dist/core/Heart-0eDZ50ZK.js +0 -297
  745. package/dist/core/ImageTexture-B5oPuXeI.js +0 -183
  746. package/dist/core/InkFlow-C7l_qlaJ.js +0 -4983
  747. package/dist/core/IrisWipe-Dg9iiTjF.js +0 -418
  748. package/dist/core/LinearWipe-D5UkI1cK.js +0 -423
  749. package/dist/core/Parallelogram-D7bW1gMV.js +0 -335
  750. package/dist/core/Plasma-zC1y0At6.js +0 -715
  751. package/dist/core/Polygon-0kVtkdec.js +0 -379
  752. package/dist/core/RadialWipe-DfJ3dL7p.js +0 -528
  753. package/dist/core/RandomBars-B-EaAz9c.js +0 -490
  754. package/dist/core/RoundedRect-B2EDoIqT.js +0 -336
  755. package/dist/core/Smoke-CFr-A3JD.js +0 -5003
  756. package/dist/core/SmokeFill-DglhxF4x.js +0 -7118
  757. package/dist/core/SmokeFlow-CC1tfLRh.js +0 -4610
  758. package/dist/core/Star-DqkPHXlP.js +0 -335
  759. package/dist/core/Teardrop-b8XQR6NO.js +0 -316
  760. package/dist/core/VenetianBlinds-H8OVGxhT.js +0 -459
  761. package/dist/core/Vesica-C8MrL_up.js +0 -316
  762. package/dist/core/VideoTexture--U8aiyP1.js +0 -927
  763. package/dist/core/Voronoi-BW4RE3MQ.js +0 -935
  764. package/dist/core/WebcamTexture--GTVU-Bm.js +0 -220
  765. package/dist/core/WorleyNoise-i7i0azT8.js +0 -1667
  766. package/dist/core/compute-Ax-p6Ubc.js +0 -31
  767. package/dist/core/dataEncoding-CEmpiitu.js +0 -24
  768. package/dist/core/device-BODv_4aH.js +0 -10
  769. package/dist/core/gpu/kit/effects/prism.d.ts +0 -111
  770. package/dist/core/gpu/kit/effects/prism.d.ts.map +0 -1
  771. package/dist/core/naturalSize-BPCi_I-Z.js +0 -24
  772. package/dist/core/noiseColor-BQAO-Rjk.js +0 -103
  773. package/dist/core/porters-D_xmIPz2.js +0 -991
  774. package/dist/core/shaderRegistry-DFRVhoj2.js +0 -431
  775. /package/dist/core/{fonts-DxVn9e-I.js → fonts-ScBvKolx.js} +0 -0
  776. /package/dist/core/{transformations-C7gn_5rF.js → transformations-B-zNWNdd.js} +0 -0
@@ -1,5003 +0,0 @@
1
- import { At as max, Dt as floor, Gt as data_exports, Ht as sqrt, L as colorMixing_exports, Mt as mix, Tt as exp, Yt as textureStorage2d, _t as abs, an as vec2u, b as vec4, cn as vec4f, ct as textureStore, d as ZERO, dn as u32, en as struct, gt as select, it as std_exports, jt as min, ln as f32, m as call, nt as src_default, qt as arrayOf, un as i32, xt as clamp } from "./edges-B7Yet3LV.js";
2
- import { S as mixColorStopsRuntime, h as colorStopsPropConfig } from "./porters-D_xmIPz2.js";
3
- import { n as createGuardedCompute, r as createStateBuffer } from "./compute-Ax-p6Ubc.js";
4
- import { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from "./transformations-C7gn_5rF.js";
5
- var N = 256;
6
- var COUNT = N * N;
7
- var JACOBI_ITERS = 10;
8
- var PRESSURE_DISSIPATION = .8;
9
- var VELOCITY_DISSIPATION = .2;
10
- var STATE_FORMAT = "rgba16float";
11
- var cm = colorMixing_exports;
12
- var FluidParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) => a))(struct({
13
- dt: f32,
14
- emitX: f32,
15
- emitY: f32,
16
- emitVelX: f32,
17
- emitVelY: f32,
18
- perpDirX: f32,
19
- perpDirY: f32,
20
- spreadFactor: f32,
21
- emitRad: f32,
22
- emitIntensity: f32,
23
- densDissip: f32,
24
- curlStrength: f32,
25
- gravity: f32,
26
- cursorX: f32,
27
- cursorY: f32,
28
- cursorVelX: f32,
29
- cursorVelY: f32,
30
- mouseActive: f32,
31
- mouseRadSq: f32,
32
- colorDecay: f32
33
- }), "FluidParams");
34
- var fluidLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) => a))(src_default.bindGroupLayout({
35
- velA: {
36
- storage: arrayOf(vec4f, COUNT),
37
- access: "mutable"
38
- },
39
- velB: {
40
- storage: arrayOf(vec4f, COUNT),
41
- access: "mutable"
42
- },
43
- densA: {
44
- storage: arrayOf(vec4f, COUNT),
45
- access: "mutable"
46
- },
47
- densB: {
48
- storage: arrayOf(vec4f, COUNT),
49
- access: "mutable"
50
- },
51
- pressure: {
52
- storage: arrayOf(f32, COUNT),
53
- access: "mutable"
54
- },
55
- divergence: {
56
- storage: arrayOf(f32, COUNT),
57
- access: "mutable"
58
- },
59
- params: { uniform: FluidParams }
60
- }), "fluidLayout");
61
- var outputLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) => a))(src_default.bindGroupLayout({
62
- densA: {
63
- storage: arrayOf(vec4f, COUNT),
64
- access: "readonly"
65
- },
66
- outTex: { storageTexture: textureStorage2d(STATE_FORMAT, "write-only") }
67
- }), "outputLayout");
68
- var nidx = src_default.fn([
69
- i32,
70
- i32,
71
- i32,
72
- i32
73
- ], u32)(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ii, ji, di, dj) => {
74
- "use gpu";
75
- const row = clamp(__tsover_add(ii, di), 0, __tsover_sub(N, 1));
76
- const col = clamp(__tsover_add(ji, dj), 0, __tsover_sub(N, 1));
77
- return u32(__tsover_add(__tsover_mul(row, N), col));
78
- }), {
79
- v: 1,
80
- name: void 0,
81
- ast: {
82
- "params": [
83
- {
84
- "type": "i",
85
- "name": "ii"
86
- },
87
- {
88
- "type": "i",
89
- "name": "ji"
90
- },
91
- {
92
- "type": "i",
93
- "name": "di"
94
- },
95
- {
96
- "type": "i",
97
- "name": "dj"
98
- }
99
- ],
100
- "body": [0, [
101
- [
102
- 13,
103
- "row",
104
- [
105
- 6,
106
- [
107
- 7,
108
- "std",
109
- "clamp"
110
- ],
111
- [
112
- [
113
- 1,
114
- "ii",
115
- "+",
116
- "di"
117
- ],
118
- [5, "0"],
119
- [
120
- 1,
121
- "N",
122
- "-",
123
- [5, "1"]
124
- ]
125
- ]
126
- ]
127
- ],
128
- [
129
- 13,
130
- "col",
131
- [
132
- 6,
133
- [
134
- 7,
135
- "std",
136
- "clamp"
137
- ],
138
- [
139
- [
140
- 1,
141
- "ji",
142
- "+",
143
- "dj"
144
- ],
145
- [5, "0"],
146
- [
147
- 1,
148
- "N",
149
- "-",
150
- [5, "1"]
151
- ]
152
- ]
153
- ]
154
- ],
155
- [10, [
156
- 6,
157
- [
158
- 7,
159
- "d",
160
- "u32"
161
- ],
162
- [[
163
- 1,
164
- [
165
- 1,
166
- "row",
167
- "*",
168
- "N"
169
- ],
170
- "+",
171
- "col"
172
- ]]
173
- ]]
174
- ]],
175
- "externalNames": [
176
- "std",
177
- "N",
178
- "d"
179
- ]
180
- },
181
- externals: () => ({
182
- std: std_exports,
183
- N,
184
- d: data_exports
185
- })
186
- }) && $.f)({}));
187
- const splatKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
188
- "use gpu";
189
- const p = fluidLayout.$.params;
190
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
191
- const cellX = __tsover_add(f32(cx), .5);
192
- const cellY = __tsover_add(f32(cy), .5);
193
- const dx = __tsover_sub(cellX, p.emitX);
194
- const dy = __tsover_sub(cellY, p.emitY);
195
- const distSq = __tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy));
196
- const radSq = max(__tsover_mul(p.emitRad, p.emitRad), f32(1));
197
- const influence = exp(__tsover_mul(__tsover_div(distSq, radSq), -1));
198
- const cell = fluidLayout.$.densA[idx];
199
- const oldDens = cell.x;
200
- const addDens = __tsover_mul(__tsover_mul(__tsover_mul(p.emitIntensity, influence), p.dt), 8);
201
- const newDens = min(__tsover_add(oldDens, addDens), 1);
202
- const rejuvenate = __tsover_div(addDens, max(newDens, f32(.001)));
203
- fluidLayout.$.densA[idx] = vec4f(newDens, __tsover_mul(cell.y, __tsover_sub(1, min(rejuvenate, 1))), 0, 0);
204
- const vel = fluidLayout.$.velA[idx];
205
- const perpOff = __tsover_div(__tsover_add(__tsover_mul(dx, p.perpDirX), __tsover_mul(dy, p.perpDirY)), max(p.emitRad, f32(1)));
206
- const vmSq = max(__tsover_add(__tsover_mul(p.emitVelX, p.emitVelX), __tsover_mul(p.emitVelY, p.emitVelY)), f32(1));
207
- const tvx = __tsover_add(p.emitVelX, __tsover_mul(__tsover_mul(__tsover_mul(p.perpDirX, perpOff), p.spreadFactor), sqrt(vmSq)));
208
- const tvy = __tsover_add(p.emitVelY, __tsover_mul(__tsover_mul(__tsover_mul(p.perpDirY, perpOff), p.spreadFactor), sqrt(vmSq)));
209
- const br = min(__tsover_mul(__tsover_mul(influence, p.dt), 3), 1);
210
- const gravForce = __tsover_mul(__tsover_mul(__tsover_mul(p.gravity, oldDens), p.dt), __tsover_mul(N, .08));
211
- const cursorDX = __tsover_sub(cellX, p.cursorX);
212
- const cursorDY = __tsover_sub(cellY, p.cursorY);
213
- const cursorDistSq = __tsover_add(__tsover_mul(cursorDX, cursorDX), __tsover_mul(cursorDY, cursorDY));
214
- const cursorInf = __tsover_mul(exp(__tsover_mul(__tsover_div(cursorDistSq, max(p.mouseRadSq, f32(1))), -1)), p.mouseActive);
215
- fluidLayout.$.velA[idx] = vec4f(__tsover_add(mix(vel.x, tvx, br), __tsover_mul(p.cursorVelX, cursorInf)), __tsover_add(__tsover_add(mix(vel.y, tvy, br), gravForce), __tsover_mul(p.cursorVelY, cursorInf)), vel.z, 0);
216
- }), {
217
- v: 1,
218
- name: void 0,
219
- ast: {
220
- "params": [{
221
- "type": "i",
222
- "name": "cx"
223
- }, {
224
- "type": "i",
225
- "name": "cy"
226
- }],
227
- "body": [0, [
228
- [
229
- 13,
230
- "p",
231
- [
232
- 7,
233
- [
234
- 7,
235
- "fluidLayout",
236
- "$"
237
- ],
238
- "params"
239
- ]
240
- ],
241
- [
242
- 13,
243
- "idx",
244
- [
245
- 1,
246
- [
247
- 1,
248
- "cy",
249
- "*",
250
- [
251
- 6,
252
- [
253
- 7,
254
- "d",
255
- "u32"
256
- ],
257
- ["N"]
258
- ]
259
- ],
260
- "+",
261
- "cx"
262
- ]
263
- ],
264
- [
265
- 13,
266
- "cellX",
267
- [
268
- 1,
269
- [
270
- 6,
271
- [
272
- 7,
273
- "d",
274
- "f32"
275
- ],
276
- ["cx"]
277
- ],
278
- "+",
279
- [5, "0.5"]
280
- ]
281
- ],
282
- [
283
- 13,
284
- "cellY",
285
- [
286
- 1,
287
- [
288
- 6,
289
- [
290
- 7,
291
- "d",
292
- "f32"
293
- ],
294
- ["cy"]
295
- ],
296
- "+",
297
- [5, "0.5"]
298
- ]
299
- ],
300
- [
301
- 13,
302
- "dx",
303
- [
304
- 1,
305
- "cellX",
306
- "-",
307
- [
308
- 7,
309
- "p",
310
- "emitX"
311
- ]
312
- ]
313
- ],
314
- [
315
- 13,
316
- "dy",
317
- [
318
- 1,
319
- "cellY",
320
- "-",
321
- [
322
- 7,
323
- "p",
324
- "emitY"
325
- ]
326
- ]
327
- ],
328
- [
329
- 13,
330
- "distSq",
331
- [
332
- 1,
333
- [
334
- 1,
335
- "dx",
336
- "*",
337
- "dx"
338
- ],
339
- "+",
340
- [
341
- 1,
342
- "dy",
343
- "*",
344
- "dy"
345
- ]
346
- ]
347
- ],
348
- [
349
- 13,
350
- "radSq",
351
- [
352
- 6,
353
- [
354
- 7,
355
- "std",
356
- "max"
357
- ],
358
- [[
359
- 1,
360
- [
361
- 7,
362
- "p",
363
- "emitRad"
364
- ],
365
- "*",
366
- [
367
- 7,
368
- "p",
369
- "emitRad"
370
- ]
371
- ], [
372
- 6,
373
- [
374
- 7,
375
- "d",
376
- "f32"
377
- ],
378
- [[5, "1"]]
379
- ]]
380
- ]
381
- ],
382
- [
383
- 13,
384
- "influence",
385
- [
386
- 6,
387
- [
388
- 7,
389
- "std",
390
- "exp"
391
- ],
392
- [[
393
- 1,
394
- [
395
- 1,
396
- "distSq",
397
- "/",
398
- "radSq"
399
- ],
400
- "*",
401
- [
402
- 4,
403
- "-",
404
- [5, "1"]
405
- ]
406
- ]]
407
- ]
408
- ],
409
- [
410
- 13,
411
- "cell",
412
- [
413
- 8,
414
- [
415
- 7,
416
- [
417
- 7,
418
- "fluidLayout",
419
- "$"
420
- ],
421
- "densA"
422
- ],
423
- "idx"
424
- ]
425
- ],
426
- [
427
- 13,
428
- "oldDens",
429
- [
430
- 7,
431
- "cell",
432
- "x"
433
- ]
434
- ],
435
- [
436
- 13,
437
- "addDens",
438
- [
439
- 1,
440
- [
441
- 1,
442
- [
443
- 1,
444
- [
445
- 7,
446
- "p",
447
- "emitIntensity"
448
- ],
449
- "*",
450
- "influence"
451
- ],
452
- "*",
453
- [
454
- 7,
455
- "p",
456
- "dt"
457
- ]
458
- ],
459
- "*",
460
- [5, "8"]
461
- ]
462
- ],
463
- [
464
- 13,
465
- "newDens",
466
- [
467
- 6,
468
- [
469
- 7,
470
- "std",
471
- "min"
472
- ],
473
- [[
474
- 1,
475
- "oldDens",
476
- "+",
477
- "addDens"
478
- ], [5, "1"]]
479
- ]
480
- ],
481
- [
482
- 13,
483
- "rejuvenate",
484
- [
485
- 1,
486
- "addDens",
487
- "/",
488
- [
489
- 6,
490
- [
491
- 7,
492
- "std",
493
- "max"
494
- ],
495
- ["newDens", [
496
- 6,
497
- [
498
- 7,
499
- "d",
500
- "f32"
501
- ],
502
- [[5, "0.001"]]
503
- ]]
504
- ]
505
- ]
506
- ],
507
- [
508
- 2,
509
- [
510
- 8,
511
- [
512
- 7,
513
- [
514
- 7,
515
- "fluidLayout",
516
- "$"
517
- ],
518
- "densA"
519
- ],
520
- "idx"
521
- ],
522
- "=",
523
- [
524
- 6,
525
- [
526
- 7,
527
- "d",
528
- "vec4f"
529
- ],
530
- [
531
- "newDens",
532
- [
533
- 1,
534
- [
535
- 7,
536
- "cell",
537
- "y"
538
- ],
539
- "*",
540
- [
541
- 1,
542
- [5, "1"],
543
- "-",
544
- [
545
- 6,
546
- [
547
- 7,
548
- "std",
549
- "min"
550
- ],
551
- ["rejuvenate", [5, "1"]]
552
- ]
553
- ]
554
- ],
555
- [5, "0"],
556
- [5, "0"]
557
- ]
558
- ]
559
- ],
560
- [
561
- 13,
562
- "vel",
563
- [
564
- 8,
565
- [
566
- 7,
567
- [
568
- 7,
569
- "fluidLayout",
570
- "$"
571
- ],
572
- "velA"
573
- ],
574
- "idx"
575
- ]
576
- ],
577
- [
578
- 13,
579
- "perpOff",
580
- [
581
- 1,
582
- [
583
- 1,
584
- [
585
- 1,
586
- "dx",
587
- "*",
588
- [
589
- 7,
590
- "p",
591
- "perpDirX"
592
- ]
593
- ],
594
- "+",
595
- [
596
- 1,
597
- "dy",
598
- "*",
599
- [
600
- 7,
601
- "p",
602
- "perpDirY"
603
- ]
604
- ]
605
- ],
606
- "/",
607
- [
608
- 6,
609
- [
610
- 7,
611
- "std",
612
- "max"
613
- ],
614
- [[
615
- 7,
616
- "p",
617
- "emitRad"
618
- ], [
619
- 6,
620
- [
621
- 7,
622
- "d",
623
- "f32"
624
- ],
625
- [[5, "1"]]
626
- ]]
627
- ]
628
- ]
629
- ],
630
- [
631
- 13,
632
- "vmSq",
633
- [
634
- 6,
635
- [
636
- 7,
637
- "std",
638
- "max"
639
- ],
640
- [[
641
- 1,
642
- [
643
- 1,
644
- [
645
- 7,
646
- "p",
647
- "emitVelX"
648
- ],
649
- "*",
650
- [
651
- 7,
652
- "p",
653
- "emitVelX"
654
- ]
655
- ],
656
- "+",
657
- [
658
- 1,
659
- [
660
- 7,
661
- "p",
662
- "emitVelY"
663
- ],
664
- "*",
665
- [
666
- 7,
667
- "p",
668
- "emitVelY"
669
- ]
670
- ]
671
- ], [
672
- 6,
673
- [
674
- 7,
675
- "d",
676
- "f32"
677
- ],
678
- [[5, "1"]]
679
- ]]
680
- ]
681
- ],
682
- [
683
- 13,
684
- "tvx",
685
- [
686
- 1,
687
- [
688
- 7,
689
- "p",
690
- "emitVelX"
691
- ],
692
- "+",
693
- [
694
- 1,
695
- [
696
- 1,
697
- [
698
- 1,
699
- [
700
- 7,
701
- "p",
702
- "perpDirX"
703
- ],
704
- "*",
705
- "perpOff"
706
- ],
707
- "*",
708
- [
709
- 7,
710
- "p",
711
- "spreadFactor"
712
- ]
713
- ],
714
- "*",
715
- [
716
- 6,
717
- [
718
- 7,
719
- "std",
720
- "sqrt"
721
- ],
722
- ["vmSq"]
723
- ]
724
- ]
725
- ]
726
- ],
727
- [
728
- 13,
729
- "tvy",
730
- [
731
- 1,
732
- [
733
- 7,
734
- "p",
735
- "emitVelY"
736
- ],
737
- "+",
738
- [
739
- 1,
740
- [
741
- 1,
742
- [
743
- 1,
744
- [
745
- 7,
746
- "p",
747
- "perpDirY"
748
- ],
749
- "*",
750
- "perpOff"
751
- ],
752
- "*",
753
- [
754
- 7,
755
- "p",
756
- "spreadFactor"
757
- ]
758
- ],
759
- "*",
760
- [
761
- 6,
762
- [
763
- 7,
764
- "std",
765
- "sqrt"
766
- ],
767
- ["vmSq"]
768
- ]
769
- ]
770
- ]
771
- ],
772
- [
773
- 13,
774
- "br",
775
- [
776
- 6,
777
- [
778
- 7,
779
- "std",
780
- "min"
781
- ],
782
- [[
783
- 1,
784
- [
785
- 1,
786
- "influence",
787
- "*",
788
- [
789
- 7,
790
- "p",
791
- "dt"
792
- ]
793
- ],
794
- "*",
795
- [5, "3"]
796
- ], [5, "1"]]
797
- ]
798
- ],
799
- [
800
- 13,
801
- "gravForce",
802
- [
803
- 1,
804
- [
805
- 1,
806
- [
807
- 1,
808
- [
809
- 7,
810
- "p",
811
- "gravity"
812
- ],
813
- "*",
814
- "oldDens"
815
- ],
816
- "*",
817
- [
818
- 7,
819
- "p",
820
- "dt"
821
- ]
822
- ],
823
- "*",
824
- [
825
- 1,
826
- "N",
827
- "*",
828
- [5, "0.08"]
829
- ]
830
- ]
831
- ],
832
- [
833
- 13,
834
- "cursorDX",
835
- [
836
- 1,
837
- "cellX",
838
- "-",
839
- [
840
- 7,
841
- "p",
842
- "cursorX"
843
- ]
844
- ]
845
- ],
846
- [
847
- 13,
848
- "cursorDY",
849
- [
850
- 1,
851
- "cellY",
852
- "-",
853
- [
854
- 7,
855
- "p",
856
- "cursorY"
857
- ]
858
- ]
859
- ],
860
- [
861
- 13,
862
- "cursorDistSq",
863
- [
864
- 1,
865
- [
866
- 1,
867
- "cursorDX",
868
- "*",
869
- "cursorDX"
870
- ],
871
- "+",
872
- [
873
- 1,
874
- "cursorDY",
875
- "*",
876
- "cursorDY"
877
- ]
878
- ]
879
- ],
880
- [
881
- 13,
882
- "cursorInf",
883
- [
884
- 1,
885
- [
886
- 6,
887
- [
888
- 7,
889
- "std",
890
- "exp"
891
- ],
892
- [[
893
- 1,
894
- [
895
- 1,
896
- "cursorDistSq",
897
- "/",
898
- [
899
- 6,
900
- [
901
- 7,
902
- "std",
903
- "max"
904
- ],
905
- [[
906
- 7,
907
- "p",
908
- "mouseRadSq"
909
- ], [
910
- 6,
911
- [
912
- 7,
913
- "d",
914
- "f32"
915
- ],
916
- [[5, "1"]]
917
- ]]
918
- ]
919
- ],
920
- "*",
921
- [
922
- 4,
923
- "-",
924
- [5, "1"]
925
- ]
926
- ]]
927
- ],
928
- "*",
929
- [
930
- 7,
931
- "p",
932
- "mouseActive"
933
- ]
934
- ]
935
- ],
936
- [
937
- 2,
938
- [
939
- 8,
940
- [
941
- 7,
942
- [
943
- 7,
944
- "fluidLayout",
945
- "$"
946
- ],
947
- "velA"
948
- ],
949
- "idx"
950
- ],
951
- "=",
952
- [
953
- 6,
954
- [
955
- 7,
956
- "d",
957
- "vec4f"
958
- ],
959
- [
960
- [
961
- 1,
962
- [
963
- 6,
964
- [
965
- 7,
966
- "std",
967
- "mix"
968
- ],
969
- [
970
- [
971
- 7,
972
- "vel",
973
- "x"
974
- ],
975
- "tvx",
976
- "br"
977
- ]
978
- ],
979
- "+",
980
- [
981
- 1,
982
- [
983
- 7,
984
- "p",
985
- "cursorVelX"
986
- ],
987
- "*",
988
- "cursorInf"
989
- ]
990
- ],
991
- [
992
- 1,
993
- [
994
- 1,
995
- [
996
- 6,
997
- [
998
- 7,
999
- "std",
1000
- "mix"
1001
- ],
1002
- [
1003
- [
1004
- 7,
1005
- "vel",
1006
- "y"
1007
- ],
1008
- "tvy",
1009
- "br"
1010
- ]
1011
- ],
1012
- "+",
1013
- "gravForce"
1014
- ],
1015
- "+",
1016
- [
1017
- 1,
1018
- [
1019
- 7,
1020
- "p",
1021
- "cursorVelY"
1022
- ],
1023
- "*",
1024
- "cursorInf"
1025
- ]
1026
- ],
1027
- [
1028
- 7,
1029
- "vel",
1030
- "z"
1031
- ],
1032
- [5, "0"]
1033
- ]
1034
- ]
1035
- ]
1036
- ]],
1037
- "externalNames": [
1038
- "fluidLayout",
1039
- "d",
1040
- "N",
1041
- "std"
1042
- ]
1043
- },
1044
- externals: () => ({
1045
- fluidLayout,
1046
- d: data_exports,
1047
- N,
1048
- std: std_exports
1049
- })
1050
- }) && $.f)({})).$name("smokeSplat");
1051
- const curlKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
1052
- "use gpu";
1053
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
1054
- const ii = i32(cy);
1055
- const ji = i32(cx);
1056
- const vL = fluidLayout.$.velA[nidx(ii, ji, 0, -1)];
1057
- const vR = fluidLayout.$.velA[nidx(ii, ji, 0, 1)];
1058
- const vU = fluidLayout.$.velA[nidx(ii, ji, -1, 0)];
1059
- const vD = fluidLayout.$.velA[nidx(ii, ji, 1, 0)];
1060
- const curl = __tsover_mul(__tsover_sub(__tsover_sub(vR.y, vL.y), __tsover_sub(vD.x, vU.x)), .5);
1061
- const vel = fluidLayout.$.velA[idx];
1062
- fluidLayout.$.velA[idx] = vec4f(vel.x, vel.y, curl, 0);
1063
- }), {
1064
- v: 1,
1065
- name: void 0,
1066
- ast: {
1067
- "params": [{
1068
- "type": "i",
1069
- "name": "cx"
1070
- }, {
1071
- "type": "i",
1072
- "name": "cy"
1073
- }],
1074
- "body": [0, [
1075
- [
1076
- 13,
1077
- "idx",
1078
- [
1079
- 1,
1080
- [
1081
- 1,
1082
- "cy",
1083
- "*",
1084
- [
1085
- 6,
1086
- [
1087
- 7,
1088
- "d",
1089
- "u32"
1090
- ],
1091
- ["N"]
1092
- ]
1093
- ],
1094
- "+",
1095
- "cx"
1096
- ]
1097
- ],
1098
- [
1099
- 13,
1100
- "ii",
1101
- [
1102
- 6,
1103
- [
1104
- 7,
1105
- "d",
1106
- "i32"
1107
- ],
1108
- ["cy"]
1109
- ]
1110
- ],
1111
- [
1112
- 13,
1113
- "ji",
1114
- [
1115
- 6,
1116
- [
1117
- 7,
1118
- "d",
1119
- "i32"
1120
- ],
1121
- ["cx"]
1122
- ]
1123
- ],
1124
- [
1125
- 13,
1126
- "vL",
1127
- [
1128
- 8,
1129
- [
1130
- 7,
1131
- [
1132
- 7,
1133
- "fluidLayout",
1134
- "$"
1135
- ],
1136
- "velA"
1137
- ],
1138
- [
1139
- 6,
1140
- "nidx",
1141
- [
1142
- "ii",
1143
- "ji",
1144
- [5, "0"],
1145
- [
1146
- 4,
1147
- "-",
1148
- [5, "1"]
1149
- ]
1150
- ]
1151
- ]
1152
- ]
1153
- ],
1154
- [
1155
- 13,
1156
- "vR",
1157
- [
1158
- 8,
1159
- [
1160
- 7,
1161
- [
1162
- 7,
1163
- "fluidLayout",
1164
- "$"
1165
- ],
1166
- "velA"
1167
- ],
1168
- [
1169
- 6,
1170
- "nidx",
1171
- [
1172
- "ii",
1173
- "ji",
1174
- [5, "0"],
1175
- [5, "1"]
1176
- ]
1177
- ]
1178
- ]
1179
- ],
1180
- [
1181
- 13,
1182
- "vU",
1183
- [
1184
- 8,
1185
- [
1186
- 7,
1187
- [
1188
- 7,
1189
- "fluidLayout",
1190
- "$"
1191
- ],
1192
- "velA"
1193
- ],
1194
- [
1195
- 6,
1196
- "nidx",
1197
- [
1198
- "ii",
1199
- "ji",
1200
- [
1201
- 4,
1202
- "-",
1203
- [5, "1"]
1204
- ],
1205
- [5, "0"]
1206
- ]
1207
- ]
1208
- ]
1209
- ],
1210
- [
1211
- 13,
1212
- "vD",
1213
- [
1214
- 8,
1215
- [
1216
- 7,
1217
- [
1218
- 7,
1219
- "fluidLayout",
1220
- "$"
1221
- ],
1222
- "velA"
1223
- ],
1224
- [
1225
- 6,
1226
- "nidx",
1227
- [
1228
- "ii",
1229
- "ji",
1230
- [5, "1"],
1231
- [5, "0"]
1232
- ]
1233
- ]
1234
- ]
1235
- ],
1236
- [
1237
- 13,
1238
- "curl",
1239
- [
1240
- 1,
1241
- [
1242
- 1,
1243
- [
1244
- 1,
1245
- [
1246
- 7,
1247
- "vR",
1248
- "y"
1249
- ],
1250
- "-",
1251
- [
1252
- 7,
1253
- "vL",
1254
- "y"
1255
- ]
1256
- ],
1257
- "-",
1258
- [
1259
- 1,
1260
- [
1261
- 7,
1262
- "vD",
1263
- "x"
1264
- ],
1265
- "-",
1266
- [
1267
- 7,
1268
- "vU",
1269
- "x"
1270
- ]
1271
- ]
1272
- ],
1273
- "*",
1274
- [5, "0.5"]
1275
- ]
1276
- ],
1277
- [
1278
- 13,
1279
- "vel",
1280
- [
1281
- 8,
1282
- [
1283
- 7,
1284
- [
1285
- 7,
1286
- "fluidLayout",
1287
- "$"
1288
- ],
1289
- "velA"
1290
- ],
1291
- "idx"
1292
- ]
1293
- ],
1294
- [
1295
- 2,
1296
- [
1297
- 8,
1298
- [
1299
- 7,
1300
- [
1301
- 7,
1302
- "fluidLayout",
1303
- "$"
1304
- ],
1305
- "velA"
1306
- ],
1307
- "idx"
1308
- ],
1309
- "=",
1310
- [
1311
- 6,
1312
- [
1313
- 7,
1314
- "d",
1315
- "vec4f"
1316
- ],
1317
- [
1318
- [
1319
- 7,
1320
- "vel",
1321
- "x"
1322
- ],
1323
- [
1324
- 7,
1325
- "vel",
1326
- "y"
1327
- ],
1328
- "curl",
1329
- [5, "0"]
1330
- ]
1331
- ]
1332
- ]
1333
- ]],
1334
- "externalNames": [
1335
- "d",
1336
- "N",
1337
- "fluidLayout",
1338
- "nidx"
1339
- ]
1340
- },
1341
- externals: () => ({
1342
- d: data_exports,
1343
- N,
1344
- fluidLayout,
1345
- nidx
1346
- })
1347
- }) && $.f)({})).$name("smokeCurl");
1348
- const vorticityKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
1349
- "use gpu";
1350
- const p = fluidLayout.$.params;
1351
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
1352
- const ii = i32(cy);
1353
- const ji = i32(cx);
1354
- const cL = abs(fluidLayout.$.velA[nidx(ii, ji, 0, -1)].z);
1355
- const cR = abs(fluidLayout.$.velA[nidx(ii, ji, 0, 1)].z);
1356
- const cU = abs(fluidLayout.$.velA[nidx(ii, ji, -1, 0)].z);
1357
- const cD = abs(fluidLayout.$.velA[nidx(ii, ji, 1, 0)].z);
1358
- const cc = fluidLayout.$.velA[idx].z;
1359
- const gx = __tsover_mul(__tsover_sub(cR, cL), .5);
1360
- const gy = __tsover_mul(__tsover_sub(cD, cU), .5);
1361
- const gl = max(sqrt(__tsover_add(__tsover_mul(gx, gx), __tsover_mul(gy, gy))), f32(1e-5));
1362
- const fx = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_div(gy, gl), cc), p.curlStrength), p.dt);
1363
- const fy = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_div(gx, gl), -1), cc), p.curlStrength), p.dt);
1364
- const vel = fluidLayout.$.velA[idx];
1365
- fluidLayout.$.velA[idx] = vec4f(__tsover_add(vel.x, fx), __tsover_add(vel.y, fy), vel.z, 0);
1366
- }), {
1367
- v: 1,
1368
- name: void 0,
1369
- ast: {
1370
- "params": [{
1371
- "type": "i",
1372
- "name": "cx"
1373
- }, {
1374
- "type": "i",
1375
- "name": "cy"
1376
- }],
1377
- "body": [0, [
1378
- [
1379
- 13,
1380
- "p",
1381
- [
1382
- 7,
1383
- [
1384
- 7,
1385
- "fluidLayout",
1386
- "$"
1387
- ],
1388
- "params"
1389
- ]
1390
- ],
1391
- [
1392
- 13,
1393
- "idx",
1394
- [
1395
- 1,
1396
- [
1397
- 1,
1398
- "cy",
1399
- "*",
1400
- [
1401
- 6,
1402
- [
1403
- 7,
1404
- "d",
1405
- "u32"
1406
- ],
1407
- ["N"]
1408
- ]
1409
- ],
1410
- "+",
1411
- "cx"
1412
- ]
1413
- ],
1414
- [
1415
- 13,
1416
- "ii",
1417
- [
1418
- 6,
1419
- [
1420
- 7,
1421
- "d",
1422
- "i32"
1423
- ],
1424
- ["cy"]
1425
- ]
1426
- ],
1427
- [
1428
- 13,
1429
- "ji",
1430
- [
1431
- 6,
1432
- [
1433
- 7,
1434
- "d",
1435
- "i32"
1436
- ],
1437
- ["cx"]
1438
- ]
1439
- ],
1440
- [
1441
- 13,
1442
- "cL",
1443
- [
1444
- 6,
1445
- [
1446
- 7,
1447
- "std",
1448
- "abs"
1449
- ],
1450
- [[
1451
- 7,
1452
- [
1453
- 8,
1454
- [
1455
- 7,
1456
- [
1457
- 7,
1458
- "fluidLayout",
1459
- "$"
1460
- ],
1461
- "velA"
1462
- ],
1463
- [
1464
- 6,
1465
- "nidx",
1466
- [
1467
- "ii",
1468
- "ji",
1469
- [5, "0"],
1470
- [
1471
- 4,
1472
- "-",
1473
- [5, "1"]
1474
- ]
1475
- ]
1476
- ]
1477
- ],
1478
- "z"
1479
- ]]
1480
- ]
1481
- ],
1482
- [
1483
- 13,
1484
- "cR",
1485
- [
1486
- 6,
1487
- [
1488
- 7,
1489
- "std",
1490
- "abs"
1491
- ],
1492
- [[
1493
- 7,
1494
- [
1495
- 8,
1496
- [
1497
- 7,
1498
- [
1499
- 7,
1500
- "fluidLayout",
1501
- "$"
1502
- ],
1503
- "velA"
1504
- ],
1505
- [
1506
- 6,
1507
- "nidx",
1508
- [
1509
- "ii",
1510
- "ji",
1511
- [5, "0"],
1512
- [5, "1"]
1513
- ]
1514
- ]
1515
- ],
1516
- "z"
1517
- ]]
1518
- ]
1519
- ],
1520
- [
1521
- 13,
1522
- "cU",
1523
- [
1524
- 6,
1525
- [
1526
- 7,
1527
- "std",
1528
- "abs"
1529
- ],
1530
- [[
1531
- 7,
1532
- [
1533
- 8,
1534
- [
1535
- 7,
1536
- [
1537
- 7,
1538
- "fluidLayout",
1539
- "$"
1540
- ],
1541
- "velA"
1542
- ],
1543
- [
1544
- 6,
1545
- "nidx",
1546
- [
1547
- "ii",
1548
- "ji",
1549
- [
1550
- 4,
1551
- "-",
1552
- [5, "1"]
1553
- ],
1554
- [5, "0"]
1555
- ]
1556
- ]
1557
- ],
1558
- "z"
1559
- ]]
1560
- ]
1561
- ],
1562
- [
1563
- 13,
1564
- "cD",
1565
- [
1566
- 6,
1567
- [
1568
- 7,
1569
- "std",
1570
- "abs"
1571
- ],
1572
- [[
1573
- 7,
1574
- [
1575
- 8,
1576
- [
1577
- 7,
1578
- [
1579
- 7,
1580
- "fluidLayout",
1581
- "$"
1582
- ],
1583
- "velA"
1584
- ],
1585
- [
1586
- 6,
1587
- "nidx",
1588
- [
1589
- "ii",
1590
- "ji",
1591
- [5, "1"],
1592
- [5, "0"]
1593
- ]
1594
- ]
1595
- ],
1596
- "z"
1597
- ]]
1598
- ]
1599
- ],
1600
- [
1601
- 13,
1602
- "cc",
1603
- [
1604
- 7,
1605
- [
1606
- 8,
1607
- [
1608
- 7,
1609
- [
1610
- 7,
1611
- "fluidLayout",
1612
- "$"
1613
- ],
1614
- "velA"
1615
- ],
1616
- "idx"
1617
- ],
1618
- "z"
1619
- ]
1620
- ],
1621
- [
1622
- 13,
1623
- "gx",
1624
- [
1625
- 1,
1626
- [
1627
- 1,
1628
- "cR",
1629
- "-",
1630
- "cL"
1631
- ],
1632
- "*",
1633
- [5, "0.5"]
1634
- ]
1635
- ],
1636
- [
1637
- 13,
1638
- "gy",
1639
- [
1640
- 1,
1641
- [
1642
- 1,
1643
- "cD",
1644
- "-",
1645
- "cU"
1646
- ],
1647
- "*",
1648
- [5, "0.5"]
1649
- ]
1650
- ],
1651
- [
1652
- 13,
1653
- "gl",
1654
- [
1655
- 6,
1656
- [
1657
- 7,
1658
- "std",
1659
- "max"
1660
- ],
1661
- [[
1662
- 6,
1663
- [
1664
- 7,
1665
- "std",
1666
- "sqrt"
1667
- ],
1668
- [[
1669
- 1,
1670
- [
1671
- 1,
1672
- "gx",
1673
- "*",
1674
- "gx"
1675
- ],
1676
- "+",
1677
- [
1678
- 1,
1679
- "gy",
1680
- "*",
1681
- "gy"
1682
- ]
1683
- ]]
1684
- ], [
1685
- 6,
1686
- [
1687
- 7,
1688
- "d",
1689
- "f32"
1690
- ],
1691
- [[5, "0.00001"]]
1692
- ]]
1693
- ]
1694
- ],
1695
- [
1696
- 13,
1697
- "fx",
1698
- [
1699
- 1,
1700
- [
1701
- 1,
1702
- [
1703
- 1,
1704
- [
1705
- 1,
1706
- "gy",
1707
- "/",
1708
- "gl"
1709
- ],
1710
- "*",
1711
- "cc"
1712
- ],
1713
- "*",
1714
- [
1715
- 7,
1716
- "p",
1717
- "curlStrength"
1718
- ]
1719
- ],
1720
- "*",
1721
- [
1722
- 7,
1723
- "p",
1724
- "dt"
1725
- ]
1726
- ]
1727
- ],
1728
- [
1729
- 13,
1730
- "fy",
1731
- [
1732
- 1,
1733
- [
1734
- 1,
1735
- [
1736
- 1,
1737
- [
1738
- 1,
1739
- [
1740
- 1,
1741
- "gx",
1742
- "/",
1743
- "gl"
1744
- ],
1745
- "*",
1746
- [
1747
- 4,
1748
- "-",
1749
- [5, "1"]
1750
- ]
1751
- ],
1752
- "*",
1753
- "cc"
1754
- ],
1755
- "*",
1756
- [
1757
- 7,
1758
- "p",
1759
- "curlStrength"
1760
- ]
1761
- ],
1762
- "*",
1763
- [
1764
- 7,
1765
- "p",
1766
- "dt"
1767
- ]
1768
- ]
1769
- ],
1770
- [
1771
- 13,
1772
- "vel",
1773
- [
1774
- 8,
1775
- [
1776
- 7,
1777
- [
1778
- 7,
1779
- "fluidLayout",
1780
- "$"
1781
- ],
1782
- "velA"
1783
- ],
1784
- "idx"
1785
- ]
1786
- ],
1787
- [
1788
- 2,
1789
- [
1790
- 8,
1791
- [
1792
- 7,
1793
- [
1794
- 7,
1795
- "fluidLayout",
1796
- "$"
1797
- ],
1798
- "velA"
1799
- ],
1800
- "idx"
1801
- ],
1802
- "=",
1803
- [
1804
- 6,
1805
- [
1806
- 7,
1807
- "d",
1808
- "vec4f"
1809
- ],
1810
- [
1811
- [
1812
- 1,
1813
- [
1814
- 7,
1815
- "vel",
1816
- "x"
1817
- ],
1818
- "+",
1819
- "fx"
1820
- ],
1821
- [
1822
- 1,
1823
- [
1824
- 7,
1825
- "vel",
1826
- "y"
1827
- ],
1828
- "+",
1829
- "fy"
1830
- ],
1831
- [
1832
- 7,
1833
- "vel",
1834
- "z"
1835
- ],
1836
- [5, "0"]
1837
- ]
1838
- ]
1839
- ]
1840
- ]],
1841
- "externalNames": [
1842
- "fluidLayout",
1843
- "d",
1844
- "N",
1845
- "std",
1846
- "nidx"
1847
- ]
1848
- },
1849
- externals: () => ({
1850
- fluidLayout,
1851
- d: data_exports,
1852
- N,
1853
- std: std_exports,
1854
- nidx
1855
- })
1856
- }) && $.f)({})).$name("smokeVorticity");
1857
- const divergenceKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
1858
- "use gpu";
1859
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
1860
- const ii = i32(cy);
1861
- const ji = i32(cx);
1862
- const jf = f32(cx);
1863
- const iF = f32(cy);
1864
- const selfVel = fluidLayout.$.velA[idx];
1865
- const normalL = fluidLayout.$.velA[nidx(ii, ji, 0, -1)].x;
1866
- const normalR = fluidLayout.$.velA[nidx(ii, ji, 0, 1)].x;
1867
- const normalU = fluidLayout.$.velA[nidx(ii, ji, -1, 0)].y;
1868
- const normalD = fluidLayout.$.velA[nidx(ii, ji, 1, 0)].y;
1869
- const L = select(normalL, __tsover_mul(selfVel.x, -1), jf < .5);
1870
- const R = select(normalR, __tsover_mul(selfVel.x, -1), jf > f32(__tsover_sub(N, 1.5)));
1871
- const T = select(normalU, __tsover_mul(selfVel.y, -1), iF < .5);
1872
- const B = select(normalD, __tsover_mul(selfVel.y, -1), iF > f32(__tsover_sub(N, 1.5)));
1873
- const div = __tsover_mul(__tsover_add(__tsover_sub(R, L), __tsover_sub(B, T)), .5);
1874
- fluidLayout.$.pressure[idx] = __tsover_mul(fluidLayout.$.pressure[idx], PRESSURE_DISSIPATION);
1875
- fluidLayout.$.divergence[idx] = div;
1876
- }), {
1877
- v: 1,
1878
- name: void 0,
1879
- ast: {
1880
- "params": [{
1881
- "type": "i",
1882
- "name": "cx"
1883
- }, {
1884
- "type": "i",
1885
- "name": "cy"
1886
- }],
1887
- "body": [0, [
1888
- [
1889
- 13,
1890
- "idx",
1891
- [
1892
- 1,
1893
- [
1894
- 1,
1895
- "cy",
1896
- "*",
1897
- [
1898
- 6,
1899
- [
1900
- 7,
1901
- "d",
1902
- "u32"
1903
- ],
1904
- ["N"]
1905
- ]
1906
- ],
1907
- "+",
1908
- "cx"
1909
- ]
1910
- ],
1911
- [
1912
- 13,
1913
- "ii",
1914
- [
1915
- 6,
1916
- [
1917
- 7,
1918
- "d",
1919
- "i32"
1920
- ],
1921
- ["cy"]
1922
- ]
1923
- ],
1924
- [
1925
- 13,
1926
- "ji",
1927
- [
1928
- 6,
1929
- [
1930
- 7,
1931
- "d",
1932
- "i32"
1933
- ],
1934
- ["cx"]
1935
- ]
1936
- ],
1937
- [
1938
- 13,
1939
- "jf",
1940
- [
1941
- 6,
1942
- [
1943
- 7,
1944
- "d",
1945
- "f32"
1946
- ],
1947
- ["cx"]
1948
- ]
1949
- ],
1950
- [
1951
- 13,
1952
- "iF",
1953
- [
1954
- 6,
1955
- [
1956
- 7,
1957
- "d",
1958
- "f32"
1959
- ],
1960
- ["cy"]
1961
- ]
1962
- ],
1963
- [
1964
- 13,
1965
- "selfVel",
1966
- [
1967
- 8,
1968
- [
1969
- 7,
1970
- [
1971
- 7,
1972
- "fluidLayout",
1973
- "$"
1974
- ],
1975
- "velA"
1976
- ],
1977
- "idx"
1978
- ]
1979
- ],
1980
- [
1981
- 13,
1982
- "normalL",
1983
- [
1984
- 7,
1985
- [
1986
- 8,
1987
- [
1988
- 7,
1989
- [
1990
- 7,
1991
- "fluidLayout",
1992
- "$"
1993
- ],
1994
- "velA"
1995
- ],
1996
- [
1997
- 6,
1998
- "nidx",
1999
- [
2000
- "ii",
2001
- "ji",
2002
- [5, "0"],
2003
- [
2004
- 4,
2005
- "-",
2006
- [5, "1"]
2007
- ]
2008
- ]
2009
- ]
2010
- ],
2011
- "x"
2012
- ]
2013
- ],
2014
- [
2015
- 13,
2016
- "normalR",
2017
- [
2018
- 7,
2019
- [
2020
- 8,
2021
- [
2022
- 7,
2023
- [
2024
- 7,
2025
- "fluidLayout",
2026
- "$"
2027
- ],
2028
- "velA"
2029
- ],
2030
- [
2031
- 6,
2032
- "nidx",
2033
- [
2034
- "ii",
2035
- "ji",
2036
- [5, "0"],
2037
- [5, "1"]
2038
- ]
2039
- ]
2040
- ],
2041
- "x"
2042
- ]
2043
- ],
2044
- [
2045
- 13,
2046
- "normalU",
2047
- [
2048
- 7,
2049
- [
2050
- 8,
2051
- [
2052
- 7,
2053
- [
2054
- 7,
2055
- "fluidLayout",
2056
- "$"
2057
- ],
2058
- "velA"
2059
- ],
2060
- [
2061
- 6,
2062
- "nidx",
2063
- [
2064
- "ii",
2065
- "ji",
2066
- [
2067
- 4,
2068
- "-",
2069
- [5, "1"]
2070
- ],
2071
- [5, "0"]
2072
- ]
2073
- ]
2074
- ],
2075
- "y"
2076
- ]
2077
- ],
2078
- [
2079
- 13,
2080
- "normalD",
2081
- [
2082
- 7,
2083
- [
2084
- 8,
2085
- [
2086
- 7,
2087
- [
2088
- 7,
2089
- "fluidLayout",
2090
- "$"
2091
- ],
2092
- "velA"
2093
- ],
2094
- [
2095
- 6,
2096
- "nidx",
2097
- [
2098
- "ii",
2099
- "ji",
2100
- [5, "1"],
2101
- [5, "0"]
2102
- ]
2103
- ]
2104
- ],
2105
- "y"
2106
- ]
2107
- ],
2108
- [
2109
- 13,
2110
- "L",
2111
- [
2112
- 6,
2113
- [
2114
- 7,
2115
- "std",
2116
- "select"
2117
- ],
2118
- [
2119
- "normalL",
2120
- [
2121
- 1,
2122
- [
2123
- 7,
2124
- "selfVel",
2125
- "x"
2126
- ],
2127
- "*",
2128
- [
2129
- 4,
2130
- "-",
2131
- [5, "1"]
2132
- ]
2133
- ],
2134
- [
2135
- 1,
2136
- "jf",
2137
- "<",
2138
- [5, "0.5"]
2139
- ]
2140
- ]
2141
- ]
2142
- ],
2143
- [
2144
- 13,
2145
- "R",
2146
- [
2147
- 6,
2148
- [
2149
- 7,
2150
- "std",
2151
- "select"
2152
- ],
2153
- [
2154
- "normalR",
2155
- [
2156
- 1,
2157
- [
2158
- 7,
2159
- "selfVel",
2160
- "x"
2161
- ],
2162
- "*",
2163
- [
2164
- 4,
2165
- "-",
2166
- [5, "1"]
2167
- ]
2168
- ],
2169
- [
2170
- 1,
2171
- "jf",
2172
- ">",
2173
- [
2174
- 6,
2175
- [
2176
- 7,
2177
- "d",
2178
- "f32"
2179
- ],
2180
- [[
2181
- 1,
2182
- "N",
2183
- "-",
2184
- [5, "1.5"]
2185
- ]]
2186
- ]
2187
- ]
2188
- ]
2189
- ]
2190
- ],
2191
- [
2192
- 13,
2193
- "T",
2194
- [
2195
- 6,
2196
- [
2197
- 7,
2198
- "std",
2199
- "select"
2200
- ],
2201
- [
2202
- "normalU",
2203
- [
2204
- 1,
2205
- [
2206
- 7,
2207
- "selfVel",
2208
- "y"
2209
- ],
2210
- "*",
2211
- [
2212
- 4,
2213
- "-",
2214
- [5, "1"]
2215
- ]
2216
- ],
2217
- [
2218
- 1,
2219
- "iF",
2220
- "<",
2221
- [5, "0.5"]
2222
- ]
2223
- ]
2224
- ]
2225
- ],
2226
- [
2227
- 13,
2228
- "B",
2229
- [
2230
- 6,
2231
- [
2232
- 7,
2233
- "std",
2234
- "select"
2235
- ],
2236
- [
2237
- "normalD",
2238
- [
2239
- 1,
2240
- [
2241
- 7,
2242
- "selfVel",
2243
- "y"
2244
- ],
2245
- "*",
2246
- [
2247
- 4,
2248
- "-",
2249
- [5, "1"]
2250
- ]
2251
- ],
2252
- [
2253
- 1,
2254
- "iF",
2255
- ">",
2256
- [
2257
- 6,
2258
- [
2259
- 7,
2260
- "d",
2261
- "f32"
2262
- ],
2263
- [[
2264
- 1,
2265
- "N",
2266
- "-",
2267
- [5, "1.5"]
2268
- ]]
2269
- ]
2270
- ]
2271
- ]
2272
- ]
2273
- ],
2274
- [
2275
- 13,
2276
- "div",
2277
- [
2278
- 1,
2279
- [
2280
- 1,
2281
- [
2282
- 1,
2283
- "R",
2284
- "-",
2285
- "L"
2286
- ],
2287
- "+",
2288
- [
2289
- 1,
2290
- "B",
2291
- "-",
2292
- "T"
2293
- ]
2294
- ],
2295
- "*",
2296
- [5, "0.5"]
2297
- ]
2298
- ],
2299
- [
2300
- 2,
2301
- [
2302
- 8,
2303
- [
2304
- 7,
2305
- [
2306
- 7,
2307
- "fluidLayout",
2308
- "$"
2309
- ],
2310
- "pressure"
2311
- ],
2312
- "idx"
2313
- ],
2314
- "=",
2315
- [
2316
- 1,
2317
- [
2318
- 8,
2319
- [
2320
- 7,
2321
- [
2322
- 7,
2323
- "fluidLayout",
2324
- "$"
2325
- ],
2326
- "pressure"
2327
- ],
2328
- "idx"
2329
- ],
2330
- "*",
2331
- "PRESSURE_DISSIPATION"
2332
- ]
2333
- ],
2334
- [
2335
- 2,
2336
- [
2337
- 8,
2338
- [
2339
- 7,
2340
- [
2341
- 7,
2342
- "fluidLayout",
2343
- "$"
2344
- ],
2345
- "divergence"
2346
- ],
2347
- "idx"
2348
- ],
2349
- "=",
2350
- "div"
2351
- ]
2352
- ]],
2353
- "externalNames": [
2354
- "d",
2355
- "N",
2356
- "fluidLayout",
2357
- "nidx",
2358
- "std",
2359
- "PRESSURE_DISSIPATION"
2360
- ]
2361
- },
2362
- externals: () => ({
2363
- d: data_exports,
2364
- N,
2365
- fluidLayout,
2366
- nidx,
2367
- std: std_exports,
2368
- PRESSURE_DISSIPATION
2369
- })
2370
- }) && $.f)({})).$name("smokeDivergence");
2371
- const jacobiKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
2372
- "use gpu";
2373
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
2374
- const ii = i32(cy);
2375
- const ji = i32(cx);
2376
- const pL = fluidLayout.$.pressure[nidx(ii, ji, 0, -1)];
2377
- const pR = fluidLayout.$.pressure[nidx(ii, ji, 0, 1)];
2378
- const pU = fluidLayout.$.pressure[nidx(ii, ji, -1, 0)];
2379
- const pD = fluidLayout.$.pressure[nidx(ii, ji, 1, 0)];
2380
- const div = fluidLayout.$.divergence[idx];
2381
- fluidLayout.$.pressure[idx] = __tsover_mul(__tsover_sub(__tsover_add(__tsover_add(__tsover_add(pL, pR), pU), pD), div), .25);
2382
- }), {
2383
- v: 1,
2384
- name: void 0,
2385
- ast: {
2386
- "params": [{
2387
- "type": "i",
2388
- "name": "cx"
2389
- }, {
2390
- "type": "i",
2391
- "name": "cy"
2392
- }],
2393
- "body": [0, [
2394
- [
2395
- 13,
2396
- "idx",
2397
- [
2398
- 1,
2399
- [
2400
- 1,
2401
- "cy",
2402
- "*",
2403
- [
2404
- 6,
2405
- [
2406
- 7,
2407
- "d",
2408
- "u32"
2409
- ],
2410
- ["N"]
2411
- ]
2412
- ],
2413
- "+",
2414
- "cx"
2415
- ]
2416
- ],
2417
- [
2418
- 13,
2419
- "ii",
2420
- [
2421
- 6,
2422
- [
2423
- 7,
2424
- "d",
2425
- "i32"
2426
- ],
2427
- ["cy"]
2428
- ]
2429
- ],
2430
- [
2431
- 13,
2432
- "ji",
2433
- [
2434
- 6,
2435
- [
2436
- 7,
2437
- "d",
2438
- "i32"
2439
- ],
2440
- ["cx"]
2441
- ]
2442
- ],
2443
- [
2444
- 13,
2445
- "pL",
2446
- [
2447
- 8,
2448
- [
2449
- 7,
2450
- [
2451
- 7,
2452
- "fluidLayout",
2453
- "$"
2454
- ],
2455
- "pressure"
2456
- ],
2457
- [
2458
- 6,
2459
- "nidx",
2460
- [
2461
- "ii",
2462
- "ji",
2463
- [5, "0"],
2464
- [
2465
- 4,
2466
- "-",
2467
- [5, "1"]
2468
- ]
2469
- ]
2470
- ]
2471
- ]
2472
- ],
2473
- [
2474
- 13,
2475
- "pR",
2476
- [
2477
- 8,
2478
- [
2479
- 7,
2480
- [
2481
- 7,
2482
- "fluidLayout",
2483
- "$"
2484
- ],
2485
- "pressure"
2486
- ],
2487
- [
2488
- 6,
2489
- "nidx",
2490
- [
2491
- "ii",
2492
- "ji",
2493
- [5, "0"],
2494
- [5, "1"]
2495
- ]
2496
- ]
2497
- ]
2498
- ],
2499
- [
2500
- 13,
2501
- "pU",
2502
- [
2503
- 8,
2504
- [
2505
- 7,
2506
- [
2507
- 7,
2508
- "fluidLayout",
2509
- "$"
2510
- ],
2511
- "pressure"
2512
- ],
2513
- [
2514
- 6,
2515
- "nidx",
2516
- [
2517
- "ii",
2518
- "ji",
2519
- [
2520
- 4,
2521
- "-",
2522
- [5, "1"]
2523
- ],
2524
- [5, "0"]
2525
- ]
2526
- ]
2527
- ]
2528
- ],
2529
- [
2530
- 13,
2531
- "pD",
2532
- [
2533
- 8,
2534
- [
2535
- 7,
2536
- [
2537
- 7,
2538
- "fluidLayout",
2539
- "$"
2540
- ],
2541
- "pressure"
2542
- ],
2543
- [
2544
- 6,
2545
- "nidx",
2546
- [
2547
- "ii",
2548
- "ji",
2549
- [5, "1"],
2550
- [5, "0"]
2551
- ]
2552
- ]
2553
- ]
2554
- ],
2555
- [
2556
- 13,
2557
- "div",
2558
- [
2559
- 8,
2560
- [
2561
- 7,
2562
- [
2563
- 7,
2564
- "fluidLayout",
2565
- "$"
2566
- ],
2567
- "divergence"
2568
- ],
2569
- "idx"
2570
- ]
2571
- ],
2572
- [
2573
- 2,
2574
- [
2575
- 8,
2576
- [
2577
- 7,
2578
- [
2579
- 7,
2580
- "fluidLayout",
2581
- "$"
2582
- ],
2583
- "pressure"
2584
- ],
2585
- "idx"
2586
- ],
2587
- "=",
2588
- [
2589
- 1,
2590
- [
2591
- 1,
2592
- [
2593
- 1,
2594
- [
2595
- 1,
2596
- [
2597
- 1,
2598
- "pL",
2599
- "+",
2600
- "pR"
2601
- ],
2602
- "+",
2603
- "pU"
2604
- ],
2605
- "+",
2606
- "pD"
2607
- ],
2608
- "-",
2609
- "div"
2610
- ],
2611
- "*",
2612
- [5, "0.25"]
2613
- ]
2614
- ]
2615
- ]],
2616
- "externalNames": [
2617
- "d",
2618
- "N",
2619
- "fluidLayout",
2620
- "nidx"
2621
- ]
2622
- },
2623
- externals: () => ({
2624
- d: data_exports,
2625
- N,
2626
- fluidLayout,
2627
- nidx
2628
- })
2629
- }) && $.f)({})).$name("smokeJacobi");
2630
- const gradSubtractKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
2631
- "use gpu";
2632
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
2633
- const ii = i32(cy);
2634
- const ji = i32(cx);
2635
- const pL = fluidLayout.$.pressure[nidx(ii, ji, 0, -1)];
2636
- const pR = fluidLayout.$.pressure[nidx(ii, ji, 0, 1)];
2637
- const pU = fluidLayout.$.pressure[nidx(ii, ji, -1, 0)];
2638
- const pD = fluidLayout.$.pressure[nidx(ii, ji, 1, 0)];
2639
- const vel = fluidLayout.$.velA[idx];
2640
- fluidLayout.$.velA[idx] = vec4f(__tsover_sub(vel.x, __tsover_mul(__tsover_sub(pR, pL), .5)), __tsover_sub(vel.y, __tsover_mul(__tsover_sub(pD, pU), .5)), vel.z, 0);
2641
- }), {
2642
- v: 1,
2643
- name: void 0,
2644
- ast: {
2645
- "params": [{
2646
- "type": "i",
2647
- "name": "cx"
2648
- }, {
2649
- "type": "i",
2650
- "name": "cy"
2651
- }],
2652
- "body": [0, [
2653
- [
2654
- 13,
2655
- "idx",
2656
- [
2657
- 1,
2658
- [
2659
- 1,
2660
- "cy",
2661
- "*",
2662
- [
2663
- 6,
2664
- [
2665
- 7,
2666
- "d",
2667
- "u32"
2668
- ],
2669
- ["N"]
2670
- ]
2671
- ],
2672
- "+",
2673
- "cx"
2674
- ]
2675
- ],
2676
- [
2677
- 13,
2678
- "ii",
2679
- [
2680
- 6,
2681
- [
2682
- 7,
2683
- "d",
2684
- "i32"
2685
- ],
2686
- ["cy"]
2687
- ]
2688
- ],
2689
- [
2690
- 13,
2691
- "ji",
2692
- [
2693
- 6,
2694
- [
2695
- 7,
2696
- "d",
2697
- "i32"
2698
- ],
2699
- ["cx"]
2700
- ]
2701
- ],
2702
- [
2703
- 13,
2704
- "pL",
2705
- [
2706
- 8,
2707
- [
2708
- 7,
2709
- [
2710
- 7,
2711
- "fluidLayout",
2712
- "$"
2713
- ],
2714
- "pressure"
2715
- ],
2716
- [
2717
- 6,
2718
- "nidx",
2719
- [
2720
- "ii",
2721
- "ji",
2722
- [5, "0"],
2723
- [
2724
- 4,
2725
- "-",
2726
- [5, "1"]
2727
- ]
2728
- ]
2729
- ]
2730
- ]
2731
- ],
2732
- [
2733
- 13,
2734
- "pR",
2735
- [
2736
- 8,
2737
- [
2738
- 7,
2739
- [
2740
- 7,
2741
- "fluidLayout",
2742
- "$"
2743
- ],
2744
- "pressure"
2745
- ],
2746
- [
2747
- 6,
2748
- "nidx",
2749
- [
2750
- "ii",
2751
- "ji",
2752
- [5, "0"],
2753
- [5, "1"]
2754
- ]
2755
- ]
2756
- ]
2757
- ],
2758
- [
2759
- 13,
2760
- "pU",
2761
- [
2762
- 8,
2763
- [
2764
- 7,
2765
- [
2766
- 7,
2767
- "fluidLayout",
2768
- "$"
2769
- ],
2770
- "pressure"
2771
- ],
2772
- [
2773
- 6,
2774
- "nidx",
2775
- [
2776
- "ii",
2777
- "ji",
2778
- [
2779
- 4,
2780
- "-",
2781
- [5, "1"]
2782
- ],
2783
- [5, "0"]
2784
- ]
2785
- ]
2786
- ]
2787
- ],
2788
- [
2789
- 13,
2790
- "pD",
2791
- [
2792
- 8,
2793
- [
2794
- 7,
2795
- [
2796
- 7,
2797
- "fluidLayout",
2798
- "$"
2799
- ],
2800
- "pressure"
2801
- ],
2802
- [
2803
- 6,
2804
- "nidx",
2805
- [
2806
- "ii",
2807
- "ji",
2808
- [5, "1"],
2809
- [5, "0"]
2810
- ]
2811
- ]
2812
- ]
2813
- ],
2814
- [
2815
- 13,
2816
- "vel",
2817
- [
2818
- 8,
2819
- [
2820
- 7,
2821
- [
2822
- 7,
2823
- "fluidLayout",
2824
- "$"
2825
- ],
2826
- "velA"
2827
- ],
2828
- "idx"
2829
- ]
2830
- ],
2831
- [
2832
- 2,
2833
- [
2834
- 8,
2835
- [
2836
- 7,
2837
- [
2838
- 7,
2839
- "fluidLayout",
2840
- "$"
2841
- ],
2842
- "velA"
2843
- ],
2844
- "idx"
2845
- ],
2846
- "=",
2847
- [
2848
- 6,
2849
- [
2850
- 7,
2851
- "d",
2852
- "vec4f"
2853
- ],
2854
- [
2855
- [
2856
- 1,
2857
- [
2858
- 7,
2859
- "vel",
2860
- "x"
2861
- ],
2862
- "-",
2863
- [
2864
- 1,
2865
- [
2866
- 1,
2867
- "pR",
2868
- "-",
2869
- "pL"
2870
- ],
2871
- "*",
2872
- [5, "0.5"]
2873
- ]
2874
- ],
2875
- [
2876
- 1,
2877
- [
2878
- 7,
2879
- "vel",
2880
- "y"
2881
- ],
2882
- "-",
2883
- [
2884
- 1,
2885
- [
2886
- 1,
2887
- "pD",
2888
- "-",
2889
- "pU"
2890
- ],
2891
- "*",
2892
- [5, "0.5"]
2893
- ]
2894
- ],
2895
- [
2896
- 7,
2897
- "vel",
2898
- "z"
2899
- ],
2900
- [5, "0"]
2901
- ]
2902
- ]
2903
- ]
2904
- ]],
2905
- "externalNames": [
2906
- "d",
2907
- "N",
2908
- "fluidLayout",
2909
- "nidx"
2910
- ]
2911
- },
2912
- externals: () => ({
2913
- d: data_exports,
2914
- N,
2915
- fluidLayout,
2916
- nidx
2917
- })
2918
- }) && $.f)({})).$name("smokeGradSubtract");
2919
- const advectVelKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
2920
- "use gpu";
2921
- const p = fluidLayout.$.params;
2922
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
2923
- const vel = fluidLayout.$.velA[idx];
2924
- const srcX = clamp(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), 0, f32(__tsover_sub(N, 1)));
2925
- const srcY = clamp(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), 0, f32(__tsover_sub(N, 1)));
2926
- const x0 = clamp(floor(srcX), 0, f32(__tsover_sub(N, 2)));
2927
- const y0 = clamp(floor(srcY), 0, f32(__tsover_sub(N, 2)));
2928
- const sx = __tsover_sub(srcX, x0);
2929
- const sy = __tsover_sub(srcY, y0);
2930
- const ix0 = i32(x0);
2931
- const iy0 = i32(y0);
2932
- const v00 = fluidLayout.$.velA[u32(__tsover_add(__tsover_mul(iy0, N), ix0))];
2933
- const v10 = fluidLayout.$.velA[u32(__tsover_add(__tsover_add(__tsover_mul(iy0, N), ix0), 1))];
2934
- const v01 = fluidLayout.$.velA[u32(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), N), ix0))];
2935
- const v11 = fluidLayout.$.velA[u32(__tsover_add(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), N), ix0), 1))];
2936
- const decay = __tsover_add(1, __tsover_mul(VELOCITY_DISSIPATION, p.dt));
2937
- fluidLayout.$.velB[idx] = vec4f(__tsover_div(mix(mix(v00.x, v10.x, sx), mix(v01.x, v11.x, sx), sy), decay), __tsover_div(mix(mix(v00.y, v10.y, sx), mix(v01.y, v11.y, sx), sy), decay), 0, 0);
2938
- }), {
2939
- v: 1,
2940
- name: void 0,
2941
- ast: {
2942
- "params": [{
2943
- "type": "i",
2944
- "name": "cx"
2945
- }, {
2946
- "type": "i",
2947
- "name": "cy"
2948
- }],
2949
- "body": [0, [
2950
- [
2951
- 13,
2952
- "p",
2953
- [
2954
- 7,
2955
- [
2956
- 7,
2957
- "fluidLayout",
2958
- "$"
2959
- ],
2960
- "params"
2961
- ]
2962
- ],
2963
- [
2964
- 13,
2965
- "idx",
2966
- [
2967
- 1,
2968
- [
2969
- 1,
2970
- "cy",
2971
- "*",
2972
- [
2973
- 6,
2974
- [
2975
- 7,
2976
- "d",
2977
- "u32"
2978
- ],
2979
- ["N"]
2980
- ]
2981
- ],
2982
- "+",
2983
- "cx"
2984
- ]
2985
- ],
2986
- [
2987
- 13,
2988
- "vel",
2989
- [
2990
- 8,
2991
- [
2992
- 7,
2993
- [
2994
- 7,
2995
- "fluidLayout",
2996
- "$"
2997
- ],
2998
- "velA"
2999
- ],
3000
- "idx"
3001
- ]
3002
- ],
3003
- [
3004
- 13,
3005
- "srcX",
3006
- [
3007
- 6,
3008
- [
3009
- 7,
3010
- "std",
3011
- "clamp"
3012
- ],
3013
- [
3014
- [
3015
- 1,
3016
- [
3017
- 6,
3018
- [
3019
- 7,
3020
- "d",
3021
- "f32"
3022
- ],
3023
- ["cx"]
3024
- ],
3025
- "-",
3026
- [
3027
- 1,
3028
- [
3029
- 7,
3030
- "vel",
3031
- "x"
3032
- ],
3033
- "*",
3034
- [
3035
- 7,
3036
- "p",
3037
- "dt"
3038
- ]
3039
- ]
3040
- ],
3041
- [5, "0"],
3042
- [
3043
- 6,
3044
- [
3045
- 7,
3046
- "d",
3047
- "f32"
3048
- ],
3049
- [[
3050
- 1,
3051
- "N",
3052
- "-",
3053
- [5, "1"]
3054
- ]]
3055
- ]
3056
- ]
3057
- ]
3058
- ],
3059
- [
3060
- 13,
3061
- "srcY",
3062
- [
3063
- 6,
3064
- [
3065
- 7,
3066
- "std",
3067
- "clamp"
3068
- ],
3069
- [
3070
- [
3071
- 1,
3072
- [
3073
- 6,
3074
- [
3075
- 7,
3076
- "d",
3077
- "f32"
3078
- ],
3079
- ["cy"]
3080
- ],
3081
- "-",
3082
- [
3083
- 1,
3084
- [
3085
- 7,
3086
- "vel",
3087
- "y"
3088
- ],
3089
- "*",
3090
- [
3091
- 7,
3092
- "p",
3093
- "dt"
3094
- ]
3095
- ]
3096
- ],
3097
- [5, "0"],
3098
- [
3099
- 6,
3100
- [
3101
- 7,
3102
- "d",
3103
- "f32"
3104
- ],
3105
- [[
3106
- 1,
3107
- "N",
3108
- "-",
3109
- [5, "1"]
3110
- ]]
3111
- ]
3112
- ]
3113
- ]
3114
- ],
3115
- [
3116
- 13,
3117
- "x0",
3118
- [
3119
- 6,
3120
- [
3121
- 7,
3122
- "std",
3123
- "clamp"
3124
- ],
3125
- [
3126
- [
3127
- 6,
3128
- [
3129
- 7,
3130
- "std",
3131
- "floor"
3132
- ],
3133
- ["srcX"]
3134
- ],
3135
- [5, "0"],
3136
- [
3137
- 6,
3138
- [
3139
- 7,
3140
- "d",
3141
- "f32"
3142
- ],
3143
- [[
3144
- 1,
3145
- "N",
3146
- "-",
3147
- [5, "2"]
3148
- ]]
3149
- ]
3150
- ]
3151
- ]
3152
- ],
3153
- [
3154
- 13,
3155
- "y0",
3156
- [
3157
- 6,
3158
- [
3159
- 7,
3160
- "std",
3161
- "clamp"
3162
- ],
3163
- [
3164
- [
3165
- 6,
3166
- [
3167
- 7,
3168
- "std",
3169
- "floor"
3170
- ],
3171
- ["srcY"]
3172
- ],
3173
- [5, "0"],
3174
- [
3175
- 6,
3176
- [
3177
- 7,
3178
- "d",
3179
- "f32"
3180
- ],
3181
- [[
3182
- 1,
3183
- "N",
3184
- "-",
3185
- [5, "2"]
3186
- ]]
3187
- ]
3188
- ]
3189
- ]
3190
- ],
3191
- [
3192
- 13,
3193
- "sx",
3194
- [
3195
- 1,
3196
- "srcX",
3197
- "-",
3198
- "x0"
3199
- ]
3200
- ],
3201
- [
3202
- 13,
3203
- "sy",
3204
- [
3205
- 1,
3206
- "srcY",
3207
- "-",
3208
- "y0"
3209
- ]
3210
- ],
3211
- [
3212
- 13,
3213
- "ix0",
3214
- [
3215
- 6,
3216
- [
3217
- 7,
3218
- "d",
3219
- "i32"
3220
- ],
3221
- ["x0"]
3222
- ]
3223
- ],
3224
- [
3225
- 13,
3226
- "iy0",
3227
- [
3228
- 6,
3229
- [
3230
- 7,
3231
- "d",
3232
- "i32"
3233
- ],
3234
- ["y0"]
3235
- ]
3236
- ],
3237
- [
3238
- 13,
3239
- "v00",
3240
- [
3241
- 8,
3242
- [
3243
- 7,
3244
- [
3245
- 7,
3246
- "fluidLayout",
3247
- "$"
3248
- ],
3249
- "velA"
3250
- ],
3251
- [
3252
- 6,
3253
- [
3254
- 7,
3255
- "d",
3256
- "u32"
3257
- ],
3258
- [[
3259
- 1,
3260
- [
3261
- 1,
3262
- "iy0",
3263
- "*",
3264
- "N"
3265
- ],
3266
- "+",
3267
- "ix0"
3268
- ]]
3269
- ]
3270
- ]
3271
- ],
3272
- [
3273
- 13,
3274
- "v10",
3275
- [
3276
- 8,
3277
- [
3278
- 7,
3279
- [
3280
- 7,
3281
- "fluidLayout",
3282
- "$"
3283
- ],
3284
- "velA"
3285
- ],
3286
- [
3287
- 6,
3288
- [
3289
- 7,
3290
- "d",
3291
- "u32"
3292
- ],
3293
- [[
3294
- 1,
3295
- [
3296
- 1,
3297
- [
3298
- 1,
3299
- "iy0",
3300
- "*",
3301
- "N"
3302
- ],
3303
- "+",
3304
- "ix0"
3305
- ],
3306
- "+",
3307
- [5, "1"]
3308
- ]]
3309
- ]
3310
- ]
3311
- ],
3312
- [
3313
- 13,
3314
- "v01",
3315
- [
3316
- 8,
3317
- [
3318
- 7,
3319
- [
3320
- 7,
3321
- "fluidLayout",
3322
- "$"
3323
- ],
3324
- "velA"
3325
- ],
3326
- [
3327
- 6,
3328
- [
3329
- 7,
3330
- "d",
3331
- "u32"
3332
- ],
3333
- [[
3334
- 1,
3335
- [
3336
- 1,
3337
- [
3338
- 1,
3339
- "iy0",
3340
- "+",
3341
- [5, "1"]
3342
- ],
3343
- "*",
3344
- "N"
3345
- ],
3346
- "+",
3347
- "ix0"
3348
- ]]
3349
- ]
3350
- ]
3351
- ],
3352
- [
3353
- 13,
3354
- "v11",
3355
- [
3356
- 8,
3357
- [
3358
- 7,
3359
- [
3360
- 7,
3361
- "fluidLayout",
3362
- "$"
3363
- ],
3364
- "velA"
3365
- ],
3366
- [
3367
- 6,
3368
- [
3369
- 7,
3370
- "d",
3371
- "u32"
3372
- ],
3373
- [[
3374
- 1,
3375
- [
3376
- 1,
3377
- [
3378
- 1,
3379
- [
3380
- 1,
3381
- "iy0",
3382
- "+",
3383
- [5, "1"]
3384
- ],
3385
- "*",
3386
- "N"
3387
- ],
3388
- "+",
3389
- "ix0"
3390
- ],
3391
- "+",
3392
- [5, "1"]
3393
- ]]
3394
- ]
3395
- ]
3396
- ],
3397
- [
3398
- 13,
3399
- "decay",
3400
- [
3401
- 1,
3402
- [5, "1"],
3403
- "+",
3404
- [
3405
- 1,
3406
- "VELOCITY_DISSIPATION",
3407
- "*",
3408
- [
3409
- 7,
3410
- "p",
3411
- "dt"
3412
- ]
3413
- ]
3414
- ]
3415
- ],
3416
- [
3417
- 2,
3418
- [
3419
- 8,
3420
- [
3421
- 7,
3422
- [
3423
- 7,
3424
- "fluidLayout",
3425
- "$"
3426
- ],
3427
- "velB"
3428
- ],
3429
- "idx"
3430
- ],
3431
- "=",
3432
- [
3433
- 6,
3434
- [
3435
- 7,
3436
- "d",
3437
- "vec4f"
3438
- ],
3439
- [
3440
- [
3441
- 1,
3442
- [
3443
- 6,
3444
- [
3445
- 7,
3446
- "std",
3447
- "mix"
3448
- ],
3449
- [
3450
- [
3451
- 6,
3452
- [
3453
- 7,
3454
- "std",
3455
- "mix"
3456
- ],
3457
- [
3458
- [
3459
- 7,
3460
- "v00",
3461
- "x"
3462
- ],
3463
- [
3464
- 7,
3465
- "v10",
3466
- "x"
3467
- ],
3468
- "sx"
3469
- ]
3470
- ],
3471
- [
3472
- 6,
3473
- [
3474
- 7,
3475
- "std",
3476
- "mix"
3477
- ],
3478
- [
3479
- [
3480
- 7,
3481
- "v01",
3482
- "x"
3483
- ],
3484
- [
3485
- 7,
3486
- "v11",
3487
- "x"
3488
- ],
3489
- "sx"
3490
- ]
3491
- ],
3492
- "sy"
3493
- ]
3494
- ],
3495
- "/",
3496
- "decay"
3497
- ],
3498
- [
3499
- 1,
3500
- [
3501
- 6,
3502
- [
3503
- 7,
3504
- "std",
3505
- "mix"
3506
- ],
3507
- [
3508
- [
3509
- 6,
3510
- [
3511
- 7,
3512
- "std",
3513
- "mix"
3514
- ],
3515
- [
3516
- [
3517
- 7,
3518
- "v00",
3519
- "y"
3520
- ],
3521
- [
3522
- 7,
3523
- "v10",
3524
- "y"
3525
- ],
3526
- "sx"
3527
- ]
3528
- ],
3529
- [
3530
- 6,
3531
- [
3532
- 7,
3533
- "std",
3534
- "mix"
3535
- ],
3536
- [
3537
- [
3538
- 7,
3539
- "v01",
3540
- "y"
3541
- ],
3542
- [
3543
- 7,
3544
- "v11",
3545
- "y"
3546
- ],
3547
- "sx"
3548
- ]
3549
- ],
3550
- "sy"
3551
- ]
3552
- ],
3553
- "/",
3554
- "decay"
3555
- ],
3556
- [5, "0"],
3557
- [5, "0"]
3558
- ]
3559
- ]
3560
- ]
3561
- ]],
3562
- "externalNames": [
3563
- "fluidLayout",
3564
- "d",
3565
- "N",
3566
- "std",
3567
- "VELOCITY_DISSIPATION"
3568
- ]
3569
- },
3570
- externals: () => ({
3571
- fluidLayout,
3572
- d: data_exports,
3573
- N,
3574
- std: std_exports,
3575
- VELOCITY_DISSIPATION
3576
- })
3577
- }) && $.f)({})).$name("smokeAdvectVel");
3578
- const copyVelKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
3579
- "use gpu";
3580
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
3581
- const v = fluidLayout.$.velB[idx];
3582
- fluidLayout.$.velA[idx] = vec4f(v.x, v.y, 0, 0);
3583
- }), {
3584
- v: 1,
3585
- name: void 0,
3586
- ast: {
3587
- "params": [{
3588
- "type": "i",
3589
- "name": "cx"
3590
- }, {
3591
- "type": "i",
3592
- "name": "cy"
3593
- }],
3594
- "body": [0, [
3595
- [
3596
- 13,
3597
- "idx",
3598
- [
3599
- 1,
3600
- [
3601
- 1,
3602
- "cy",
3603
- "*",
3604
- [
3605
- 6,
3606
- [
3607
- 7,
3608
- "d",
3609
- "u32"
3610
- ],
3611
- ["N"]
3612
- ]
3613
- ],
3614
- "+",
3615
- "cx"
3616
- ]
3617
- ],
3618
- [
3619
- 13,
3620
- "v",
3621
- [
3622
- 8,
3623
- [
3624
- 7,
3625
- [
3626
- 7,
3627
- "fluidLayout",
3628
- "$"
3629
- ],
3630
- "velB"
3631
- ],
3632
- "idx"
3633
- ]
3634
- ],
3635
- [
3636
- 2,
3637
- [
3638
- 8,
3639
- [
3640
- 7,
3641
- [
3642
- 7,
3643
- "fluidLayout",
3644
- "$"
3645
- ],
3646
- "velA"
3647
- ],
3648
- "idx"
3649
- ],
3650
- "=",
3651
- [
3652
- 6,
3653
- [
3654
- 7,
3655
- "d",
3656
- "vec4f"
3657
- ],
3658
- [
3659
- [
3660
- 7,
3661
- "v",
3662
- "x"
3663
- ],
3664
- [
3665
- 7,
3666
- "v",
3667
- "y"
3668
- ],
3669
- [5, "0"],
3670
- [5, "0"]
3671
- ]
3672
- ]
3673
- ]
3674
- ]],
3675
- "externalNames": [
3676
- "d",
3677
- "N",
3678
- "fluidLayout"
3679
- ]
3680
- },
3681
- externals: () => ({
3682
- d: data_exports,
3683
- N,
3684
- fluidLayout
3685
- })
3686
- }) && $.f)({})).$name("smokeCopyVel");
3687
- const advectDensKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
3688
- "use gpu";
3689
- const p = fluidLayout.$.params;
3690
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
3691
- const vel = fluidLayout.$.velA[idx];
3692
- const srcX = clamp(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), 0, f32(__tsover_sub(N, 1)));
3693
- const srcY = clamp(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), 0, f32(__tsover_sub(N, 1)));
3694
- const x0 = clamp(floor(srcX), 0, f32(__tsover_sub(N, 2)));
3695
- const y0 = clamp(floor(srcY), 0, f32(__tsover_sub(N, 2)));
3696
- const sx = __tsover_sub(srcX, x0);
3697
- const sy = __tsover_sub(srcY, y0);
3698
- const ix0 = i32(x0);
3699
- const iy0 = i32(y0);
3700
- const d00 = fluidLayout.$.densA[u32(__tsover_add(__tsover_mul(iy0, N), ix0))];
3701
- const d10 = fluidLayout.$.densA[u32(__tsover_add(__tsover_add(__tsover_mul(iy0, N), ix0), 1))];
3702
- const d01 = fluidLayout.$.densA[u32(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), N), ix0))];
3703
- const d11 = fluidLayout.$.densA[u32(__tsover_add(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), N), ix0), 1))];
3704
- const dens = mix(mix(d00.x, d10.x, sx), mix(d01.x, d11.x, sx), sy);
3705
- const age = mix(mix(d00.y, d10.y, sx), mix(d01.y, d11.y, sx), sy);
3706
- const decay = __tsover_add(1, __tsover_mul(p.densDissip, p.dt));
3707
- fluidLayout.$.densB[idx] = vec4f(max(__tsover_div(dens, decay), f32(0)), min(__tsover_add(age, __tsover_mul(__tsover_mul(p.dt, .4), p.colorDecay)), 1), 0, 0);
3708
- }), {
3709
- v: 1,
3710
- name: void 0,
3711
- ast: {
3712
- "params": [{
3713
- "type": "i",
3714
- "name": "cx"
3715
- }, {
3716
- "type": "i",
3717
- "name": "cy"
3718
- }],
3719
- "body": [0, [
3720
- [
3721
- 13,
3722
- "p",
3723
- [
3724
- 7,
3725
- [
3726
- 7,
3727
- "fluidLayout",
3728
- "$"
3729
- ],
3730
- "params"
3731
- ]
3732
- ],
3733
- [
3734
- 13,
3735
- "idx",
3736
- [
3737
- 1,
3738
- [
3739
- 1,
3740
- "cy",
3741
- "*",
3742
- [
3743
- 6,
3744
- [
3745
- 7,
3746
- "d",
3747
- "u32"
3748
- ],
3749
- ["N"]
3750
- ]
3751
- ],
3752
- "+",
3753
- "cx"
3754
- ]
3755
- ],
3756
- [
3757
- 13,
3758
- "vel",
3759
- [
3760
- 8,
3761
- [
3762
- 7,
3763
- [
3764
- 7,
3765
- "fluidLayout",
3766
- "$"
3767
- ],
3768
- "velA"
3769
- ],
3770
- "idx"
3771
- ]
3772
- ],
3773
- [
3774
- 13,
3775
- "srcX",
3776
- [
3777
- 6,
3778
- [
3779
- 7,
3780
- "std",
3781
- "clamp"
3782
- ],
3783
- [
3784
- [
3785
- 1,
3786
- [
3787
- 6,
3788
- [
3789
- 7,
3790
- "d",
3791
- "f32"
3792
- ],
3793
- ["cx"]
3794
- ],
3795
- "-",
3796
- [
3797
- 1,
3798
- [
3799
- 7,
3800
- "vel",
3801
- "x"
3802
- ],
3803
- "*",
3804
- [
3805
- 7,
3806
- "p",
3807
- "dt"
3808
- ]
3809
- ]
3810
- ],
3811
- [5, "0"],
3812
- [
3813
- 6,
3814
- [
3815
- 7,
3816
- "d",
3817
- "f32"
3818
- ],
3819
- [[
3820
- 1,
3821
- "N",
3822
- "-",
3823
- [5, "1"]
3824
- ]]
3825
- ]
3826
- ]
3827
- ]
3828
- ],
3829
- [
3830
- 13,
3831
- "srcY",
3832
- [
3833
- 6,
3834
- [
3835
- 7,
3836
- "std",
3837
- "clamp"
3838
- ],
3839
- [
3840
- [
3841
- 1,
3842
- [
3843
- 6,
3844
- [
3845
- 7,
3846
- "d",
3847
- "f32"
3848
- ],
3849
- ["cy"]
3850
- ],
3851
- "-",
3852
- [
3853
- 1,
3854
- [
3855
- 7,
3856
- "vel",
3857
- "y"
3858
- ],
3859
- "*",
3860
- [
3861
- 7,
3862
- "p",
3863
- "dt"
3864
- ]
3865
- ]
3866
- ],
3867
- [5, "0"],
3868
- [
3869
- 6,
3870
- [
3871
- 7,
3872
- "d",
3873
- "f32"
3874
- ],
3875
- [[
3876
- 1,
3877
- "N",
3878
- "-",
3879
- [5, "1"]
3880
- ]]
3881
- ]
3882
- ]
3883
- ]
3884
- ],
3885
- [
3886
- 13,
3887
- "x0",
3888
- [
3889
- 6,
3890
- [
3891
- 7,
3892
- "std",
3893
- "clamp"
3894
- ],
3895
- [
3896
- [
3897
- 6,
3898
- [
3899
- 7,
3900
- "std",
3901
- "floor"
3902
- ],
3903
- ["srcX"]
3904
- ],
3905
- [5, "0"],
3906
- [
3907
- 6,
3908
- [
3909
- 7,
3910
- "d",
3911
- "f32"
3912
- ],
3913
- [[
3914
- 1,
3915
- "N",
3916
- "-",
3917
- [5, "2"]
3918
- ]]
3919
- ]
3920
- ]
3921
- ]
3922
- ],
3923
- [
3924
- 13,
3925
- "y0",
3926
- [
3927
- 6,
3928
- [
3929
- 7,
3930
- "std",
3931
- "clamp"
3932
- ],
3933
- [
3934
- [
3935
- 6,
3936
- [
3937
- 7,
3938
- "std",
3939
- "floor"
3940
- ],
3941
- ["srcY"]
3942
- ],
3943
- [5, "0"],
3944
- [
3945
- 6,
3946
- [
3947
- 7,
3948
- "d",
3949
- "f32"
3950
- ],
3951
- [[
3952
- 1,
3953
- "N",
3954
- "-",
3955
- [5, "2"]
3956
- ]]
3957
- ]
3958
- ]
3959
- ]
3960
- ],
3961
- [
3962
- 13,
3963
- "sx",
3964
- [
3965
- 1,
3966
- "srcX",
3967
- "-",
3968
- "x0"
3969
- ]
3970
- ],
3971
- [
3972
- 13,
3973
- "sy",
3974
- [
3975
- 1,
3976
- "srcY",
3977
- "-",
3978
- "y0"
3979
- ]
3980
- ],
3981
- [
3982
- 13,
3983
- "ix0",
3984
- [
3985
- 6,
3986
- [
3987
- 7,
3988
- "d",
3989
- "i32"
3990
- ],
3991
- ["x0"]
3992
- ]
3993
- ],
3994
- [
3995
- 13,
3996
- "iy0",
3997
- [
3998
- 6,
3999
- [
4000
- 7,
4001
- "d",
4002
- "i32"
4003
- ],
4004
- ["y0"]
4005
- ]
4006
- ],
4007
- [
4008
- 13,
4009
- "d00",
4010
- [
4011
- 8,
4012
- [
4013
- 7,
4014
- [
4015
- 7,
4016
- "fluidLayout",
4017
- "$"
4018
- ],
4019
- "densA"
4020
- ],
4021
- [
4022
- 6,
4023
- [
4024
- 7,
4025
- "d",
4026
- "u32"
4027
- ],
4028
- [[
4029
- 1,
4030
- [
4031
- 1,
4032
- "iy0",
4033
- "*",
4034
- "N"
4035
- ],
4036
- "+",
4037
- "ix0"
4038
- ]]
4039
- ]
4040
- ]
4041
- ],
4042
- [
4043
- 13,
4044
- "d10",
4045
- [
4046
- 8,
4047
- [
4048
- 7,
4049
- [
4050
- 7,
4051
- "fluidLayout",
4052
- "$"
4053
- ],
4054
- "densA"
4055
- ],
4056
- [
4057
- 6,
4058
- [
4059
- 7,
4060
- "d",
4061
- "u32"
4062
- ],
4063
- [[
4064
- 1,
4065
- [
4066
- 1,
4067
- [
4068
- 1,
4069
- "iy0",
4070
- "*",
4071
- "N"
4072
- ],
4073
- "+",
4074
- "ix0"
4075
- ],
4076
- "+",
4077
- [5, "1"]
4078
- ]]
4079
- ]
4080
- ]
4081
- ],
4082
- [
4083
- 13,
4084
- "d01",
4085
- [
4086
- 8,
4087
- [
4088
- 7,
4089
- [
4090
- 7,
4091
- "fluidLayout",
4092
- "$"
4093
- ],
4094
- "densA"
4095
- ],
4096
- [
4097
- 6,
4098
- [
4099
- 7,
4100
- "d",
4101
- "u32"
4102
- ],
4103
- [[
4104
- 1,
4105
- [
4106
- 1,
4107
- [
4108
- 1,
4109
- "iy0",
4110
- "+",
4111
- [5, "1"]
4112
- ],
4113
- "*",
4114
- "N"
4115
- ],
4116
- "+",
4117
- "ix0"
4118
- ]]
4119
- ]
4120
- ]
4121
- ],
4122
- [
4123
- 13,
4124
- "d11",
4125
- [
4126
- 8,
4127
- [
4128
- 7,
4129
- [
4130
- 7,
4131
- "fluidLayout",
4132
- "$"
4133
- ],
4134
- "densA"
4135
- ],
4136
- [
4137
- 6,
4138
- [
4139
- 7,
4140
- "d",
4141
- "u32"
4142
- ],
4143
- [[
4144
- 1,
4145
- [
4146
- 1,
4147
- [
4148
- 1,
4149
- [
4150
- 1,
4151
- "iy0",
4152
- "+",
4153
- [5, "1"]
4154
- ],
4155
- "*",
4156
- "N"
4157
- ],
4158
- "+",
4159
- "ix0"
4160
- ],
4161
- "+",
4162
- [5, "1"]
4163
- ]]
4164
- ]
4165
- ]
4166
- ],
4167
- [
4168
- 13,
4169
- "dens",
4170
- [
4171
- 6,
4172
- [
4173
- 7,
4174
- "std",
4175
- "mix"
4176
- ],
4177
- [
4178
- [
4179
- 6,
4180
- [
4181
- 7,
4182
- "std",
4183
- "mix"
4184
- ],
4185
- [
4186
- [
4187
- 7,
4188
- "d00",
4189
- "x"
4190
- ],
4191
- [
4192
- 7,
4193
- "d10",
4194
- "x"
4195
- ],
4196
- "sx"
4197
- ]
4198
- ],
4199
- [
4200
- 6,
4201
- [
4202
- 7,
4203
- "std",
4204
- "mix"
4205
- ],
4206
- [
4207
- [
4208
- 7,
4209
- "d01",
4210
- "x"
4211
- ],
4212
- [
4213
- 7,
4214
- "d11",
4215
- "x"
4216
- ],
4217
- "sx"
4218
- ]
4219
- ],
4220
- "sy"
4221
- ]
4222
- ]
4223
- ],
4224
- [
4225
- 13,
4226
- "age",
4227
- [
4228
- 6,
4229
- [
4230
- 7,
4231
- "std",
4232
- "mix"
4233
- ],
4234
- [
4235
- [
4236
- 6,
4237
- [
4238
- 7,
4239
- "std",
4240
- "mix"
4241
- ],
4242
- [
4243
- [
4244
- 7,
4245
- "d00",
4246
- "y"
4247
- ],
4248
- [
4249
- 7,
4250
- "d10",
4251
- "y"
4252
- ],
4253
- "sx"
4254
- ]
4255
- ],
4256
- [
4257
- 6,
4258
- [
4259
- 7,
4260
- "std",
4261
- "mix"
4262
- ],
4263
- [
4264
- [
4265
- 7,
4266
- "d01",
4267
- "y"
4268
- ],
4269
- [
4270
- 7,
4271
- "d11",
4272
- "y"
4273
- ],
4274
- "sx"
4275
- ]
4276
- ],
4277
- "sy"
4278
- ]
4279
- ]
4280
- ],
4281
- [
4282
- 13,
4283
- "decay",
4284
- [
4285
- 1,
4286
- [5, "1"],
4287
- "+",
4288
- [
4289
- 1,
4290
- [
4291
- 7,
4292
- "p",
4293
- "densDissip"
4294
- ],
4295
- "*",
4296
- [
4297
- 7,
4298
- "p",
4299
- "dt"
4300
- ]
4301
- ]
4302
- ]
4303
- ],
4304
- [
4305
- 2,
4306
- [
4307
- 8,
4308
- [
4309
- 7,
4310
- [
4311
- 7,
4312
- "fluidLayout",
4313
- "$"
4314
- ],
4315
- "densB"
4316
- ],
4317
- "idx"
4318
- ],
4319
- "=",
4320
- [
4321
- 6,
4322
- [
4323
- 7,
4324
- "d",
4325
- "vec4f"
4326
- ],
4327
- [
4328
- [
4329
- 6,
4330
- [
4331
- 7,
4332
- "std",
4333
- "max"
4334
- ],
4335
- [[
4336
- 1,
4337
- "dens",
4338
- "/",
4339
- "decay"
4340
- ], [
4341
- 6,
4342
- [
4343
- 7,
4344
- "d",
4345
- "f32"
4346
- ],
4347
- [[5, "0"]]
4348
- ]]
4349
- ],
4350
- [
4351
- 6,
4352
- [
4353
- 7,
4354
- "std",
4355
- "min"
4356
- ],
4357
- [[
4358
- 1,
4359
- "age",
4360
- "+",
4361
- [
4362
- 1,
4363
- [
4364
- 1,
4365
- [
4366
- 7,
4367
- "p",
4368
- "dt"
4369
- ],
4370
- "*",
4371
- [5, "0.4"]
4372
- ],
4373
- "*",
4374
- [
4375
- 7,
4376
- "p",
4377
- "colorDecay"
4378
- ]
4379
- ]
4380
- ], [5, "1"]]
4381
- ],
4382
- [5, "0"],
4383
- [5, "0"]
4384
- ]
4385
- ]
4386
- ]
4387
- ]],
4388
- "externalNames": [
4389
- "fluidLayout",
4390
- "d",
4391
- "N",
4392
- "std"
4393
- ]
4394
- },
4395
- externals: () => ({
4396
- fluidLayout,
4397
- d: data_exports,
4398
- N,
4399
- std: std_exports
4400
- })
4401
- }) && $.f)({})).$name("smokeAdvectDens");
4402
- const copyDensKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
4403
- "use gpu";
4404
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
4405
- const dd = fluidLayout.$.densB[idx];
4406
- fluidLayout.$.densA[idx] = vec4f(dd.x, dd.y, 0, 0);
4407
- }), {
4408
- v: 1,
4409
- name: void 0,
4410
- ast: {
4411
- "params": [{
4412
- "type": "i",
4413
- "name": "cx"
4414
- }, {
4415
- "type": "i",
4416
- "name": "cy"
4417
- }],
4418
- "body": [0, [
4419
- [
4420
- 13,
4421
- "idx",
4422
- [
4423
- 1,
4424
- [
4425
- 1,
4426
- "cy",
4427
- "*",
4428
- [
4429
- 6,
4430
- [
4431
- 7,
4432
- "d",
4433
- "u32"
4434
- ],
4435
- ["N"]
4436
- ]
4437
- ],
4438
- "+",
4439
- "cx"
4440
- ]
4441
- ],
4442
- [
4443
- 13,
4444
- "dd",
4445
- [
4446
- 8,
4447
- [
4448
- 7,
4449
- [
4450
- 7,
4451
- "fluidLayout",
4452
- "$"
4453
- ],
4454
- "densB"
4455
- ],
4456
- "idx"
4457
- ]
4458
- ],
4459
- [
4460
- 2,
4461
- [
4462
- 8,
4463
- [
4464
- 7,
4465
- [
4466
- 7,
4467
- "fluidLayout",
4468
- "$"
4469
- ],
4470
- "densA"
4471
- ],
4472
- "idx"
4473
- ],
4474
- "=",
4475
- [
4476
- 6,
4477
- [
4478
- 7,
4479
- "d",
4480
- "vec4f"
4481
- ],
4482
- [
4483
- [
4484
- 7,
4485
- "dd",
4486
- "x"
4487
- ],
4488
- [
4489
- 7,
4490
- "dd",
4491
- "y"
4492
- ],
4493
- [5, "0"],
4494
- [5, "0"]
4495
- ]
4496
- ]
4497
- ]
4498
- ]],
4499
- "externalNames": [
4500
- "d",
4501
- "N",
4502
- "fluidLayout"
4503
- ]
4504
- },
4505
- externals: () => ({
4506
- d: data_exports,
4507
- N,
4508
- fluidLayout
4509
- })
4510
- }) && $.f)({})).$name("smokeCopyDens");
4511
- const outputKernel = src_default.fn([u32, u32])(/* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
4512
- "use gpu";
4513
- const idx = __tsover_add(__tsover_mul(cy, u32(N)), cx);
4514
- const dd = outputLayout.$.densA[idx];
4515
- textureStore(outputLayout.$.outTex, vec2u(cx, cy), vec4f(dd.x, dd.y, 0, 0));
4516
- }), {
4517
- v: 1,
4518
- name: void 0,
4519
- ast: {
4520
- "params": [{
4521
- "type": "i",
4522
- "name": "cx"
4523
- }, {
4524
- "type": "i",
4525
- "name": "cy"
4526
- }],
4527
- "body": [0, [
4528
- [
4529
- 13,
4530
- "idx",
4531
- [
4532
- 1,
4533
- [
4534
- 1,
4535
- "cy",
4536
- "*",
4537
- [
4538
- 6,
4539
- [
4540
- 7,
4541
- "d",
4542
- "u32"
4543
- ],
4544
- ["N"]
4545
- ]
4546
- ],
4547
- "+",
4548
- "cx"
4549
- ]
4550
- ],
4551
- [
4552
- 13,
4553
- "dd",
4554
- [
4555
- 8,
4556
- [
4557
- 7,
4558
- [
4559
- 7,
4560
- "outputLayout",
4561
- "$"
4562
- ],
4563
- "densA"
4564
- ],
4565
- "idx"
4566
- ]
4567
- ],
4568
- [
4569
- 6,
4570
- [
4571
- 7,
4572
- "std",
4573
- "textureStore"
4574
- ],
4575
- [
4576
- [
4577
- 7,
4578
- [
4579
- 7,
4580
- "outputLayout",
4581
- "$"
4582
- ],
4583
- "outTex"
4584
- ],
4585
- [
4586
- 6,
4587
- [
4588
- 7,
4589
- "d",
4590
- "vec2u"
4591
- ],
4592
- ["cx", "cy"]
4593
- ],
4594
- [
4595
- 6,
4596
- [
4597
- 7,
4598
- "d",
4599
- "vec4f"
4600
- ],
4601
- [
4602
- [
4603
- 7,
4604
- "dd",
4605
- "x"
4606
- ],
4607
- [
4608
- 7,
4609
- "dd",
4610
- "y"
4611
- ],
4612
- [5, "0"],
4613
- [5, "0"]
4614
- ]
4615
- ]
4616
- ]
4617
- ]
4618
- ]],
4619
- "externalNames": [
4620
- "d",
4621
- "N",
4622
- "outputLayout",
4623
- "std"
4624
- ]
4625
- },
4626
- externals: () => ({
4627
- d: data_exports,
4628
- N,
4629
- outputLayout,
4630
- std: std_exports
4631
- })
4632
- }) && $.f)({})).$name("smokeOutput");
4633
- const componentDefinition = {
4634
- name: "Smoke",
4635
- boundingBoxDeclaration: { aspectRatio: null },
4636
- category: "Interactive",
4637
- description: "Realistic fluid smoke simulation with vorticity dynamics",
4638
- usesPointer: true,
4639
- props: {
4640
- colorA: {
4641
- default: "#fc83f9",
4642
- transform: transformColor,
4643
- description: "Color of fresh smoke",
4644
- ui: {
4645
- type: "color",
4646
- label: "Start Color",
4647
- group: "Colors"
4648
- }
4649
- },
4650
- colorB: {
4651
- default: "#c21c79",
4652
- transform: transformColor,
4653
- description: "Color smoke transitions to as it ages",
4654
- ui: {
4655
- type: "color",
4656
- label: "End Color",
4657
- group: "Colors"
4658
- }
4659
- },
4660
- stops: colorStopsPropConfig(),
4661
- emitFrom: {
4662
- default: {
4663
- x: .5,
4664
- y: 1
4665
- },
4666
- transform: transformPosition,
4667
- description: "The emission source point",
4668
- ui: {
4669
- type: "position",
4670
- label: "Emit From",
4671
- group: "Emission"
4672
- }
4673
- },
4674
- direction: {
4675
- default: 0,
4676
- description: "Emission direction (0 = up, 90 = right, 180 = down, 270 = left)",
4677
- ui: {
4678
- type: "range",
4679
- min: 0,
4680
- max: 360,
4681
- step: 1,
4682
- label: "Direction",
4683
- group: "Emission"
4684
- }
4685
- },
4686
- speed: {
4687
- default: 20,
4688
- description: "Emission velocity strength",
4689
- ui: {
4690
- type: "range",
4691
- min: .1,
4692
- max: 50,
4693
- step: .1,
4694
- label: "Speed",
4695
- group: "Emission"
4696
- }
4697
- },
4698
- spread: {
4699
- default: 60,
4700
- description: "Emission cone angle in degrees",
4701
- ui: {
4702
- type: "range",
4703
- min: 0,
4704
- max: 180,
4705
- step: 1,
4706
- label: "Spread",
4707
- group: "Emission"
4708
- }
4709
- },
4710
- emitRadius: {
4711
- default: .08,
4712
- description: "Size of the emission area",
4713
- ui: {
4714
- type: "range",
4715
- min: .01,
4716
- max: .3,
4717
- step: .01,
4718
- label: "Emit Size",
4719
- group: "Emission"
4720
- }
4721
- },
4722
- intensity: {
4723
- default: 1,
4724
- description: "Smoke emission density",
4725
- ui: {
4726
- type: "range",
4727
- min: .1,
4728
- max: 1,
4729
- step: .01,
4730
- label: "Intensity",
4731
- group: "Effect"
4732
- }
4733
- },
4734
- dissipation: {
4735
- default: .2,
4736
- description: "How fast smoke fades over time",
4737
- ui: {
4738
- type: "range",
4739
- min: .1,
4740
- max: 3,
4741
- step: .1,
4742
- label: "Dissipation",
4743
- group: "Effect"
4744
- }
4745
- },
4746
- detail: {
4747
- default: 25,
4748
- description: "Fine-scale swirling detail",
4749
- ui: {
4750
- type: "range",
4751
- min: 0,
4752
- max: 50,
4753
- step: 1,
4754
- label: "Detail",
4755
- group: "Effect"
4756
- }
4757
- },
4758
- gravity: {
4759
- default: .5,
4760
- description: "Downward gravitational pull on smoke",
4761
- ui: {
4762
- type: "range",
4763
- min: -2,
4764
- max: 2,
4765
- step: .1,
4766
- label: "Gravity",
4767
- group: "Effect"
4768
- }
4769
- },
4770
- colorDecay: {
4771
- default: .4,
4772
- description: "How quickly smoke shifts from Color A to Color B",
4773
- ui: {
4774
- type: "range",
4775
- min: 0,
4776
- max: 3,
4777
- step: .1,
4778
- label: "Color Decay",
4779
- group: "Colors"
4780
- }
4781
- },
4782
- mouseInfluence: {
4783
- default: .1,
4784
- description: "Strength of cursor influence",
4785
- ui: {
4786
- type: "range",
4787
- min: 0,
4788
- max: 2,
4789
- step: .01,
4790
- label: "Cursor Influence",
4791
- group: "Interaction"
4792
- }
4793
- },
4794
- mouseRadius: {
4795
- default: .1,
4796
- description: "Radius of cursor influence area",
4797
- ui: {
4798
- type: "range",
4799
- min: .02,
4800
- max: .5,
4801
- step: .01,
4802
- label: "Cursor Radius",
4803
- group: "Interaction"
4804
- }
4805
- },
4806
- colorSpace: {
4807
- default: "linear",
4808
- transform: transformColorSpace,
4809
- compileTime: true,
4810
- description: "Color space for color interpolation",
4811
- ui: {
4812
- type: "select",
4813
- options: colorSpaceOptions,
4814
- label: "Color Space",
4815
- group: "Colors"
4816
- }
4817
- }
4818
- },
4819
- compute: (params) => {
4820
- const { gpu, getCpuValue, registerComputeTexture, onCleanup } = params;
4821
- const root = gpu?.root;
4822
- if (!root) return null;
4823
- const velA = createStateBuffer(root, vec4f, COUNT);
4824
- const velB = createStateBuffer(root, vec4f, COUNT);
4825
- const densA = createStateBuffer(root, vec4f, COUNT);
4826
- const densB = createStateBuffer(root, vec4f, COUNT);
4827
- const pressure = createStateBuffer(root, f32, COUNT);
4828
- const divergence = createStateBuffer(root, f32, COUNT);
4829
- const outTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) => a))(root.createTexture({
4830
- size: [N, N],
4831
- format: STATE_FORMAT
4832
- }).$usage("storage", "sampled"), "outTex");
4833
- onCleanup(() => outTex.destroy());
4834
- const smokeTexture = registerComputeTexture(outTex);
4835
- const paramsU = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) => a))(root.createUniform(FluidParams), "paramsU");
4836
- const size = [N, N];
4837
- const fluidBg = root.createBindGroup(fluidLayout, {
4838
- velA,
4839
- velB,
4840
- densA,
4841
- densB,
4842
- pressure,
4843
- divergence,
4844
- params: paramsU.buffer
4845
- });
4846
- const outputBg = root.createBindGroup(outputLayout, {
4847
- densA,
4848
- outTex
4849
- });
4850
- const mk = (kernel) => createGuardedCompute(root, /* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
4851
- "use gpu";
4852
- kernel(cx, cy);
4853
- }), {
4854
- v: 1,
4855
- name: void 0,
4856
- ast: {
4857
- "params": [{
4858
- "type": "i",
4859
- "name": "cx"
4860
- }, {
4861
- "type": "i",
4862
- "name": "cy"
4863
- }],
4864
- "body": [0, [[
4865
- 6,
4866
- "kernel",
4867
- ["cx", "cy"]
4868
- ]]],
4869
- "externalNames": ["kernel"]
4870
- },
4871
- externals: () => ({ kernel })
4872
- }) && $.f)({}), {
4873
- size,
4874
- bindGroup: fluidBg
4875
- });
4876
- const splat = mk(splatKernel);
4877
- const curl = mk(curlKernel);
4878
- const vorticity = mk(vorticityKernel);
4879
- const divergencePass = mk(divergenceKernel);
4880
- const jacobi = mk(jacobiKernel);
4881
- const gradSubtract = mk(gradSubtractKernel);
4882
- const advectVel = mk(advectVelKernel);
4883
- const copyVel = mk(copyVelKernel);
4884
- const advectDens = mk(advectDensKernel);
4885
- const copyDens = mk(copyDensKernel);
4886
- const output = createGuardedCompute(root, /* @__PURE__ */ (($) => (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) => {
4887
- "use gpu";
4888
- outputKernel(cx, cy);
4889
- }), {
4890
- v: 1,
4891
- name: void 0,
4892
- ast: {
4893
- "params": [{
4894
- "type": "i",
4895
- "name": "cx"
4896
- }, {
4897
- "type": "i",
4898
- "name": "cy"
4899
- }],
4900
- "body": [0, [[
4901
- 6,
4902
- "outputKernel",
4903
- ["cx", "cy"]
4904
- ]]],
4905
- "externalNames": ["outputKernel"]
4906
- },
4907
- externals: () => ({ outputKernel })
4908
- }) && $.f)({}), {
4909
- size,
4910
- bindGroup: outputBg
4911
- });
4912
- let lastTime = Date.now();
4913
- let prevMx = .5;
4914
- let prevMy = .5;
4915
- return {
4916
- outputs: { smokeTexture },
4917
- getComputeNodes: (frameParams) => {
4918
- const fp = frameParams;
4919
- const now = Date.now();
4920
- const dt = Math.min(fp.deltaTime ?? (now - lastTime) / 1e3, .033);
4921
- lastTime = now;
4922
- if (dt < .001) return null;
4923
- const num = (key, fallback) => {
4924
- const v = getCpuValue(key);
4925
- return typeof v === "number" ? v : fallback;
4926
- };
4927
- const speed = num("speed", 3);
4928
- const dirRad = num("direction", 0) * Math.PI / 180;
4929
- const spreadHalf = Math.min(89 * Math.PI / 180, num("spread", 45) * Math.PI / 360);
4930
- const emitPos = getCpuValue("emitFrom");
4931
- const epx = emitPos?.x ?? .5;
4932
- const epy = emitPos?.y ?? 0;
4933
- const velMag = speed * N * .15;
4934
- const mouseInf = num("mouseInfluence", .5);
4935
- const mouseRad = num("mouseRadius", .12);
4936
- const mx = fp.pointer?.x ?? prevMx;
4937
- const my = fp.pointer?.y ?? prevMy;
4938
- const mdx = mx - prevMx;
4939
- const mdy = my - prevMy;
4940
- prevMx = mx;
4941
- prevMy = my;
4942
- const cursorSpeed = Math.sqrt(mdx * mdx + mdy * mdy);
4943
- const mouseRadGrid = mouseRad * N;
4944
- const active = cursorSpeed > 5e-4 && mouseInf > 0;
4945
- paramsU.write({
4946
- dt,
4947
- emitX: epx * N,
4948
- emitY: (1 - epy) * N,
4949
- emitVelX: Math.sin(dirRad) * velMag,
4950
- emitVelY: -Math.cos(dirRad) * velMag,
4951
- perpDirX: Math.cos(dirRad),
4952
- perpDirY: Math.sin(dirRad),
4953
- spreadFactor: Math.tan(spreadHalf),
4954
- emitRad: num("emitRadius", .06) * N,
4955
- emitIntensity: num("intensity", .7),
4956
- densDissip: num("dissipation", 1),
4957
- curlStrength: num("detail", 30),
4958
- gravity: num("gravity", .5),
4959
- colorDecay: num("colorDecay", 1),
4960
- cursorX: active ? mx * N : 0,
4961
- cursorY: active ? my * N : 0,
4962
- cursorVelX: active ? mdx * N * 15 * mouseInf : 0,
4963
- cursorVelY: active ? mdy * N * 15 * mouseInf : 0,
4964
- mouseActive: active ? 1 : 0,
4965
- mouseRadSq: mouseRadGrid * mouseRadGrid
4966
- });
4967
- const nodes = [
4968
- splat,
4969
- curl,
4970
- vorticity,
4971
- divergencePass
4972
- ];
4973
- for (let iter = 0; iter < JACOBI_ITERS; iter++) nodes.push(jacobi);
4974
- nodes.push(gradSubtract, advectVel, copyVel, advectDens, copyDens, output);
4975
- return nodes;
4976
- }
4977
- };
4978
- },
4979
- fragment: ({ ctx, computeOutputs, propValues, uniforms }) => {
4980
- const smokeField = computeOutputs?.smokeTexture;
4981
- if (!smokeField) return ZERO;
4982
- const s = smokeField.sample(ctx.uv, "linearClamp");
4983
- const smokeDensity = s.member("x");
4984
- const smokeAge = s.member("y");
4985
- const colorSpaceMode = propValues.colorSpace ?? 0;
4986
- const stopCount = propValues.stopCount ?? 0;
4987
- let smokeColor;
4988
- if (stopCount > 1) smokeColor = mixColorStopsRuntime(smokeAge, {
4989
- colorsArray: uniforms.colorsArray,
4990
- positionsArray: uniforms.positionsArray,
4991
- convertedColorsArray: uniforms.convertedColorsArray,
4992
- stopCount: uniforms.stopCount
4993
- }, colorSpaceMode);
4994
- else smokeColor = call(cm.mixColorsVariants[colorSpaceMode] ?? cm.mixColorsLinear, "mixColors", [
4995
- uniforms.colorA,
4996
- uniforms.colorB,
4997
- smokeAge
4998
- ]);
4999
- return vec4(smokeColor.member("rgb"), smokeColor.member("a").mul(smokeDensity));
5000
- }
5001
- };
5002
- var Smoke_default = componentDefinition;
5003
- export { copyDensKernel as a, divergenceKernel as c, outputKernel as d, splatKernel as f, componentDefinition as i, gradSubtractKernel as l, advectDensKernel as n, copyVelKernel as o, vorticityKernel as p, advectVelKernel as r, curlKernel as s, Smoke_default as t, jacobiKernel as u };