gl-transitions 1.74.0 → 1.76.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (389) hide show
  1. package/README.md +78 -0
  2. package/compatibility.json +2070 -0
  3. package/glsl3/AdvancedMosaic.glsl +21 -0
  4. package/glsl3/BlockDissolve.glsl +16 -0
  5. package/glsl3/BookFlip.glsl +37 -0
  6. package/glsl3/Bounce.glsl +35 -0
  7. package/glsl3/BowTieHorizontal.glsl +123 -0
  8. package/glsl3/BowTieVertical.glsl +117 -0
  9. package/glsl3/BowTieWithParameter.glsl +74 -0
  10. package/glsl3/Box.glsl +33 -0
  11. package/glsl3/ButterflyWaveScrawler.glsl +33 -0
  12. package/glsl3/CircleCrop.glsl +20 -0
  13. package/glsl3/ColourDistance.glsl +19 -0
  14. package/glsl3/CrazyParametricFun.glsl +20 -0
  15. package/glsl3/CrossZoom.glsl +68 -0
  16. package/glsl3/DefocusBlur.glsl +47 -0
  17. package/glsl3/Directional.glsl +18 -0
  18. package/glsl3/DirectionalScaled.glsl +35 -0
  19. package/glsl3/DoomScreenTransition.glsl +62 -0
  20. package/glsl3/Dreamy.glsl +14 -0
  21. package/glsl3/DreamyZoom.glsl +43 -0
  22. package/glsl3/Drop_Zone_Flicker.glsl +159 -0
  23. package/glsl3/EdgeTransition.glsl +50 -0
  24. package/glsl3/FilmBurn.glsl +63 -0
  25. package/glsl3/Fold.glsl +12 -0
  26. package/glsl3/GlitchDisplace.glsl +78 -0
  27. package/glsl3/GlitchMemories.glsl +17 -0
  28. package/glsl3/GridFlip.glsl +77 -0
  29. package/glsl3/HSVfade.glsl +29 -0
  30. package/glsl3/HorizontalClose.glsl +16 -0
  31. package/glsl3/HorizontalOpen.glsl +18 -0
  32. package/glsl3/InvertedPageCurl.glsl +228 -0
  33. package/glsl3/LeftRight.glsl +28 -0
  34. package/glsl3/LinearBlur.glsl +30 -0
  35. package/glsl3/Mosaic.glsl +45 -0
  36. package/glsl3/Overexposure.glsl +25 -0
  37. package/glsl3/PolkaDotsCurtain.glsl +14 -0
  38. package/glsl3/PuzzleRight.glsl +57 -0
  39. package/glsl3/Radial.glsl +19 -0
  40. package/glsl3/Rectangle.glsl +29 -0
  41. package/glsl3/RectangleCrop.glsl +30 -0
  42. package/glsl3/Revolve_Left.glsl +98 -0
  43. package/glsl3/Rolls.glsl +42 -0
  44. package/glsl3/RotateScaleVanish.glsl +42 -0
  45. package/glsl3/SimpleFlip.glsl +14 -0
  46. package/glsl3/SimpleZoom.glsl +20 -0
  47. package/glsl3/SimpleZoomOut.glsl +23 -0
  48. package/glsl3/Slides.glsl +41 -0
  49. package/glsl3/StarWipe.glsl +51 -0
  50. package/glsl3/StaticFade.glsl +47 -0
  51. package/glsl3/StereoViewer.glsl +214 -0
  52. package/glsl3/StripDatamoshGlitch.glsl +187 -0
  53. package/glsl3/Swirl.glsl +34 -0
  54. package/glsl3/TVStatic.glsl +29 -0
  55. package/glsl3/TilesWave.glsl +63 -0
  56. package/glsl3/TopBottom.glsl +27 -0
  57. package/glsl3/VerticalClose.glsl +16 -0
  58. package/glsl3/VerticalOpen.glsl +17 -0
  59. package/glsl3/WaterDrop.glsl +21 -0
  60. package/glsl3/ZoomInCircles.glsl +40 -0
  61. package/glsl3/ZoomLeftWipe.glsl +36 -0
  62. package/glsl3/ZoomRigthWipe.glsl +36 -0
  63. package/glsl3/angular.glsl +25 -0
  64. package/glsl3/burn.glsl +14 -0
  65. package/glsl3/burn0.glsl +55 -0
  66. package/glsl3/cannabisleaf.glsl +18 -0
  67. package/glsl3/chessboard.glsl +28 -0
  68. package/glsl3/circle.glsl +24 -0
  69. package/glsl3/circleopen.glsl +18 -0
  70. package/glsl3/colorphase.glsl +19 -0
  71. package/glsl3/coord-from-in.glsl +18 -0
  72. package/glsl3/crosshatch.glsl +20 -0
  73. package/glsl3/crosswarp.glsl +10 -0
  74. package/glsl3/cube.glsl +71 -0
  75. package/glsl3/directional-easing.glsl +19 -0
  76. package/glsl3/directionalwarp.glsl +20 -0
  77. package/glsl3/directionalwipe.glsl +22 -0
  78. package/glsl3/displacement.glsl +26 -0
  79. package/glsl3/dissolve.glsl +54 -0
  80. package/glsl3/doorway.glsl +55 -0
  81. package/glsl3/fade.glsl +13 -0
  82. package/glsl3/fadecolor.glsl +15 -0
  83. package/glsl3/fadegrayscale.glsl +21 -0
  84. package/glsl3/flyeye.glsl +20 -0
  85. package/glsl3/fragment.glsl +54 -0
  86. package/glsl3/heart.glsl +19 -0
  87. package/glsl3/hexagonalize.glsl +78 -0
  88. package/glsl3/kaleidoscope.glsl +25 -0
  89. package/glsl3/luma.glsl +15 -0
  90. package/glsl3/luminance_melt.glsl +131 -0
  91. package/glsl3/morph.glsl +20 -0
  92. package/glsl3/mosaic_transition.glsl +20 -0
  93. package/glsl3/multiply_blend.glsl +19 -0
  94. package/glsl3/old_tv_lost_signal.glsl +51 -0
  95. package/glsl3/parametric_glitch.glsl +29 -0
  96. package/glsl3/perlin.glsl +66 -0
  97. package/glsl3/pinwheel.glsl +20 -0
  98. package/glsl3/pixelize.glsl +21 -0
  99. package/glsl3/polar_function.glsl +24 -0
  100. package/glsl3/powerKaleido.glsl +57 -0
  101. package/glsl3/randomNoisex.glsl +15 -0
  102. package/glsl3/randomsquares.glsl +20 -0
  103. package/glsl3/ripple.glsl +20 -0
  104. package/glsl3/rotateTransition.glsl +22 -0
  105. package/glsl3/rotate_scale_fade.glsl +39 -0
  106. package/glsl3/scale-in.glsl +18 -0
  107. package/glsl3/splitSlideInHorizontal.glsl +26 -0
  108. package/glsl3/splitSlideInOutHorizontal.glsl +23 -0
  109. package/glsl3/splitSlideInOutVertical.glsl +23 -0
  110. package/glsl3/splitSlideInVertical.glsl +24 -0
  111. package/glsl3/splitSlideOutHorizontal.glsl +22 -0
  112. package/glsl3/splitSlideOutVertical.glsl +22 -0
  113. package/glsl3/squareswire.glsl +26 -0
  114. package/glsl3/squeeze.glsl +23 -0
  115. package/glsl3/static_wipe.glsl +39 -0
  116. package/glsl3/swap.glsl +64 -0
  117. package/glsl3/tangentMotionBlur.glsl +139 -0
  118. package/glsl3/undulatingBurnOut.glsl +56 -0
  119. package/glsl3/wind.glsl +25 -0
  120. package/glsl3/windowblinds.glsl +18 -0
  121. package/glsl3/windowslice.glsl +16 -0
  122. package/glsl3/wipeDown.glsl +12 -0
  123. package/glsl3/wipeLeft.glsl +12 -0
  124. package/glsl3/wipeRight.glsl +12 -0
  125. package/glsl3/wipeUp.glsl +12 -0
  126. package/glsl3/x_axis_translation.glsl +21 -0
  127. package/glsl3/zoomInOut.glsl +20 -0
  128. package/index.d.ts +61 -0
  129. package/layouts.json +2956 -0
  130. package/llms-full.txt +1707 -0
  131. package/llms.txt +153 -0
  132. package/msl/AdvancedMosaic.metal +136 -0
  133. package/msl/BlockDissolve.metal +108 -0
  134. package/msl/BookFlip.metal +191 -0
  135. package/msl/Bounce.metal +128 -0
  136. package/msl/BowTieHorizontal.metal +375 -0
  137. package/msl/BowTieVertical.metal +375 -0
  138. package/msl/BowTieWithParameter.metal +361 -0
  139. package/msl/Box.metal +204 -0
  140. package/msl/ButterflyWaveScrawler.metal +190 -0
  141. package/msl/CircleCrop.metal +117 -0
  142. package/msl/ColourDistance.metal +110 -0
  143. package/msl/CrazyParametricFun.metal +139 -0
  144. package/msl/CrossZoom.metal +274 -0
  145. package/msl/DefocusBlur.metal +297 -0
  146. package/msl/Directional.metal +107 -0
  147. package/msl/DirectionalScaled.metal +147 -0
  148. package/msl/DoomScreenTransition.metal +212 -0
  149. package/msl/Dreamy.metal +133 -0
  150. package/msl/DreamyZoom.metal +182 -0
  151. package/msl/Drop_Zone_Flicker.metal +561 -0
  152. package/msl/EdgeTransition.metal +277 -0
  153. package/msl/FilmBurn.metal +425 -0
  154. package/msl/Fold.metal +110 -0
  155. package/msl/GlitchDisplace.metal +374 -0
  156. package/msl/GlitchMemories.metal +146 -0
  157. package/msl/GridFlip.metal +285 -0
  158. package/msl/HSVfade.metal +161 -0
  159. package/msl/HorizontalClose.metal +100 -0
  160. package/msl/HorizontalOpen.metal +103 -0
  161. package/msl/InvertedPageCurl.metal +762 -0
  162. package/msl/LeftRight.metal +138 -0
  163. package/msl/LinearBlur.metal +169 -0
  164. package/msl/Mosaic.metal +212 -0
  165. package/msl/Overexposure.metal +130 -0
  166. package/msl/PolkaDotsCurtain.metal +112 -0
  167. package/msl/PuzzleRight.metal +262 -0
  168. package/msl/Radial.metal +102 -0
  169. package/msl/Rectangle.metal +129 -0
  170. package/msl/RectangleCrop.metal +127 -0
  171. package/msl/Revolve_Left.metal +363 -0
  172. package/msl/Rolls.metal +209 -0
  173. package/msl/RotateScaleVanish.metal +227 -0
  174. package/msl/SimpleFlip.metal +110 -0
  175. package/msl/SimpleZoom.metal +116 -0
  176. package/msl/SimpleZoomOut.metal +127 -0
  177. package/msl/Slides.metal +244 -0
  178. package/msl/StarWipe.metal +204 -0
  179. package/msl/StaticFade.metal +193 -0
  180. package/msl/StereoViewer.metal +707 -0
  181. package/msl/StripDatamoshGlitch.metal +828 -0
  182. package/msl/Swirl.metal +152 -0
  183. package/msl/TVStatic.metal +136 -0
  184. package/msl/TilesWave.metal +290 -0
  185. package/msl/TopBottom.metal +138 -0
  186. package/msl/VerticalClose.metal +100 -0
  187. package/msl/VerticalOpen.metal +103 -0
  188. package/msl/WaterDrop.metal +126 -0
  189. package/msl/ZoomInCircles.metal +169 -0
  190. package/msl/ZoomLeftWipe.metal +152 -0
  191. package/msl/ZoomRigthWipe.metal +152 -0
  192. package/msl/angular.metal +111 -0
  193. package/msl/burn.metal +103 -0
  194. package/msl/burn0.metal +236 -0
  195. package/msl/cannabisleaf.metal +120 -0
  196. package/msl/chessboard.metal +144 -0
  197. package/msl/circle.metal +115 -0
  198. package/msl/circleopen.metal +124 -0
  199. package/msl/colorphase.metal +106 -0
  200. package/msl/coord-from-in.metal +111 -0
  201. package/msl/crosshatch.metal +126 -0
  202. package/msl/crosswarp.metal +103 -0
  203. package/msl/cube.metal +259 -0
  204. package/msl/directional-easing.metal +111 -0
  205. package/msl/directionalwarp.metal +121 -0
  206. package/msl/directionalwipe.metal +120 -0
  207. package/msl/displacement.metal +129 -0
  208. package/msl/dissolve.metal +146 -0
  209. package/msl/doorway.metal +210 -0
  210. package/msl/fade.metal +95 -0
  211. package/msl/fadecolor.metal +104 -0
  212. package/msl/fadegrayscale.metal +123 -0
  213. package/msl/flyeye.metal +133 -0
  214. package/msl/fragment.metal +276 -0
  215. package/msl/heart.metal +134 -0
  216. package/msl/hexagonalize.metal +274 -0
  217. package/msl/kaleidoscope.metal +157 -0
  218. package/msl/luma.metal +113 -0
  219. package/msl/luminance_melt.metal +337 -0
  220. package/msl/morph.metal +131 -0
  221. package/msl/mosaic_transition.metal +137 -0
  222. package/msl/multiply_blend.metal +127 -0
  223. package/msl/old_tv_lost_signal.metal +172 -0
  224. package/msl/parametric_glitch.metal +152 -0
  225. package/msl/perlin.metal +206 -0
  226. package/msl/pinwheel.metal +112 -0
  227. package/msl/pixelize.metal +134 -0
  228. package/msl/polar_function.metal +116 -0
  229. package/msl/powerKaleido.metal +304 -0
  230. package/msl/randomNoisex.metal +115 -0
  231. package/msl/randomsquares.metal +118 -0
  232. package/msl/ripple.metal +113 -0
  233. package/msl/rotateTransition.metal +116 -0
  234. package/msl/rotate_scale_fade.metal +167 -0
  235. package/msl/scale-in.metal +111 -0
  236. package/msl/splitSlideInHorizontal.metal +147 -0
  237. package/msl/splitSlideInOutHorizontal.metal +138 -0
  238. package/msl/splitSlideInOutVertical.metal +138 -0
  239. package/msl/splitSlideInVertical.metal +144 -0
  240. package/msl/splitSlideOutHorizontal.metal +131 -0
  241. package/msl/splitSlideOutVertical.metal +131 -0
  242. package/msl/squareswire.metal +144 -0
  243. package/msl/squeeze.metal +133 -0
  244. package/msl/static_wipe.metal +147 -0
  245. package/msl/swap.metal +256 -0
  246. package/msl/tangentMotionBlur.metal +583 -0
  247. package/msl/undulatingBurnOut.metal +217 -0
  248. package/msl/wind.metal +131 -0
  249. package/msl/windowblinds.metal +107 -0
  250. package/msl/windowslice.metal +108 -0
  251. package/msl/wipeDown.metal +105 -0
  252. package/msl/wipeLeft.metal +105 -0
  253. package/msl/wipeRight.metal +105 -0
  254. package/msl/wipeUp.metal +105 -0
  255. package/msl/x_axis_translation.metal +110 -0
  256. package/msl/zoomInOut.metal +125 -0
  257. package/package.json +1 -1
  258. package/skills/gl-transitions/SKILL.md +46 -0
  259. package/skills/gl-transitions/references/catalog.md +224 -0
  260. package/skills/gl-transitions/references/skia.md +118 -0
  261. package/skills/gl-transitions/references/video.md +71 -0
  262. package/skills/gl-transitions/references/webgl.md +122 -0
  263. package/sksl/index.d.ts +4 -0
  264. package/sksl/index.js +1 -0
  265. package/wgsl/AdvancedMosaic.wgsl +108 -0
  266. package/wgsl/BlockDissolve.wgsl +78 -0
  267. package/wgsl/BookFlip.wgsl +157 -0
  268. package/wgsl/Bounce.wgsl +98 -0
  269. package/wgsl/BowTieHorizontal.wgsl +331 -0
  270. package/wgsl/BowTieVertical.wgsl +331 -0
  271. package/wgsl/BowTieWithParameter.wgsl +313 -0
  272. package/wgsl/Box.wgsl +176 -0
  273. package/wgsl/ButterflyWaveScrawler.wgsl +158 -0
  274. package/wgsl/CircleCrop.wgsl +88 -0
  275. package/wgsl/ColourDistance.wgsl +82 -0
  276. package/wgsl/CrazyParametricFun.wgsl +111 -0
  277. package/wgsl/CrossZoom.wgsl +219 -0
  278. package/wgsl/DefocusBlur.wgsl +269 -0
  279. package/wgsl/Directional.wgsl +79 -0
  280. package/wgsl/DirectionalScaled.wgsl +117 -0
  281. package/wgsl/DoomScreenTransition.wgsl +171 -0
  282. package/wgsl/Dreamy.wgsl +102 -0
  283. package/wgsl/DreamyZoom.wgsl +154 -0
  284. package/wgsl/Drop_Zone_Flicker.wgsl +513 -0
  285. package/wgsl/EdgeTransition.wgsl +216 -0
  286. package/wgsl/FilmBurn.wgsl +361 -0
  287. package/wgsl/Fold.wgsl +82 -0
  288. package/wgsl/GlitchDisplace.wgsl +327 -0
  289. package/wgsl/GlitchMemories.wgsl +118 -0
  290. package/wgsl/GridFlip.wgsl +250 -0
  291. package/wgsl/HSVfade.wgsl +131 -0
  292. package/wgsl/HorizontalClose.wgsl +72 -0
  293. package/wgsl/HorizontalOpen.wgsl +75 -0
  294. package/wgsl/InvertedPageCurl.wgsl +690 -0
  295. package/wgsl/LeftRight.wgsl +109 -0
  296. package/wgsl/LinearBlur.wgsl +131 -0
  297. package/wgsl/Mosaic.wgsl +174 -0
  298. package/wgsl/Overexposure.wgsl +102 -0
  299. package/wgsl/PolkaDotsCurtain.wgsl +83 -0
  300. package/wgsl/PuzzleRight.wgsl +230 -0
  301. package/wgsl/Radial.wgsl +74 -0
  302. package/wgsl/Rectangle.wgsl +100 -0
  303. package/wgsl/RectangleCrop.wgsl +98 -0
  304. package/wgsl/Revolve_Left.wgsl +314 -0
  305. package/wgsl/Rolls.wgsl +181 -0
  306. package/wgsl/RotateScaleVanish.wgsl +199 -0
  307. package/wgsl/SimpleFlip.wgsl +82 -0
  308. package/wgsl/SimpleZoom.wgsl +85 -0
  309. package/wgsl/SimpleZoomOut.wgsl +96 -0
  310. package/wgsl/Slides.wgsl +216 -0
  311. package/wgsl/StarWipe.wgsl +169 -0
  312. package/wgsl/StaticFade.wgsl +159 -0
  313. package/wgsl/StereoViewer.wgsl +625 -0
  314. package/wgsl/StripDatamoshGlitch.wgsl +755 -0
  315. package/wgsl/Swirl.wgsl +124 -0
  316. package/wgsl/TVStatic.wgsl +106 -0
  317. package/wgsl/TilesWave.wgsl +262 -0
  318. package/wgsl/TopBottom.wgsl +109 -0
  319. package/wgsl/VerticalClose.wgsl +72 -0
  320. package/wgsl/VerticalOpen.wgsl +75 -0
  321. package/wgsl/WaterDrop.wgsl +98 -0
  322. package/wgsl/ZoomInCircles.wgsl +138 -0
  323. package/wgsl/ZoomLeftWipe.wgsl +121 -0
  324. package/wgsl/ZoomRigthWipe.wgsl +121 -0
  325. package/wgsl/angular.wgsl +83 -0
  326. package/wgsl/burn.wgsl +74 -0
  327. package/wgsl/burn0.wgsl +198 -0
  328. package/wgsl/cannabisleaf.wgsl +92 -0
  329. package/wgsl/chessboard.wgsl +116 -0
  330. package/wgsl/circle.wgsl +87 -0
  331. package/wgsl/circleopen.wgsl +96 -0
  332. package/wgsl/colorphase.wgsl +77 -0
  333. package/wgsl/coord-from-in.wgsl +83 -0
  334. package/wgsl/crosshatch.wgsl +96 -0
  335. package/wgsl/crosswarp.wgsl +75 -0
  336. package/wgsl/cube.wgsl +217 -0
  337. package/wgsl/directional-easing.wgsl +83 -0
  338. package/wgsl/directionalwarp.wgsl +92 -0
  339. package/wgsl/directionalwipe.wgsl +91 -0
  340. package/wgsl/displacement.wgsl +96 -0
  341. package/wgsl/dissolve.wgsl +116 -0
  342. package/wgsl/doorway.wgsl +174 -0
  343. package/wgsl/fade.wgsl +67 -0
  344. package/wgsl/fadecolor.wgsl +75 -0
  345. package/wgsl/fadegrayscale.wgsl +93 -0
  346. package/wgsl/flyeye.wgsl +105 -0
  347. package/wgsl/fragment.wgsl +227 -0
  348. package/wgsl/heart.wgsl +103 -0
  349. package/wgsl/hexagonalize.wgsl +238 -0
  350. package/wgsl/kaleidoscope.wgsl +124 -0
  351. package/wgsl/luma.wgsl +80 -0
  352. package/wgsl/luminance_melt.wgsl +299 -0
  353. package/wgsl/morph.wgsl +103 -0
  354. package/wgsl/mosaic_transition.wgsl +107 -0
  355. package/wgsl/multiply_blend.wgsl +96 -0
  356. package/wgsl/old_tv_lost_signal.wgsl +142 -0
  357. package/wgsl/parametric_glitch.wgsl +124 -0
  358. package/wgsl/perlin.wgsl +174 -0
  359. package/wgsl/pinwheel.wgsl +84 -0
  360. package/wgsl/pixelize.wgsl +105 -0
  361. package/wgsl/polar_function.wgsl +88 -0
  362. package/wgsl/powerKaleido.wgsl +254 -0
  363. package/wgsl/randomNoisex.wgsl +85 -0
  364. package/wgsl/randomsquares.wgsl +87 -0
  365. package/wgsl/ripple.wgsl +85 -0
  366. package/wgsl/rotateTransition.wgsl +85 -0
  367. package/wgsl/rotate_scale_fade.wgsl +138 -0
  368. package/wgsl/scale-in.wgsl +79 -0
  369. package/wgsl/splitSlideInHorizontal.wgsl +118 -0
  370. package/wgsl/splitSlideInOutHorizontal.wgsl +109 -0
  371. package/wgsl/splitSlideInOutVertical.wgsl +109 -0
  372. package/wgsl/splitSlideInVertical.wgsl +115 -0
  373. package/wgsl/splitSlideOutHorizontal.wgsl +102 -0
  374. package/wgsl/splitSlideOutVertical.wgsl +102 -0
  375. package/wgsl/squareswire.wgsl +115 -0
  376. package/wgsl/squeeze.wgsl +105 -0
  377. package/wgsl/static_wipe.wgsl +117 -0
  378. package/wgsl/swap.wgsl +218 -0
  379. package/wgsl/tangentMotionBlur.wgsl +503 -0
  380. package/wgsl/undulatingBurnOut.wgsl +181 -0
  381. package/wgsl/wind.wgsl +101 -0
  382. package/wgsl/windowblinds.wgsl +79 -0
  383. package/wgsl/windowslice.wgsl +80 -0
  384. package/wgsl/wipeDown.wgsl +77 -0
  385. package/wgsl/wipeLeft.wgsl +77 -0
  386. package/wgsl/wipeRight.wgsl +77 -0
  387. package/wgsl/wipeUp.wgsl +77 -0
  388. package/wgsl/x_axis_translation.wgsl +82 -0
  389. package/wgsl/zoomInOut.wgsl +94 -0
@@ -0,0 +1,299 @@
1
+ // luminance_melt — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/luminance_melt.glsl
2
+ // Author: 0gust1
3
+ // License: MIT
4
+ // Description: The outgoing image melts away in noisy vertical streaks, depending on its brightness
5
+ // Bindings and uniform layout: see the gl-transitions package README
6
+
7
+ struct Uniforms {
8
+ progress: f32,
9
+ ratio: f32,
10
+ direction: i32,
11
+ l_threshold: f32,
12
+ above: i32,
13
+ }
14
+
15
+ @group(0) @binding(2)
16
+ var _from: texture_2d<f32>;
17
+ @group(0) @binding(1)
18
+ var _sampler: sampler;
19
+ @group(0) @binding(3)
20
+ var _to: texture_2d<f32>;
21
+ @group(0) @binding(0)
22
+ var<uniform> uniforms: Uniforms;
23
+ var<private> _fragColor: vec4<f32>;
24
+ var<private> _uv_1: vec2<f32>;
25
+
26
+ fn luminance(color: ptr<function, vec4<f32>>) -> f32 {
27
+ let _e44 = (*color)[0u];
28
+ let _e47 = (*color)[1u];
29
+ let _e51 = (*color)[2u];
30
+ return (((_e44 * 0.299f) + (_e47 * 0.587f)) + (_e51 * 0.114f));
31
+ }
32
+
33
+ fn rand(co: ptr<function, vec2<f32>>) -> f32 {
34
+ let _e43 = (*co);
35
+ return fract((sin(dot(_e43, vec2<f32>(12.9898f, 78.233f))) * 43758.547f));
36
+ }
37
+
38
+ fn mod289_u0028_vf3_u003b(x: ptr<function, vec3<f32>>) -> vec3<f32> {
39
+ let _e43 = (*x);
40
+ let _e44 = (*x);
41
+ return (_e43 - (floor((_e44 * 0.0034602077f)) * 289f));
42
+ }
43
+
44
+ fn permute(x_1: ptr<function, vec3<f32>>) -> vec3<f32> {
45
+ var param: vec3<f32>;
46
+
47
+ let _e44 = (*x_1);
48
+ let _e48 = (*x_1);
49
+ param = (((_e44 * 34f) + vec3(1f)) * _e48);
50
+ let _e50 = mod289_u0028_vf3_u003b((&param));
51
+ return _e50;
52
+ }
53
+
54
+ fn mod289_u0028_vf2_u003b(x_2: ptr<function, vec2<f32>>) -> vec2<f32> {
55
+ let _e43 = (*x_2);
56
+ let _e44 = (*x_2);
57
+ return (_e43 - (floor((_e44 * 0.0034602077f)) * 289f));
58
+ }
59
+
60
+ fn snoise(v: ptr<function, vec2<f32>>) -> f32 {
61
+ var i: vec2<f32>;
62
+ var x0_: vec2<f32>;
63
+ var i1_: vec2<f32>;
64
+ var x12_: vec4<f32>;
65
+ var param_1: vec2<f32>;
66
+ var p: vec3<f32>;
67
+ var param_2: vec3<f32>;
68
+ var param_3: vec3<f32>;
69
+ var m: vec3<f32>;
70
+ var x_3: vec3<f32>;
71
+ var h: vec3<f32>;
72
+ var ox: vec3<f32>;
73
+ var a0_: vec3<f32>;
74
+ var g: vec3<f32>;
75
+
76
+ let _e57 = (*v);
77
+ let _e58 = (*v);
78
+ i = floor((_e57 + vec2(dot(_e58, vec2<f32>(0.36602542f, 0.36602542f)))));
79
+ let _e63 = (*v);
80
+ let _e64 = i;
81
+ let _e66 = i;
82
+ x0_ = ((_e63 - _e64) + vec2(dot(_e66, vec2<f32>(0.21132487f, 0.21132487f))));
83
+ let _e71 = x0_[0u];
84
+ let _e73 = x0_[1u];
85
+ i1_ = select(vec2<f32>(0f, 1f), vec2<f32>(1f, 0f), vec2((_e71 > _e73)));
86
+ let _e77 = x0_;
87
+ x12_ = (_e77.xyxy + vec4<f32>(0.21132487f, 0.21132487f, -0.57735026f, -0.57735026f));
88
+ let _e80 = i1_;
89
+ let _e81 = x12_;
90
+ let _e83 = (_e81.xy - _e80);
91
+ x12_[0u] = _e83.x;
92
+ x12_[1u] = _e83.y;
93
+ let _e88 = i;
94
+ param_1 = _e88;
95
+ let _e89 = mod289_u0028_vf2_u003b((&param_1));
96
+ i = _e89;
97
+ let _e91 = i[1u];
98
+ let _e93 = i1_[1u];
99
+ param_2 = (vec3(_e91) + vec3<f32>(0f, _e93, 1f));
100
+ let _e97 = permute((&param_2));
101
+ let _e99 = i[0u];
102
+ let _e103 = i1_[0u];
103
+ param_3 = ((_e97 + vec3(_e99)) + vec3<f32>(0f, _e103, 1f));
104
+ let _e106 = permute((&param_3));
105
+ p = _e106;
106
+ let _e107 = x0_;
107
+ let _e108 = x0_;
108
+ let _e110 = x12_;
109
+ let _e112 = x12_;
110
+ let _e115 = x12_;
111
+ let _e117 = x12_;
112
+ m = max((vec3(0.5f) - vec3<f32>(dot(_e107, _e108), dot(_e110.xy, _e112.xy), dot(_e115.zw, _e117.zw))), vec3(0f));
113
+ let _e125 = m;
114
+ let _e126 = m;
115
+ m = (_e125 * _e126);
116
+ let _e128 = m;
117
+ let _e129 = m;
118
+ m = (_e128 * _e129);
119
+ let _e131 = p;
120
+ x_3 = ((fract((_e131 * vec3<f32>(0.024390243f, 0.024390243f, 0.024390243f))) * 2f) - vec3(1f));
121
+ let _e137 = x_3;
122
+ h = (abs(_e137) - vec3(0.5f));
123
+ let _e141 = x_3;
124
+ ox = floor((_e141 + vec3(0.5f)));
125
+ let _e145 = x_3;
126
+ let _e146 = ox;
127
+ a0_ = (_e145 - _e146);
128
+ let _e148 = a0_;
129
+ let _e149 = a0_;
130
+ let _e151 = h;
131
+ let _e152 = h;
132
+ let _e158 = m;
133
+ m = (_e158 * (vec3(1.7928429f) - (((_e148 * _e149) + (_e151 * _e152)) * 0.85373473f)));
134
+ let _e161 = a0_[0u];
135
+ let _e163 = x0_[0u];
136
+ let _e166 = h[0u];
137
+ let _e168 = x0_[1u];
138
+ g[0u] = ((_e161 * _e163) + (_e166 * _e168));
139
+ let _e172 = a0_;
140
+ let _e174 = x12_;
141
+ let _e177 = h;
142
+ let _e179 = x12_;
143
+ let _e182 = ((_e172.yz * _e174.xz) + (_e177.yz * _e179.yw));
144
+ g[1u] = _e182.x;
145
+ g[2u] = _e182.y;
146
+ let _e187 = m;
147
+ let _e188 = g;
148
+ return (130f * dot(_e187, _e188));
149
+ }
150
+
151
+ fn getToColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
152
+ let _e44 = (*uv)[0u];
153
+ let _e46 = (*uv)[1u];
154
+ let _e49 = textureSampleLevel(_to, _sampler, vec2<f32>(_e44, (1f - _e46)), 0f);
155
+ return _e49;
156
+ }
157
+
158
+ fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
159
+ let _e44 = (*uv_1)[0u];
160
+ let _e46 = (*uv_1)[1u];
161
+ let _e49 = textureSampleLevel(_from, _sampler, vec2<f32>(_e44, (1f - _e46)), 0f);
162
+ return _e49;
163
+ }
164
+
165
+ fn transition(uv_2: ptr<function, vec2<f32>>) -> vec4<f32> {
166
+ var center: vec2<f32>;
167
+ var p_1: vec2<f32>;
168
+ var param_4: vec2<f32>;
169
+ var param_5: vec2<f32>;
170
+ var x_4: f32;
171
+ var dist: f32;
172
+ var param_6: vec2<f32>;
173
+ var r: f32;
174
+ var param_7: vec2<f32>;
175
+ var m_1: f32;
176
+ var param_8: vec2<f32>;
177
+ var param_9: vec4<f32>;
178
+ var local: f32;
179
+ var param_10: vec2<f32>;
180
+ var param_11: vec4<f32>;
181
+ var local_1: f32;
182
+ var param_12: vec2<f32>;
183
+ var param_13: vec2<f32>;
184
+ var phi_392_: bool;
185
+ var phi_420_: bool;
186
+
187
+ let _e62 = uniforms.direction;
188
+ center = vec2<f32>(1f, select(0f, 1f, (_e62 != 0i)));
189
+ let _e66 = (*uv_2);
190
+ p_1 = (_e66 / vec2<f32>(1f, 1f));
191
+ let _e69 = uniforms.progress;
192
+ if (_e69 == 0f) {
193
+ let _e71 = p_1;
194
+ param_4 = _e71;
195
+ let _e72 = getFromColor((&param_4));
196
+ return _e72;
197
+ } else {
198
+ let _e74 = uniforms.progress;
199
+ if (_e74 == 1f) {
200
+ let _e76 = p_1;
201
+ param_5 = _e76;
202
+ let _e77 = getToColor((&param_5));
203
+ return _e77;
204
+ } else {
205
+ let _e79 = uniforms.progress;
206
+ x_4 = _e79;
207
+ let _e80 = center;
208
+ let _e81 = p_1;
209
+ let _e84 = uniforms.progress;
210
+ let _e86 = p_1[0u];
211
+ param_6 = vec2<f32>(_e86, 0f);
212
+ let _e88 = snoise((&param_6));
213
+ dist = (distance(_e80, _e81) - (_e84 * exp(_e88)));
214
+ let _e92 = x_4;
215
+ let _e94 = p_1[0u];
216
+ param_7 = vec2<f32>(_e94, 0.1f);
217
+ let _e96 = rand((&param_7));
218
+ r = (_e92 - _e96);
219
+ let _e99 = uniforms.above;
220
+ if (_e99 != 0i) {
221
+ let _e101 = dist;
222
+ let _e102 = r;
223
+ let _e103 = (_e101 <= _e102);
224
+ phi_392_ = _e103;
225
+ if _e103 {
226
+ let _e104 = p_1;
227
+ param_8 = _e104;
228
+ let _e105 = getFromColor((&param_8));
229
+ param_9 = _e105;
230
+ let _e106 = luminance((&param_9));
231
+ let _e108 = uniforms.l_threshold;
232
+ phi_392_ = (_e106 > _e108);
233
+ }
234
+ let _e111 = phi_392_;
235
+ if _e111 {
236
+ local = 1f;
237
+ } else {
238
+ let _e113 = uniforms.progress;
239
+ let _e115 = uniforms.progress;
240
+ let _e118 = uniforms.progress;
241
+ local = ((_e113 * _e115) * _e118);
242
+ }
243
+ let _e120 = local;
244
+ m_1 = _e120;
245
+ } else {
246
+ let _e121 = dist;
247
+ let _e122 = r;
248
+ let _e123 = (_e121 <= _e122);
249
+ phi_420_ = _e123;
250
+ if _e123 {
251
+ let _e124 = p_1;
252
+ param_10 = _e124;
253
+ let _e125 = getFromColor((&param_10));
254
+ param_11 = _e125;
255
+ let _e126 = luminance((&param_11));
256
+ let _e128 = uniforms.l_threshold;
257
+ phi_420_ = (_e126 < _e128);
258
+ }
259
+ let _e131 = phi_420_;
260
+ if _e131 {
261
+ local_1 = 1f;
262
+ } else {
263
+ let _e133 = uniforms.progress;
264
+ let _e135 = uniforms.progress;
265
+ let _e138 = uniforms.progress;
266
+ local_1 = ((_e133 * _e135) * _e138);
267
+ }
268
+ let _e140 = local_1;
269
+ m_1 = _e140;
270
+ }
271
+ let _e141 = p_1;
272
+ param_12 = _e141;
273
+ let _e142 = getFromColor((&param_12));
274
+ let _e143 = p_1;
275
+ param_13 = _e143;
276
+ let _e144 = getToColor((&param_13));
277
+ let _e145 = m_1;
278
+ return mix(_e142, _e144, vec4(_e145));
279
+ }
280
+ }
281
+ }
282
+
283
+ fn main_1() {
284
+ var param_14: vec2<f32>;
285
+
286
+ let _e43 = _uv_1;
287
+ param_14 = _e43;
288
+ let _e44 = transition((&param_14));
289
+ _fragColor = _e44;
290
+ return;
291
+ }
292
+
293
+ @fragment
294
+ fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
295
+ _uv_1 = _uv;
296
+ main_1();
297
+ let _e3 = _fragColor;
298
+ return _e3;
299
+ }
@@ -0,0 +1,103 @@
1
+ // morph — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/morph.glsl
2
+ // Author: paniq
3
+ // License: MIT
4
+ // Description: A crossfade in which each image is displaced by the other's colors, like a morph
5
+ // Bindings and uniform layout: see the gl-transitions package README
6
+
7
+ struct Uniforms {
8
+ progress: f32,
9
+ ratio: f32,
10
+ strength: f32,
11
+ }
12
+
13
+ @group(0) @binding(2)
14
+ var _from: texture_2d<f32>;
15
+ @group(0) @binding(1)
16
+ var _sampler: sampler;
17
+ @group(0) @binding(3)
18
+ var _to: texture_2d<f32>;
19
+ @group(0) @binding(0)
20
+ var<uniform> uniforms: Uniforms;
21
+ var<private> _fragColor: vec4<f32>;
22
+ var<private> _uv_1: vec2<f32>;
23
+
24
+ fn getToColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
25
+ let _e17 = (*uv)[0u];
26
+ let _e19 = (*uv)[1u];
27
+ let _e22 = textureSampleLevel(_to, _sampler, vec2<f32>(_e17, (1f - _e19)), 0f);
28
+ return _e22;
29
+ }
30
+
31
+ fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
32
+ let _e17 = (*uv_1)[0u];
33
+ let _e19 = (*uv_1)[1u];
34
+ let _e22 = textureSampleLevel(_from, _sampler, vec2<f32>(_e17, (1f - _e19)), 0f);
35
+ return _e22;
36
+ }
37
+
38
+ fn transition(p: ptr<function, vec2<f32>>) -> vec4<f32> {
39
+ var ca: vec4<f32>;
40
+ var param: vec2<f32>;
41
+ var cb: vec4<f32>;
42
+ var param_1: vec2<f32>;
43
+ var oa: vec2<f32>;
44
+ var ob: vec2<f32>;
45
+ var oc: vec2<f32>;
46
+ var w0_: f32;
47
+ var w1_: f32;
48
+ var param_2: vec2<f32>;
49
+ var param_3: vec2<f32>;
50
+
51
+ let _e27 = (*p);
52
+ param = _e27;
53
+ let _e28 = getFromColor((&param));
54
+ ca = _e28;
55
+ let _e29 = (*p);
56
+ param_1 = _e29;
57
+ let _e30 = getToColor((&param_1));
58
+ cb = _e30;
59
+ let _e31 = ca;
60
+ let _e34 = ca[2u];
61
+ oa = ((((_e31.xy + vec2(_e34)) * 0.5f) * 2f) - vec2(1f));
62
+ let _e41 = cb;
63
+ let _e44 = cb[2u];
64
+ ob = ((((_e41.xy + vec2(_e44)) * 0.5f) * 2f) - vec2(1f));
65
+ let _e51 = oa;
66
+ let _e52 = ob;
67
+ let _e56 = uniforms.strength;
68
+ oc = (mix(_e51, _e52, vec2(0.5f)) * _e56);
69
+ let _e59 = uniforms.progress;
70
+ w0_ = _e59;
71
+ let _e60 = w0_;
72
+ w1_ = (1f - _e60);
73
+ let _e62 = (*p);
74
+ let _e63 = oc;
75
+ let _e64 = w0_;
76
+ param_2 = (_e62 + (_e63 * _e64));
77
+ let _e67 = getFromColor((&param_2));
78
+ let _e68 = (*p);
79
+ let _e69 = oc;
80
+ let _e70 = w1_;
81
+ param_3 = (_e68 - (_e69 * _e70));
82
+ let _e73 = getToColor((&param_3));
83
+ let _e75 = uniforms.progress;
84
+ return mix(_e67, _e73, vec4(_e75));
85
+ }
86
+
87
+ fn main_1() {
88
+ var param_4: vec2<f32>;
89
+
90
+ let _e16 = _uv_1;
91
+ param_4 = _e16;
92
+ let _e17 = transition((&param_4));
93
+ _fragColor = _e17;
94
+ return;
95
+ }
96
+
97
+ @fragment
98
+ fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
99
+ _uv_1 = _uv;
100
+ main_1();
101
+ let _e3 = _fragColor;
102
+ return _e3;
103
+ }
@@ -0,0 +1,107 @@
1
+ // mosaic_transition — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/mosaic_transition.glsl
2
+ // Author: YueDev
3
+ // License: MIT
4
+ // Description: Both images break into mosaic blocks that blend, then sharpen into the incoming image
5
+ // Bindings and uniform layout: see the gl-transitions package README
6
+
7
+ struct Uniforms {
8
+ progress: f32,
9
+ ratio: f32,
10
+ mosaicNum: f32,
11
+ }
12
+
13
+ @group(0) @binding(2)
14
+ var _from: texture_2d<f32>;
15
+ @group(0) @binding(1)
16
+ var _sampler: sampler;
17
+ @group(0) @binding(3)
18
+ var _to: texture_2d<f32>;
19
+ @group(0) @binding(0)
20
+ var<uniform> uniforms: Uniforms;
21
+ var<private> _fragColor: vec4<f32>;
22
+ var<private> _uv_1: vec2<f32>;
23
+
24
+ fn getToColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
25
+ let _e16 = (*uv)[0u];
26
+ let _e18 = (*uv)[1u];
27
+ let _e21 = textureSampleLevel(_to, _sampler, vec2<f32>(_e16, (1f - _e18)), 0f);
28
+ return _e21;
29
+ }
30
+
31
+ fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
32
+ let _e16 = (*uv_1)[0u];
33
+ let _e18 = (*uv_1)[1u];
34
+ let _e21 = textureSampleLevel(_from, _sampler, vec2<f32>(_e16, (1f - _e18)), 0f);
35
+ return _e21;
36
+ }
37
+
38
+ fn getMosaicUV(uv_2: ptr<function, vec2<f32>>) -> vec2<f32> {
39
+ var mosaicWidth: f32;
40
+ var mX: f32;
41
+ var mY: f32;
42
+
43
+ let _e19 = uniforms.mosaicNum;
44
+ let _e22 = uniforms.progress;
45
+ let _e24 = uniforms.progress;
46
+ mosaicWidth = ((2f / _e19) * min(_e22, (1f - _e24)));
47
+ let _e29 = (*uv_2)[0u];
48
+ let _e30 = mosaicWidth;
49
+ mX = (floor((_e29 / _e30)) + 0.5f);
50
+ let _e35 = (*uv_2)[1u];
51
+ let _e36 = mosaicWidth;
52
+ mY = (floor((_e35 / _e36)) + 0.5f);
53
+ let _e40 = mX;
54
+ let _e41 = mosaicWidth;
55
+ let _e43 = mY;
56
+ let _e44 = mosaicWidth;
57
+ return vec2<f32>((_e40 * _e41), (_e43 * _e44));
58
+ }
59
+
60
+ fn transition(uv_3: ptr<function, vec2<f32>>) -> vec4<f32> {
61
+ var mosaicUV: vec2<f32>;
62
+ var local: vec2<f32>;
63
+ var param: vec2<f32>;
64
+ var param_1: vec2<f32>;
65
+ var param_2: vec2<f32>;
66
+
67
+ let _e21 = uniforms.progress;
68
+ let _e23 = uniforms.progress;
69
+ if (min(_e21, (1f - _e23)) == 0f) {
70
+ let _e27 = (*uv_3);
71
+ local = _e27;
72
+ } else {
73
+ let _e28 = (*uv_3);
74
+ param = _e28;
75
+ let _e29 = getMosaicUV((&param));
76
+ local = _e29;
77
+ }
78
+ let _e30 = local;
79
+ mosaicUV = _e30;
80
+ let _e31 = mosaicUV;
81
+ param_1 = _e31;
82
+ let _e32 = getFromColor((&param_1));
83
+ let _e33 = mosaicUV;
84
+ param_2 = _e33;
85
+ let _e34 = getToColor((&param_2));
86
+ let _e36 = uniforms.progress;
87
+ let _e38 = uniforms.progress;
88
+ return mix(_e32, _e34, vec4((_e36 * _e38)));
89
+ }
90
+
91
+ fn main_1() {
92
+ var param_3: vec2<f32>;
93
+
94
+ let _e15 = _uv_1;
95
+ param_3 = _e15;
96
+ let _e16 = transition((&param_3));
97
+ _fragColor = _e16;
98
+ return;
99
+ }
100
+
101
+ @fragment
102
+ fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
103
+ _uv_1 = _uv;
104
+ main_1();
105
+ let _e3 = _fragColor;
106
+ return _e3;
107
+ }
@@ -0,0 +1,96 @@
1
+ // multiply_blend — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/multiply_blend.glsl
2
+ // Author: Fernando Kuteken
3
+ // License: MIT
4
+ // Description: A crossfade through the multiplied blend of both images
5
+ // Bindings and uniform layout: see the gl-transitions package README
6
+
7
+ struct Uniforms {
8
+ progress: f32,
9
+ ratio: f32,
10
+ }
11
+
12
+ @group(0) @binding(2)
13
+ var _from: texture_2d<f32>;
14
+ @group(0) @binding(1)
15
+ var _sampler: sampler;
16
+ @group(0) @binding(3)
17
+ var _to: texture_2d<f32>;
18
+ @group(0) @binding(0)
19
+ var<uniform> uniforms: Uniforms;
20
+ var<private> _fragColor: vec4<f32>;
21
+ var<private> _uv_1: vec2<f32>;
22
+
23
+ fn blend(a: ptr<function, vec4<f32>>, b: ptr<function, vec4<f32>>) -> vec4<f32> {
24
+ let _e15 = (*a);
25
+ let _e16 = (*b);
26
+ return (_e15 * _e16);
27
+ }
28
+
29
+ fn getToColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
30
+ let _e15 = (*uv)[0u];
31
+ let _e17 = (*uv)[1u];
32
+ let _e20 = textureSampleLevel(_to, _sampler, vec2<f32>(_e15, (1f - _e17)), 0f);
33
+ return _e20;
34
+ }
35
+
36
+ fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
37
+ let _e15 = (*uv_1)[0u];
38
+ let _e17 = (*uv_1)[1u];
39
+ let _e20 = textureSampleLevel(_from, _sampler, vec2<f32>(_e15, (1f - _e17)), 0f);
40
+ return _e20;
41
+ }
42
+
43
+ fn transition(uv_2: ptr<function, vec2<f32>>) -> vec4<f32> {
44
+ var blended: vec4<f32>;
45
+ var param: vec2<f32>;
46
+ var param_1: vec2<f32>;
47
+ var param_2: vec4<f32>;
48
+ var param_3: vec4<f32>;
49
+ var param_4: vec2<f32>;
50
+ var param_5: vec2<f32>;
51
+
52
+ let _e21 = (*uv_2);
53
+ param = _e21;
54
+ let _e22 = getFromColor((&param));
55
+ let _e23 = (*uv_2);
56
+ param_1 = _e23;
57
+ let _e24 = getToColor((&param_1));
58
+ param_2 = _e22;
59
+ param_3 = _e24;
60
+ let _e25 = blend((&param_2), (&param_3));
61
+ blended = _e25;
62
+ let _e27 = uniforms.progress;
63
+ if (_e27 < 0.5f) {
64
+ let _e29 = (*uv_2);
65
+ param_4 = _e29;
66
+ let _e30 = getFromColor((&param_4));
67
+ let _e31 = blended;
68
+ let _e33 = uniforms.progress;
69
+ return mix(_e30, _e31, vec4((2f * _e33)));
70
+ } else {
71
+ let _e37 = blended;
72
+ let _e38 = (*uv_2);
73
+ param_5 = _e38;
74
+ let _e39 = getToColor((&param_5));
75
+ let _e41 = uniforms.progress;
76
+ return mix(_e37, _e39, vec4(((2f * _e41) - 1f)));
77
+ }
78
+ }
79
+
80
+ fn main_1() {
81
+ var param_6: vec2<f32>;
82
+
83
+ let _e14 = _uv_1;
84
+ param_6 = _e14;
85
+ let _e15 = transition((&param_6));
86
+ _fragColor = _e15;
87
+ return;
88
+ }
89
+
90
+ @fragment
91
+ fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
92
+ _uv_1 = _uv;
93
+ main_1();
94
+ let _e3 = _fragColor;
95
+ return _e3;
96
+ }