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,93 @@
1
+ // fadegrayscale — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/fadegrayscale.glsl
2
+ // Author: gre
3
+ // License: MIT
4
+ // Description: A crossfade through grayscale
5
+ // Bindings and uniform layout: see the gl-transitions package README
6
+
7
+ struct Uniforms {
8
+ progress: f32,
9
+ ratio: f32,
10
+ intensity: 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 grayscale(color: ptr<function, vec3<f32>>) -> vec3<f32> {
25
+ let _e18 = (*color)[0u];
26
+ let _e21 = (*color)[1u];
27
+ let _e25 = (*color)[2u];
28
+ return vec3((((0.2126f * _e18) + (0.7152f * _e21)) + (0.0722f * _e25)));
29
+ }
30
+
31
+ fn getToColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
32
+ let _e18 = (*uv)[0u];
33
+ let _e20 = (*uv)[1u];
34
+ let _e23 = textureSampleLevel(_to, _sampler, vec2<f32>(_e18, (1f - _e20)), 0f);
35
+ return _e23;
36
+ }
37
+
38
+ fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
39
+ let _e18 = (*uv_1)[0u];
40
+ let _e20 = (*uv_1)[1u];
41
+ let _e23 = textureSampleLevel(_from, _sampler, vec2<f32>(_e18, (1f - _e20)), 0f);
42
+ return _e23;
43
+ }
44
+
45
+ fn transition(uv_2: ptr<function, vec2<f32>>) -> vec4<f32> {
46
+ var fc: vec4<f32>;
47
+ var param: vec2<f32>;
48
+ var tc: vec4<f32>;
49
+ var param_1: vec2<f32>;
50
+ var param_2: vec3<f32>;
51
+ var param_3: vec3<f32>;
52
+
53
+ let _e23 = (*uv_2);
54
+ param = _e23;
55
+ let _e24 = getFromColor((&param));
56
+ fc = _e24;
57
+ let _e25 = (*uv_2);
58
+ param_1 = _e25;
59
+ let _e26 = getToColor((&param_1));
60
+ tc = _e26;
61
+ let _e27 = fc;
62
+ param_2 = _e27.xyz;
63
+ let _e29 = grayscale((&param_2));
64
+ let _e34 = fc;
65
+ let _e36 = uniforms.intensity;
66
+ let _e39 = uniforms.progress;
67
+ let _e43 = tc;
68
+ param_3 = _e43.xyz;
69
+ let _e45 = grayscale((&param_3));
70
+ let _e50 = tc;
71
+ let _e52 = uniforms.intensity;
72
+ let _e54 = uniforms.progress;
73
+ let _e59 = uniforms.progress;
74
+ return mix(mix(vec4<f32>(_e29.x, _e29.y, _e29.z, 1f), _e34, vec4(smoothstep((1f - _e36), 0f, _e39))), mix(vec4<f32>(_e45.x, _e45.y, _e45.z, 1f), _e50, vec4(smoothstep(_e52, 1f, _e54))), vec4(_e59));
75
+ }
76
+
77
+ fn main_1() {
78
+ var param_4: vec2<f32>;
79
+
80
+ let _e17 = _uv_1;
81
+ param_4 = _e17;
82
+ let _e18 = transition((&param_4));
83
+ _fragColor = _e18;
84
+ return;
85
+ }
86
+
87
+ @fragment
88
+ fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
89
+ _uv_1 = _uv;
90
+ main_1();
91
+ let _e3 = _fragColor;
92
+ return _e3;
93
+ }
@@ -0,0 +1,105 @@
1
+ // flyeye — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/flyeye.glsl
2
+ // Author: gre
3
+ // License: MIT
4
+ // Description: The image breaks into a fly's-eye grid of lenses with color separation
5
+ // Bindings and uniform layout: see the gl-transitions package README
6
+
7
+ struct Uniforms {
8
+ progress: f32,
9
+ ratio: f32,
10
+ size: f32,
11
+ zoom: f32,
12
+ colorSeparation: f32,
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 getFromColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
27
+ let _e17 = (*uv)[0u];
28
+ let _e19 = (*uv)[1u];
29
+ let _e22 = textureSampleLevel(_from, _sampler, vec2<f32>(_e17, (1f - _e19)), 0f);
30
+ return _e22;
31
+ }
32
+
33
+ fn getToColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
34
+ let _e17 = (*uv_1)[0u];
35
+ let _e19 = (*uv_1)[1u];
36
+ let _e22 = textureSampleLevel(_to, _sampler, vec2<f32>(_e17, (1f - _e19)), 0f);
37
+ return _e22;
38
+ }
39
+
40
+ fn transition(p: ptr<function, vec2<f32>>) -> vec4<f32> {
41
+ var inv: f32;
42
+ var disp: vec2<f32>;
43
+ var texTo: vec4<f32>;
44
+ var param: vec2<f32>;
45
+ var texFrom: vec4<f32>;
46
+ var param_1: vec2<f32>;
47
+ var param_2: vec2<f32>;
48
+ var param_3: vec2<f32>;
49
+
50
+ let _e25 = uniforms.progress;
51
+ inv = (1f - _e25);
52
+ let _e28 = uniforms.size;
53
+ let _e30 = uniforms.zoom;
54
+ let _e32 = (*p)[0u];
55
+ let _e36 = uniforms.zoom;
56
+ let _e38 = (*p)[1u];
57
+ disp = (vec2<f32>(cos((_e30 * _e32)), sin((_e36 * _e38))) * _e28);
58
+ let _e43 = (*p);
59
+ let _e44 = inv;
60
+ let _e45 = disp;
61
+ param = (_e43 + (_e45 * _e44));
62
+ let _e48 = getToColor((&param));
63
+ texTo = _e48;
64
+ let _e49 = (*p);
65
+ let _e51 = uniforms.progress;
66
+ let _e52 = disp;
67
+ let _e55 = uniforms.colorSeparation;
68
+ param_1 = (_e49 + ((_e52 * _e51) * (1f - _e55)));
69
+ let _e59 = getFromColor((&param_1));
70
+ let _e61 = (*p);
71
+ let _e63 = uniforms.progress;
72
+ let _e64 = disp;
73
+ param_2 = (_e61 + (_e64 * _e63));
74
+ let _e67 = getFromColor((&param_2));
75
+ let _e69 = (*p);
76
+ let _e71 = uniforms.progress;
77
+ let _e72 = disp;
78
+ let _e75 = uniforms.colorSeparation;
79
+ param_3 = (_e69 + ((_e72 * _e71) * (1f + _e75)));
80
+ let _e79 = getFromColor((&param_3));
81
+ texFrom = vec4<f32>(_e59.x, _e67.y, _e79.z, 1f);
82
+ let _e82 = texTo;
83
+ let _e84 = uniforms.progress;
84
+ let _e86 = texFrom;
85
+ let _e87 = inv;
86
+ return ((_e82 * _e84) + (_e86 * _e87));
87
+ }
88
+
89
+ fn main_1() {
90
+ var param_4: vec2<f32>;
91
+
92
+ let _e16 = _uv_1;
93
+ param_4 = _e16;
94
+ let _e17 = transition((&param_4));
95
+ _fragColor = _e17;
96
+ return;
97
+ }
98
+
99
+ @fragment
100
+ fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
101
+ _uv_1 = _uv;
102
+ main_1();
103
+ let _e3 = _fragColor;
104
+ return _e3;
105
+ }
@@ -0,0 +1,227 @@
1
+ // fragment — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/fragment.glsl
2
+ // Author: lbl
3
+ // License: MIT
4
+ // Description: The outgoing image shatters into fragments that fly away
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 random(par: ptr<function, vec2<f32>>) -> f32 {
24
+ let _e25 = (*par);
25
+ return fract((sin(dot(_e25, vec2<f32>(12.9898f, 78.233f))) * 43758.547f));
26
+ }
27
+
28
+ fn random2(par_1: ptr<function, vec2<f32>>) -> vec2<f32> {
29
+ var rand: f32;
30
+ var param: vec2<f32>;
31
+ var param_1: vec2<f32>;
32
+
33
+ let _e28 = (*par_1);
34
+ param = _e28;
35
+ let _e29 = random((&param));
36
+ rand = _e29;
37
+ let _e30 = rand;
38
+ let _e31 = (*par_1);
39
+ let _e32 = rand;
40
+ param_1 = (_e31 + vec2(_e32));
41
+ let _e35 = random((&param_1));
42
+ return vec2<f32>(_e30, _e35);
43
+ }
44
+
45
+ fn getToColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
46
+ let _e26 = (*uv)[0u];
47
+ let _e28 = (*uv)[1u];
48
+ let _e31 = textureSampleLevel(_to, _sampler, vec2<f32>(_e26, (1f - _e28)), 0f);
49
+ return _e31;
50
+ }
51
+
52
+ fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
53
+ let _e26 = (*uv_1)[0u];
54
+ let _e28 = (*uv_1)[1u];
55
+ let _e31 = textureSampleLevel(_from, _sampler, vec2<f32>(_e26, (1f - _e28)), 0f);
56
+ return _e31;
57
+ }
58
+
59
+ fn transition(uv_2: ptr<function, vec2<f32>>) -> vec4<f32> {
60
+ var param_2: vec2<f32>;
61
+ var param_3: vec2<f32>;
62
+ var time: f32;
63
+ var i: i32;
64
+ var point: array<vec2<f32>, 10>;
65
+ var param_4: vec2<f32>;
66
+ var col: vec4<f32>;
67
+ var param_5: vec2<f32>;
68
+ var i_1: i32;
69
+ var dir: vec2<f32>;
70
+ var param_6: vec2<f32>;
71
+ var v: f32;
72
+ var param_7: vec2<f32>;
73
+ var ofst: vec2<f32>;
74
+ var U: vec2<f32>;
75
+ var dist_i: f32;
76
+ var closest: bool;
77
+ var j: i32;
78
+ var param_8: vec2<f32>;
79
+ var phi_199_: bool;
80
+ var phi_206_: bool;
81
+ var phi_213_: bool;
82
+
83
+ let _e45 = uniforms.progress;
84
+ if (_e45 <= 0f) {
85
+ let _e47 = (*uv_2);
86
+ param_2 = _e47;
87
+ let _e48 = getFromColor((&param_2));
88
+ return _e48;
89
+ }
90
+ let _e50 = uniforms.progress;
91
+ if (_e50 >= 1f) {
92
+ let _e52 = (*uv_2);
93
+ param_3 = _e52;
94
+ let _e53 = getToColor((&param_3));
95
+ return _e53;
96
+ }
97
+ let _e55 = uniforms.progress;
98
+ time = (_e55 * 8f);
99
+ i = 0i;
100
+ loop {
101
+ let _e57 = i;
102
+ if (_e57 < 10i) {
103
+ let _e59 = i;
104
+ let _e60 = i;
105
+ param_4 = vec2(f32(_e60));
106
+ let _e63 = random2((&param_4));
107
+ point[_e59] = _e63;
108
+ continue;
109
+ } else {
110
+ break;
111
+ }
112
+ continuing {
113
+ let _e65 = i;
114
+ i = (_e65 + 1i);
115
+ }
116
+ }
117
+ let _e67 = (*uv_2);
118
+ param_5 = _e67;
119
+ let _e68 = getToColor((&param_5));
120
+ col = _e68;
121
+ i_1 = 0i;
122
+ loop {
123
+ let _e69 = i_1;
124
+ if (_e69 < 10i) {
125
+ let _e71 = i_1;
126
+ let _e73 = i_1;
127
+ param_6 = vec2<f32>(f32(_e71), (f32(_e73) + 11f));
128
+ let _e77 = random2((&param_6));
129
+ dir = normalize(_e77);
130
+ let _e79 = dir;
131
+ param_7 = _e79;
132
+ let _e80 = random((&param_7));
133
+ v = ((1f + (_e80 * 0.5f)) * 0.2f);
134
+ let _e84 = dir;
135
+ let _e85 = time;
136
+ let _e89 = v;
137
+ ofst = ((_e84 * clamp((_e85 - 0.5f), 0f, 8f)) * _e89);
138
+ let _e91 = (*uv_2);
139
+ let _e92 = ofst;
140
+ U = (_e91 - _e92);
141
+ let _e95 = U[0u];
142
+ let _e96 = (_e95 < 0f);
143
+ phi_199_ = _e96;
144
+ if !(_e96) {
145
+ let _e99 = U[0u];
146
+ phi_199_ = (_e99 > 1f);
147
+ }
148
+ let _e102 = phi_199_;
149
+ phi_206_ = _e102;
150
+ if !(_e102) {
151
+ let _e105 = U[1u];
152
+ phi_206_ = (_e105 < 0f);
153
+ }
154
+ let _e108 = phi_206_;
155
+ phi_213_ = _e108;
156
+ if !(_e108) {
157
+ let _e111 = U[1u];
158
+ phi_213_ = (_e111 > 1f);
159
+ }
160
+ let _e114 = phi_213_;
161
+ if _e114 {
162
+ continue;
163
+ }
164
+ let _e115 = U;
165
+ let _e116 = i_1;
166
+ let _e118 = point[_e116];
167
+ dist_i = distance(_e115, _e118);
168
+ closest = true;
169
+ j = 0i;
170
+ loop {
171
+ let _e120 = j;
172
+ if (_e120 < 10i) {
173
+ let _e122 = U;
174
+ let _e123 = j;
175
+ let _e125 = point[_e123];
176
+ let _e127 = dist_i;
177
+ if (distance(_e122, _e125) < _e127) {
178
+ closest = false;
179
+ break;
180
+ }
181
+ continue;
182
+ } else {
183
+ break;
184
+ }
185
+ continuing {
186
+ let _e129 = j;
187
+ j = (_e129 + 1i);
188
+ }
189
+ }
190
+ let _e131 = closest;
191
+ if _e131 {
192
+ let _e132 = U;
193
+ param_8 = _e132;
194
+ let _e133 = getFromColor((&param_8));
195
+ col = _e133;
196
+ break;
197
+ }
198
+ continue;
199
+ } else {
200
+ break;
201
+ }
202
+ continuing {
203
+ let _e134 = i_1;
204
+ i_1 = (_e134 + 1i);
205
+ }
206
+ }
207
+ let _e136 = col;
208
+ return _e136;
209
+ }
210
+
211
+ fn main_1() {
212
+ var param_9: vec2<f32>;
213
+
214
+ let _e25 = _uv_1;
215
+ param_9 = _e25;
216
+ let _e26 = transition((&param_9));
217
+ _fragColor = _e26;
218
+ return;
219
+ }
220
+
221
+ @fragment
222
+ fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
223
+ _uv_1 = _uv;
224
+ main_1();
225
+ let _e3 = _fragColor;
226
+ return _e3;
227
+ }
@@ -0,0 +1,103 @@
1
+ // heart — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/heart.glsl
2
+ // Author: gre
3
+ // License: MIT
4
+ // Description: A heart shape grows from the center to reveal 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
+ }
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 inHeart(p: ptr<function, vec2<f32>>, center: ptr<function, vec2<f32>>, size: ptr<function, f32>) -> f32 {
24
+ var o: vec2<f32>;
25
+ var a: f32;
26
+
27
+ let _e21 = (*size);
28
+ if (_e21 == 0f) {
29
+ return 0f;
30
+ }
31
+ let _e23 = (*p);
32
+ let _e24 = (*center);
33
+ let _e26 = (*size);
34
+ o = ((_e23 - _e24) / vec2((1.6f * _e26)));
35
+ let _e31 = o[0u];
36
+ let _e33 = o[0u];
37
+ let _e36 = o[1u];
38
+ let _e38 = o[1u];
39
+ a = (((_e31 * _e33) + (_e36 * _e38)) - 0.3f);
40
+ let _e42 = a;
41
+ let _e43 = a;
42
+ let _e45 = a;
43
+ let _e48 = o[0u];
44
+ let _e50 = o[0u];
45
+ let _e53 = o[1u];
46
+ let _e56 = o[1u];
47
+ let _e59 = o[1u];
48
+ return step(((_e42 * _e43) * _e45), ((((_e48 * _e50) * _e53) * _e56) * _e59));
49
+ }
50
+
51
+ fn getToColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
52
+ let _e18 = (*uv)[0u];
53
+ let _e20 = (*uv)[1u];
54
+ let _e23 = textureSampleLevel(_to, _sampler, vec2<f32>(_e18, (1f - _e20)), 0f);
55
+ return _e23;
56
+ }
57
+
58
+ fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
59
+ let _e18 = (*uv_1)[0u];
60
+ let _e20 = (*uv_1)[1u];
61
+ let _e23 = textureSampleLevel(_from, _sampler, vec2<f32>(_e18, (1f - _e20)), 0f);
62
+ return _e23;
63
+ }
64
+
65
+ fn transition(uv_2: ptr<function, vec2<f32>>) -> vec4<f32> {
66
+ var param: vec2<f32>;
67
+ var param_1: vec2<f32>;
68
+ var param_2: vec2<f32>;
69
+ var param_3: vec2<f32>;
70
+ var param_4: f32;
71
+
72
+ let _e22 = (*uv_2);
73
+ param = _e22;
74
+ let _e23 = getFromColor((&param));
75
+ let _e24 = (*uv_2);
76
+ param_1 = _e24;
77
+ let _e25 = getToColor((&param_1));
78
+ let _e26 = (*uv_2);
79
+ param_2 = _e26;
80
+ param_3 = vec2<f32>(0.5f, 0.4f);
81
+ let _e28 = uniforms.progress;
82
+ param_4 = _e28;
83
+ let _e29 = inHeart((&param_2), (&param_3), (&param_4));
84
+ return mix(_e23, _e25, vec4(_e29));
85
+ }
86
+
87
+ fn main_1() {
88
+ var param_5: vec2<f32>;
89
+
90
+ let _e17 = _uv_1;
91
+ param_5 = _e17;
92
+ let _e18 = transition((&param_5));
93
+ _fragColor = _e18;
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
+ }