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.
- package/README.md +78 -0
- package/compatibility.json +2070 -0
- package/glsl3/AdvancedMosaic.glsl +21 -0
- package/glsl3/BlockDissolve.glsl +16 -0
- package/glsl3/BookFlip.glsl +37 -0
- package/glsl3/Bounce.glsl +35 -0
- package/glsl3/BowTieHorizontal.glsl +123 -0
- package/glsl3/BowTieVertical.glsl +117 -0
- package/glsl3/BowTieWithParameter.glsl +74 -0
- package/glsl3/Box.glsl +33 -0
- package/glsl3/ButterflyWaveScrawler.glsl +33 -0
- package/glsl3/CircleCrop.glsl +20 -0
- package/glsl3/ColourDistance.glsl +19 -0
- package/glsl3/CrazyParametricFun.glsl +20 -0
- package/glsl3/CrossZoom.glsl +68 -0
- package/glsl3/DefocusBlur.glsl +47 -0
- package/glsl3/Directional.glsl +18 -0
- package/glsl3/DirectionalScaled.glsl +35 -0
- package/glsl3/DoomScreenTransition.glsl +62 -0
- package/glsl3/Dreamy.glsl +14 -0
- package/glsl3/DreamyZoom.glsl +43 -0
- package/glsl3/Drop_Zone_Flicker.glsl +159 -0
- package/glsl3/EdgeTransition.glsl +50 -0
- package/glsl3/FilmBurn.glsl +63 -0
- package/glsl3/Fold.glsl +12 -0
- package/glsl3/GlitchDisplace.glsl +78 -0
- package/glsl3/GlitchMemories.glsl +17 -0
- package/glsl3/GridFlip.glsl +77 -0
- package/glsl3/HSVfade.glsl +29 -0
- package/glsl3/HorizontalClose.glsl +16 -0
- package/glsl3/HorizontalOpen.glsl +18 -0
- package/glsl3/InvertedPageCurl.glsl +228 -0
- package/glsl3/LeftRight.glsl +28 -0
- package/glsl3/LinearBlur.glsl +30 -0
- package/glsl3/Mosaic.glsl +45 -0
- package/glsl3/Overexposure.glsl +25 -0
- package/glsl3/PolkaDotsCurtain.glsl +14 -0
- package/glsl3/PuzzleRight.glsl +57 -0
- package/glsl3/Radial.glsl +19 -0
- package/glsl3/Rectangle.glsl +29 -0
- package/glsl3/RectangleCrop.glsl +30 -0
- package/glsl3/Revolve_Left.glsl +98 -0
- package/glsl3/Rolls.glsl +42 -0
- package/glsl3/RotateScaleVanish.glsl +42 -0
- package/glsl3/SimpleFlip.glsl +14 -0
- package/glsl3/SimpleZoom.glsl +20 -0
- package/glsl3/SimpleZoomOut.glsl +23 -0
- package/glsl3/Slides.glsl +41 -0
- package/glsl3/StarWipe.glsl +51 -0
- package/glsl3/StaticFade.glsl +47 -0
- package/glsl3/StereoViewer.glsl +214 -0
- package/glsl3/StripDatamoshGlitch.glsl +187 -0
- package/glsl3/Swirl.glsl +34 -0
- package/glsl3/TVStatic.glsl +29 -0
- package/glsl3/TilesWave.glsl +63 -0
- package/glsl3/TopBottom.glsl +27 -0
- package/glsl3/VerticalClose.glsl +16 -0
- package/glsl3/VerticalOpen.glsl +17 -0
- package/glsl3/WaterDrop.glsl +21 -0
- package/glsl3/ZoomInCircles.glsl +40 -0
- package/glsl3/ZoomLeftWipe.glsl +36 -0
- package/glsl3/ZoomRigthWipe.glsl +36 -0
- package/glsl3/angular.glsl +25 -0
- package/glsl3/burn.glsl +14 -0
- package/glsl3/burn0.glsl +55 -0
- package/glsl3/cannabisleaf.glsl +18 -0
- package/glsl3/chessboard.glsl +28 -0
- package/glsl3/circle.glsl +24 -0
- package/glsl3/circleopen.glsl +18 -0
- package/glsl3/colorphase.glsl +19 -0
- package/glsl3/coord-from-in.glsl +18 -0
- package/glsl3/crosshatch.glsl +20 -0
- package/glsl3/crosswarp.glsl +10 -0
- package/glsl3/cube.glsl +71 -0
- package/glsl3/directional-easing.glsl +19 -0
- package/glsl3/directionalwarp.glsl +20 -0
- package/glsl3/directionalwipe.glsl +22 -0
- package/glsl3/displacement.glsl +26 -0
- package/glsl3/dissolve.glsl +54 -0
- package/glsl3/doorway.glsl +55 -0
- package/glsl3/fade.glsl +13 -0
- package/glsl3/fadecolor.glsl +15 -0
- package/glsl3/fadegrayscale.glsl +21 -0
- package/glsl3/flyeye.glsl +20 -0
- package/glsl3/fragment.glsl +54 -0
- package/glsl3/heart.glsl +19 -0
- package/glsl3/hexagonalize.glsl +78 -0
- package/glsl3/kaleidoscope.glsl +25 -0
- package/glsl3/luma.glsl +15 -0
- package/glsl3/luminance_melt.glsl +131 -0
- package/glsl3/morph.glsl +20 -0
- package/glsl3/mosaic_transition.glsl +20 -0
- package/glsl3/multiply_blend.glsl +19 -0
- package/glsl3/old_tv_lost_signal.glsl +51 -0
- package/glsl3/parametric_glitch.glsl +29 -0
- package/glsl3/perlin.glsl +66 -0
- package/glsl3/pinwheel.glsl +20 -0
- package/glsl3/pixelize.glsl +21 -0
- package/glsl3/polar_function.glsl +24 -0
- package/glsl3/powerKaleido.glsl +57 -0
- package/glsl3/randomNoisex.glsl +15 -0
- package/glsl3/randomsquares.glsl +20 -0
- package/glsl3/ripple.glsl +20 -0
- package/glsl3/rotateTransition.glsl +22 -0
- package/glsl3/rotate_scale_fade.glsl +39 -0
- package/glsl3/scale-in.glsl +18 -0
- package/glsl3/splitSlideInHorizontal.glsl +26 -0
- package/glsl3/splitSlideInOutHorizontal.glsl +23 -0
- package/glsl3/splitSlideInOutVertical.glsl +23 -0
- package/glsl3/splitSlideInVertical.glsl +24 -0
- package/glsl3/splitSlideOutHorizontal.glsl +22 -0
- package/glsl3/splitSlideOutVertical.glsl +22 -0
- package/glsl3/squareswire.glsl +26 -0
- package/glsl3/squeeze.glsl +23 -0
- package/glsl3/static_wipe.glsl +39 -0
- package/glsl3/swap.glsl +64 -0
- package/glsl3/tangentMotionBlur.glsl +139 -0
- package/glsl3/undulatingBurnOut.glsl +56 -0
- package/glsl3/wind.glsl +25 -0
- package/glsl3/windowblinds.glsl +18 -0
- package/glsl3/windowslice.glsl +16 -0
- package/glsl3/wipeDown.glsl +12 -0
- package/glsl3/wipeLeft.glsl +12 -0
- package/glsl3/wipeRight.glsl +12 -0
- package/glsl3/wipeUp.glsl +12 -0
- package/glsl3/x_axis_translation.glsl +21 -0
- package/glsl3/zoomInOut.glsl +20 -0
- package/index.d.ts +61 -0
- package/layouts.json +2956 -0
- package/llms-full.txt +1707 -0
- package/llms.txt +153 -0
- package/msl/AdvancedMosaic.metal +136 -0
- package/msl/BlockDissolve.metal +108 -0
- package/msl/BookFlip.metal +191 -0
- package/msl/Bounce.metal +128 -0
- package/msl/BowTieHorizontal.metal +375 -0
- package/msl/BowTieVertical.metal +375 -0
- package/msl/BowTieWithParameter.metal +361 -0
- package/msl/Box.metal +204 -0
- package/msl/ButterflyWaveScrawler.metal +190 -0
- package/msl/CircleCrop.metal +117 -0
- package/msl/ColourDistance.metal +110 -0
- package/msl/CrazyParametricFun.metal +139 -0
- package/msl/CrossZoom.metal +274 -0
- package/msl/DefocusBlur.metal +297 -0
- package/msl/Directional.metal +107 -0
- package/msl/DirectionalScaled.metal +147 -0
- package/msl/DoomScreenTransition.metal +212 -0
- package/msl/Dreamy.metal +133 -0
- package/msl/DreamyZoom.metal +182 -0
- package/msl/Drop_Zone_Flicker.metal +561 -0
- package/msl/EdgeTransition.metal +277 -0
- package/msl/FilmBurn.metal +425 -0
- package/msl/Fold.metal +110 -0
- package/msl/GlitchDisplace.metal +374 -0
- package/msl/GlitchMemories.metal +146 -0
- package/msl/GridFlip.metal +285 -0
- package/msl/HSVfade.metal +161 -0
- package/msl/HorizontalClose.metal +100 -0
- package/msl/HorizontalOpen.metal +103 -0
- package/msl/InvertedPageCurl.metal +762 -0
- package/msl/LeftRight.metal +138 -0
- package/msl/LinearBlur.metal +169 -0
- package/msl/Mosaic.metal +212 -0
- package/msl/Overexposure.metal +130 -0
- package/msl/PolkaDotsCurtain.metal +112 -0
- package/msl/PuzzleRight.metal +262 -0
- package/msl/Radial.metal +102 -0
- package/msl/Rectangle.metal +129 -0
- package/msl/RectangleCrop.metal +127 -0
- package/msl/Revolve_Left.metal +363 -0
- package/msl/Rolls.metal +209 -0
- package/msl/RotateScaleVanish.metal +227 -0
- package/msl/SimpleFlip.metal +110 -0
- package/msl/SimpleZoom.metal +116 -0
- package/msl/SimpleZoomOut.metal +127 -0
- package/msl/Slides.metal +244 -0
- package/msl/StarWipe.metal +204 -0
- package/msl/StaticFade.metal +193 -0
- package/msl/StereoViewer.metal +707 -0
- package/msl/StripDatamoshGlitch.metal +828 -0
- package/msl/Swirl.metal +152 -0
- package/msl/TVStatic.metal +136 -0
- package/msl/TilesWave.metal +290 -0
- package/msl/TopBottom.metal +138 -0
- package/msl/VerticalClose.metal +100 -0
- package/msl/VerticalOpen.metal +103 -0
- package/msl/WaterDrop.metal +126 -0
- package/msl/ZoomInCircles.metal +169 -0
- package/msl/ZoomLeftWipe.metal +152 -0
- package/msl/ZoomRigthWipe.metal +152 -0
- package/msl/angular.metal +111 -0
- package/msl/burn.metal +103 -0
- package/msl/burn0.metal +236 -0
- package/msl/cannabisleaf.metal +120 -0
- package/msl/chessboard.metal +144 -0
- package/msl/circle.metal +115 -0
- package/msl/circleopen.metal +124 -0
- package/msl/colorphase.metal +106 -0
- package/msl/coord-from-in.metal +111 -0
- package/msl/crosshatch.metal +126 -0
- package/msl/crosswarp.metal +103 -0
- package/msl/cube.metal +259 -0
- package/msl/directional-easing.metal +111 -0
- package/msl/directionalwarp.metal +121 -0
- package/msl/directionalwipe.metal +120 -0
- package/msl/displacement.metal +129 -0
- package/msl/dissolve.metal +146 -0
- package/msl/doorway.metal +210 -0
- package/msl/fade.metal +95 -0
- package/msl/fadecolor.metal +104 -0
- package/msl/fadegrayscale.metal +123 -0
- package/msl/flyeye.metal +133 -0
- package/msl/fragment.metal +276 -0
- package/msl/heart.metal +134 -0
- package/msl/hexagonalize.metal +274 -0
- package/msl/kaleidoscope.metal +157 -0
- package/msl/luma.metal +113 -0
- package/msl/luminance_melt.metal +337 -0
- package/msl/morph.metal +131 -0
- package/msl/mosaic_transition.metal +137 -0
- package/msl/multiply_blend.metal +127 -0
- package/msl/old_tv_lost_signal.metal +172 -0
- package/msl/parametric_glitch.metal +152 -0
- package/msl/perlin.metal +206 -0
- package/msl/pinwheel.metal +112 -0
- package/msl/pixelize.metal +134 -0
- package/msl/polar_function.metal +116 -0
- package/msl/powerKaleido.metal +304 -0
- package/msl/randomNoisex.metal +115 -0
- package/msl/randomsquares.metal +118 -0
- package/msl/ripple.metal +113 -0
- package/msl/rotateTransition.metal +116 -0
- package/msl/rotate_scale_fade.metal +167 -0
- package/msl/scale-in.metal +111 -0
- package/msl/splitSlideInHorizontal.metal +147 -0
- package/msl/splitSlideInOutHorizontal.metal +138 -0
- package/msl/splitSlideInOutVertical.metal +138 -0
- package/msl/splitSlideInVertical.metal +144 -0
- package/msl/splitSlideOutHorizontal.metal +131 -0
- package/msl/splitSlideOutVertical.metal +131 -0
- package/msl/squareswire.metal +144 -0
- package/msl/squeeze.metal +133 -0
- package/msl/static_wipe.metal +147 -0
- package/msl/swap.metal +256 -0
- package/msl/tangentMotionBlur.metal +583 -0
- package/msl/undulatingBurnOut.metal +217 -0
- package/msl/wind.metal +131 -0
- package/msl/windowblinds.metal +107 -0
- package/msl/windowslice.metal +108 -0
- package/msl/wipeDown.metal +105 -0
- package/msl/wipeLeft.metal +105 -0
- package/msl/wipeRight.metal +105 -0
- package/msl/wipeUp.metal +105 -0
- package/msl/x_axis_translation.metal +110 -0
- package/msl/zoomInOut.metal +125 -0
- package/package.json +1 -1
- package/skills/gl-transitions/SKILL.md +46 -0
- package/skills/gl-transitions/references/catalog.md +224 -0
- package/skills/gl-transitions/references/skia.md +118 -0
- package/skills/gl-transitions/references/video.md +71 -0
- package/skills/gl-transitions/references/webgl.md +122 -0
- package/sksl/index.d.ts +4 -0
- package/sksl/index.js +1 -0
- package/wgsl/AdvancedMosaic.wgsl +108 -0
- package/wgsl/BlockDissolve.wgsl +78 -0
- package/wgsl/BookFlip.wgsl +157 -0
- package/wgsl/Bounce.wgsl +98 -0
- package/wgsl/BowTieHorizontal.wgsl +331 -0
- package/wgsl/BowTieVertical.wgsl +331 -0
- package/wgsl/BowTieWithParameter.wgsl +313 -0
- package/wgsl/Box.wgsl +176 -0
- package/wgsl/ButterflyWaveScrawler.wgsl +158 -0
- package/wgsl/CircleCrop.wgsl +88 -0
- package/wgsl/ColourDistance.wgsl +82 -0
- package/wgsl/CrazyParametricFun.wgsl +111 -0
- package/wgsl/CrossZoom.wgsl +219 -0
- package/wgsl/DefocusBlur.wgsl +269 -0
- package/wgsl/Directional.wgsl +79 -0
- package/wgsl/DirectionalScaled.wgsl +117 -0
- package/wgsl/DoomScreenTransition.wgsl +171 -0
- package/wgsl/Dreamy.wgsl +102 -0
- package/wgsl/DreamyZoom.wgsl +154 -0
- package/wgsl/Drop_Zone_Flicker.wgsl +513 -0
- package/wgsl/EdgeTransition.wgsl +216 -0
- package/wgsl/FilmBurn.wgsl +361 -0
- package/wgsl/Fold.wgsl +82 -0
- package/wgsl/GlitchDisplace.wgsl +327 -0
- package/wgsl/GlitchMemories.wgsl +118 -0
- package/wgsl/GridFlip.wgsl +250 -0
- package/wgsl/HSVfade.wgsl +131 -0
- package/wgsl/HorizontalClose.wgsl +72 -0
- package/wgsl/HorizontalOpen.wgsl +75 -0
- package/wgsl/InvertedPageCurl.wgsl +690 -0
- package/wgsl/LeftRight.wgsl +109 -0
- package/wgsl/LinearBlur.wgsl +131 -0
- package/wgsl/Mosaic.wgsl +174 -0
- package/wgsl/Overexposure.wgsl +102 -0
- package/wgsl/PolkaDotsCurtain.wgsl +83 -0
- package/wgsl/PuzzleRight.wgsl +230 -0
- package/wgsl/Radial.wgsl +74 -0
- package/wgsl/Rectangle.wgsl +100 -0
- package/wgsl/RectangleCrop.wgsl +98 -0
- package/wgsl/Revolve_Left.wgsl +314 -0
- package/wgsl/Rolls.wgsl +181 -0
- package/wgsl/RotateScaleVanish.wgsl +199 -0
- package/wgsl/SimpleFlip.wgsl +82 -0
- package/wgsl/SimpleZoom.wgsl +85 -0
- package/wgsl/SimpleZoomOut.wgsl +96 -0
- package/wgsl/Slides.wgsl +216 -0
- package/wgsl/StarWipe.wgsl +169 -0
- package/wgsl/StaticFade.wgsl +159 -0
- package/wgsl/StereoViewer.wgsl +625 -0
- package/wgsl/StripDatamoshGlitch.wgsl +755 -0
- package/wgsl/Swirl.wgsl +124 -0
- package/wgsl/TVStatic.wgsl +106 -0
- package/wgsl/TilesWave.wgsl +262 -0
- package/wgsl/TopBottom.wgsl +109 -0
- package/wgsl/VerticalClose.wgsl +72 -0
- package/wgsl/VerticalOpen.wgsl +75 -0
- package/wgsl/WaterDrop.wgsl +98 -0
- package/wgsl/ZoomInCircles.wgsl +138 -0
- package/wgsl/ZoomLeftWipe.wgsl +121 -0
- package/wgsl/ZoomRigthWipe.wgsl +121 -0
- package/wgsl/angular.wgsl +83 -0
- package/wgsl/burn.wgsl +74 -0
- package/wgsl/burn0.wgsl +198 -0
- package/wgsl/cannabisleaf.wgsl +92 -0
- package/wgsl/chessboard.wgsl +116 -0
- package/wgsl/circle.wgsl +87 -0
- package/wgsl/circleopen.wgsl +96 -0
- package/wgsl/colorphase.wgsl +77 -0
- package/wgsl/coord-from-in.wgsl +83 -0
- package/wgsl/crosshatch.wgsl +96 -0
- package/wgsl/crosswarp.wgsl +75 -0
- package/wgsl/cube.wgsl +217 -0
- package/wgsl/directional-easing.wgsl +83 -0
- package/wgsl/directionalwarp.wgsl +92 -0
- package/wgsl/directionalwipe.wgsl +91 -0
- package/wgsl/displacement.wgsl +96 -0
- package/wgsl/dissolve.wgsl +116 -0
- package/wgsl/doorway.wgsl +174 -0
- package/wgsl/fade.wgsl +67 -0
- package/wgsl/fadecolor.wgsl +75 -0
- package/wgsl/fadegrayscale.wgsl +93 -0
- package/wgsl/flyeye.wgsl +105 -0
- package/wgsl/fragment.wgsl +227 -0
- package/wgsl/heart.wgsl +103 -0
- package/wgsl/hexagonalize.wgsl +238 -0
- package/wgsl/kaleidoscope.wgsl +124 -0
- package/wgsl/luma.wgsl +80 -0
- package/wgsl/luminance_melt.wgsl +299 -0
- package/wgsl/morph.wgsl +103 -0
- package/wgsl/mosaic_transition.wgsl +107 -0
- package/wgsl/multiply_blend.wgsl +96 -0
- package/wgsl/old_tv_lost_signal.wgsl +142 -0
- package/wgsl/parametric_glitch.wgsl +124 -0
- package/wgsl/perlin.wgsl +174 -0
- package/wgsl/pinwheel.wgsl +84 -0
- package/wgsl/pixelize.wgsl +105 -0
- package/wgsl/polar_function.wgsl +88 -0
- package/wgsl/powerKaleido.wgsl +254 -0
- package/wgsl/randomNoisex.wgsl +85 -0
- package/wgsl/randomsquares.wgsl +87 -0
- package/wgsl/ripple.wgsl +85 -0
- package/wgsl/rotateTransition.wgsl +85 -0
- package/wgsl/rotate_scale_fade.wgsl +138 -0
- package/wgsl/scale-in.wgsl +79 -0
- package/wgsl/splitSlideInHorizontal.wgsl +118 -0
- package/wgsl/splitSlideInOutHorizontal.wgsl +109 -0
- package/wgsl/splitSlideInOutVertical.wgsl +109 -0
- package/wgsl/splitSlideInVertical.wgsl +115 -0
- package/wgsl/splitSlideOutHorizontal.wgsl +102 -0
- package/wgsl/splitSlideOutVertical.wgsl +102 -0
- package/wgsl/squareswire.wgsl +115 -0
- package/wgsl/squeeze.wgsl +105 -0
- package/wgsl/static_wipe.wgsl +117 -0
- package/wgsl/swap.wgsl +218 -0
- package/wgsl/tangentMotionBlur.wgsl +503 -0
- package/wgsl/undulatingBurnOut.wgsl +181 -0
- package/wgsl/wind.wgsl +101 -0
- package/wgsl/windowblinds.wgsl +79 -0
- package/wgsl/windowslice.wgsl +80 -0
- package/wgsl/wipeDown.wgsl +77 -0
- package/wgsl/wipeLeft.wgsl +77 -0
- package/wgsl/wipeRight.wgsl +77 -0
- package/wgsl/wipeUp.wgsl +77 -0
- package/wgsl/x_axis_translation.wgsl +82 -0
- package/wgsl/zoomInOut.wgsl +94 -0
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
// hexagonalize — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/hexagonalize.glsl
|
|
2
|
+
// Author: Fernando Kuteken
|
|
3
|
+
// License: MIT
|
|
4
|
+
// Description: Both images turn into hexagons, crossfade, then sharpen again
|
|
5
|
+
// Bindings and uniform layout: see the gl-transitions package README
|
|
6
|
+
|
|
7
|
+
struct Hexagon {
|
|
8
|
+
q: f32,
|
|
9
|
+
r: f32,
|
|
10
|
+
s: f32,
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
struct Uniforms {
|
|
14
|
+
progress: f32,
|
|
15
|
+
ratio: f32,
|
|
16
|
+
steps: i32,
|
|
17
|
+
horizontalHexagons: f32,
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@group(0) @binding(2)
|
|
21
|
+
var _from: texture_2d<f32>;
|
|
22
|
+
@group(0) @binding(1)
|
|
23
|
+
var _sampler: sampler;
|
|
24
|
+
@group(0) @binding(3)
|
|
25
|
+
var _to: texture_2d<f32>;
|
|
26
|
+
@group(0) @binding(0)
|
|
27
|
+
var<uniform> uniforms: Uniforms;
|
|
28
|
+
var<private> _fragColor: vec4<f32>;
|
|
29
|
+
var<private> _uv_1: vec2<f32>;
|
|
30
|
+
|
|
31
|
+
fn getToColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
32
|
+
let _e24 = (*uv)[0u];
|
|
33
|
+
let _e26 = (*uv)[1u];
|
|
34
|
+
let _e29 = textureSampleLevel(_to, _sampler, vec2<f32>(_e24, (1f - _e26)), 0f);
|
|
35
|
+
return _e29;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
39
|
+
let _e24 = (*uv_1)[0u];
|
|
40
|
+
let _e26 = (*uv_1)[1u];
|
|
41
|
+
let _e29 = textureSampleLevel(_from, _sampler, vec2<f32>(_e24, (1f - _e26)), 0f);
|
|
42
|
+
return _e29;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
fn pointFromHexagon(hex: ptr<function, Hexagon>, size: ptr<function, f32>) -> vec2<f32> {
|
|
46
|
+
var x: f32;
|
|
47
|
+
var y: f32;
|
|
48
|
+
|
|
49
|
+
let _e27 = (*hex).q;
|
|
50
|
+
let _e30 = (*hex).r;
|
|
51
|
+
let _e33 = (*size);
|
|
52
|
+
x = ((((1.7320508f * _e27) + (0.8660254f * _e30)) * _e33) + 0.5f);
|
|
53
|
+
let _e37 = (*hex).q;
|
|
54
|
+
let _e40 = (*hex).r;
|
|
55
|
+
let _e43 = (*size);
|
|
56
|
+
y = ((((0f * _e37) + (1.5f * _e40)) * _e43) + 0.5f);
|
|
57
|
+
let _e46 = x;
|
|
58
|
+
let _e47 = y;
|
|
59
|
+
let _e49 = uniforms.ratio;
|
|
60
|
+
return vec2<f32>(_e46, (_e47 * _e49));
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
fn createHexagon(q: ptr<function, f32>, r: ptr<function, f32>) -> Hexagon {
|
|
64
|
+
var hex_1: Hexagon;
|
|
65
|
+
|
|
66
|
+
let _e25 = (*q);
|
|
67
|
+
hex_1.q = _e25;
|
|
68
|
+
let _e27 = (*r);
|
|
69
|
+
hex_1.r = _e27;
|
|
70
|
+
let _e29 = (*q);
|
|
71
|
+
let _e31 = (*r);
|
|
72
|
+
hex_1.s = (-(_e29) - _e31);
|
|
73
|
+
let _e34 = hex_1;
|
|
74
|
+
return _e34;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
fn roundHexagon(hex_2: ptr<function, Hexagon>) -> Hexagon {
|
|
78
|
+
var q_1: f32;
|
|
79
|
+
var r_1: f32;
|
|
80
|
+
var s: f32;
|
|
81
|
+
var deltaQ: f32;
|
|
82
|
+
var deltaR: f32;
|
|
83
|
+
var deltaS: f32;
|
|
84
|
+
var param: f32;
|
|
85
|
+
var param_1: f32;
|
|
86
|
+
|
|
87
|
+
let _e32 = (*hex_2).q;
|
|
88
|
+
q_1 = floor((_e32 + 0.5f));
|
|
89
|
+
let _e36 = (*hex_2).r;
|
|
90
|
+
r_1 = floor((_e36 + 0.5f));
|
|
91
|
+
let _e40 = (*hex_2).s;
|
|
92
|
+
s = floor((_e40 + 0.5f));
|
|
93
|
+
let _e43 = q_1;
|
|
94
|
+
let _e45 = (*hex_2).q;
|
|
95
|
+
deltaQ = abs((_e43 - _e45));
|
|
96
|
+
let _e48 = r_1;
|
|
97
|
+
let _e50 = (*hex_2).r;
|
|
98
|
+
deltaR = abs((_e48 - _e50));
|
|
99
|
+
let _e53 = s;
|
|
100
|
+
let _e55 = (*hex_2).s;
|
|
101
|
+
deltaS = abs((_e53 - _e55));
|
|
102
|
+
let _e58 = deltaQ;
|
|
103
|
+
let _e59 = deltaR;
|
|
104
|
+
let _e61 = deltaQ;
|
|
105
|
+
let _e62 = deltaS;
|
|
106
|
+
if ((_e58 > _e59) && (_e61 > _e62)) {
|
|
107
|
+
let _e65 = r_1;
|
|
108
|
+
let _e67 = s;
|
|
109
|
+
q_1 = (-(_e65) - _e67);
|
|
110
|
+
} else {
|
|
111
|
+
let _e69 = deltaR;
|
|
112
|
+
let _e70 = deltaS;
|
|
113
|
+
if (_e69 > _e70) {
|
|
114
|
+
let _e72 = q_1;
|
|
115
|
+
let _e74 = s;
|
|
116
|
+
r_1 = (-(_e72) - _e74);
|
|
117
|
+
} else {
|
|
118
|
+
let _e76 = q_1;
|
|
119
|
+
let _e78 = r_1;
|
|
120
|
+
s = (-(_e76) - _e78);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
let _e80 = q_1;
|
|
124
|
+
param = _e80;
|
|
125
|
+
let _e81 = r_1;
|
|
126
|
+
param_1 = _e81;
|
|
127
|
+
let _e82 = createHexagon((¶m), (¶m_1));
|
|
128
|
+
return _e82;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
fn hexagonFromPoint(point: ptr<function, vec2<f32>>, size_1: ptr<function, f32>) -> Hexagon {
|
|
132
|
+
var q_2: f32;
|
|
133
|
+
var r_2: f32;
|
|
134
|
+
var hex_3: Hexagon;
|
|
135
|
+
var param_2: f32;
|
|
136
|
+
var param_3: f32;
|
|
137
|
+
var param_4: Hexagon;
|
|
138
|
+
|
|
139
|
+
let _e31 = uniforms.ratio;
|
|
140
|
+
let _e33 = (*point)[1u];
|
|
141
|
+
(*point)[1u] = (_e33 / _e31);
|
|
142
|
+
let _e36 = (*point);
|
|
143
|
+
let _e39 = (*size_1);
|
|
144
|
+
(*point) = ((_e36 - vec2(0.5f)) / vec2(_e39));
|
|
145
|
+
let _e43 = (*point)[0u];
|
|
146
|
+
let _e46 = (*point)[1u];
|
|
147
|
+
q_2 = ((0.57735026f * _e43) + (-0.33333334f * _e46));
|
|
148
|
+
let _e50 = (*point)[0u];
|
|
149
|
+
let _e53 = (*point)[1u];
|
|
150
|
+
r_2 = ((0f * _e50) + (0.6666667f * _e53));
|
|
151
|
+
let _e56 = q_2;
|
|
152
|
+
param_2 = _e56;
|
|
153
|
+
let _e57 = r_2;
|
|
154
|
+
param_3 = _e57;
|
|
155
|
+
let _e58 = createHexagon((¶m_2), (¶m_3));
|
|
156
|
+
hex_3 = _e58;
|
|
157
|
+
let _e59 = hex_3;
|
|
158
|
+
param_4 = _e59;
|
|
159
|
+
let _e60 = roundHexagon((¶m_4));
|
|
160
|
+
return _e60;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
fn transition(uv_2: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
164
|
+
var dist: f32;
|
|
165
|
+
var local: f32;
|
|
166
|
+
var size_2: f32;
|
|
167
|
+
var point_1: vec2<f32>;
|
|
168
|
+
var local_1: vec2<f32>;
|
|
169
|
+
var param_5: vec2<f32>;
|
|
170
|
+
var param_6: f32;
|
|
171
|
+
var param_7: Hexagon;
|
|
172
|
+
var param_8: f32;
|
|
173
|
+
var param_9: vec2<f32>;
|
|
174
|
+
var param_10: vec2<f32>;
|
|
175
|
+
|
|
176
|
+
let _e35 = uniforms.progress;
|
|
177
|
+
let _e37 = uniforms.progress;
|
|
178
|
+
dist = (2f * min(_e35, (1f - _e37)));
|
|
179
|
+
let _e42 = uniforms.steps;
|
|
180
|
+
if (_e42 > 0i) {
|
|
181
|
+
let _e44 = dist;
|
|
182
|
+
let _e46 = uniforms.steps;
|
|
183
|
+
let _e51 = uniforms.steps;
|
|
184
|
+
local = (ceil((_e44 * f32(_e46))) / f32(_e51));
|
|
185
|
+
} else {
|
|
186
|
+
let _e54 = dist;
|
|
187
|
+
local = _e54;
|
|
188
|
+
}
|
|
189
|
+
let _e55 = local;
|
|
190
|
+
dist = _e55;
|
|
191
|
+
let _e56 = dist;
|
|
192
|
+
let _e59 = uniforms.horizontalHexagons;
|
|
193
|
+
size_2 = ((0.57735026f * _e56) / _e59);
|
|
194
|
+
let _e61 = dist;
|
|
195
|
+
if (_e61 > 0f) {
|
|
196
|
+
let _e63 = (*uv_2);
|
|
197
|
+
param_5 = _e63;
|
|
198
|
+
let _e64 = size_2;
|
|
199
|
+
param_6 = _e64;
|
|
200
|
+
let _e65 = hexagonFromPoint((¶m_5), (¶m_6));
|
|
201
|
+
param_7 = _e65;
|
|
202
|
+
let _e66 = size_2;
|
|
203
|
+
param_8 = _e66;
|
|
204
|
+
let _e67 = pointFromHexagon((¶m_7), (¶m_8));
|
|
205
|
+
local_1 = _e67;
|
|
206
|
+
} else {
|
|
207
|
+
let _e68 = (*uv_2);
|
|
208
|
+
local_1 = _e68;
|
|
209
|
+
}
|
|
210
|
+
let _e69 = local_1;
|
|
211
|
+
point_1 = _e69;
|
|
212
|
+
let _e70 = point_1;
|
|
213
|
+
param_9 = _e70;
|
|
214
|
+
let _e71 = getFromColor((¶m_9));
|
|
215
|
+
let _e72 = point_1;
|
|
216
|
+
param_10 = _e72;
|
|
217
|
+
let _e73 = getToColor((¶m_10));
|
|
218
|
+
let _e75 = uniforms.progress;
|
|
219
|
+
return mix(_e71, _e73, vec4(_e75));
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
fn main_1() {
|
|
223
|
+
var param_11: vec2<f32>;
|
|
224
|
+
|
|
225
|
+
let _e23 = _uv_1;
|
|
226
|
+
param_11 = _e23;
|
|
227
|
+
let _e24 = transition((¶m_11));
|
|
228
|
+
_fragColor = _e24;
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
@fragment
|
|
233
|
+
fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
|
|
234
|
+
_uv_1 = _uv;
|
|
235
|
+
main_1();
|
|
236
|
+
let _e3 = _fragColor;
|
|
237
|
+
return _e3;
|
|
238
|
+
}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
// kaleidoscope — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/kaleidoscope.glsl
|
|
2
|
+
// Author: nwoeanhinnogaehr
|
|
3
|
+
// License: MIT
|
|
4
|
+
// Description: A crossfade through a spinning kaleidoscope
|
|
5
|
+
// Bindings and uniform layout: see the gl-transitions package README
|
|
6
|
+
|
|
7
|
+
struct Uniforms {
|
|
8
|
+
progress: f32,
|
|
9
|
+
ratio: f32,
|
|
10
|
+
speed: f32,
|
|
11
|
+
angle: f32,
|
|
12
|
+
power: 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 getToColor(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
27
|
+
let _e21 = (*uv)[0u];
|
|
28
|
+
let _e23 = (*uv)[1u];
|
|
29
|
+
let _e26 = textureSampleLevel(_to, _sampler, vec2<f32>(_e21, (1f - _e23)), 0f);
|
|
30
|
+
return _e26;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
34
|
+
let _e21 = (*uv_1)[0u];
|
|
35
|
+
let _e23 = (*uv_1)[1u];
|
|
36
|
+
let _e26 = textureSampleLevel(_from, _sampler, vec2<f32>(_e21, (1f - _e23)), 0f);
|
|
37
|
+
return _e26;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
fn transition(uv_2: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
41
|
+
var p: vec2<f32>;
|
|
42
|
+
var q: vec2<f32>;
|
|
43
|
+
var t: f32;
|
|
44
|
+
var i: i32;
|
|
45
|
+
var param: vec2<f32>;
|
|
46
|
+
var param_1: vec2<f32>;
|
|
47
|
+
var param_2: vec2<f32>;
|
|
48
|
+
var param_3: vec2<f32>;
|
|
49
|
+
|
|
50
|
+
let _e28 = (*uv_2);
|
|
51
|
+
p = (_e28 / vec2<f32>(1f, 1f));
|
|
52
|
+
let _e30 = p;
|
|
53
|
+
q = _e30;
|
|
54
|
+
let _e32 = uniforms.progress;
|
|
55
|
+
let _e34 = uniforms.power;
|
|
56
|
+
let _e37 = uniforms.speed;
|
|
57
|
+
t = (pow(_e32, _e34) * _e37);
|
|
58
|
+
let _e39 = p;
|
|
59
|
+
p = (_e39 - vec2(0.5f));
|
|
60
|
+
i = 0i;
|
|
61
|
+
loop {
|
|
62
|
+
let _e42 = i;
|
|
63
|
+
if (_e42 < 7i) {
|
|
64
|
+
let _e44 = t;
|
|
65
|
+
let _e47 = p[0u];
|
|
66
|
+
let _e49 = t;
|
|
67
|
+
let _e52 = p[1u];
|
|
68
|
+
let _e55 = t;
|
|
69
|
+
let _e58 = p[1u];
|
|
70
|
+
let _e60 = t;
|
|
71
|
+
let _e63 = p[0u];
|
|
72
|
+
p = vec2<f32>(((sin(_e44) * _e47) + (cos(_e49) * _e52)), ((sin(_e55) * _e58) - (cos(_e60) * _e63)));
|
|
73
|
+
let _e68 = uniforms.angle;
|
|
74
|
+
let _e69 = t;
|
|
75
|
+
t = (_e69 + _e68);
|
|
76
|
+
let _e71 = p;
|
|
77
|
+
let _e72 = vec2(2f);
|
|
78
|
+
p = abs(((_e71 - (floor((_e71 / _e72)) * _e72)) - vec2(1f)));
|
|
79
|
+
continue;
|
|
80
|
+
} else {
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
continuing {
|
|
84
|
+
let _e80 = i;
|
|
85
|
+
i = (_e80 + 1i);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
let _e82 = p;
|
|
89
|
+
let _e83 = vec2(1f);
|
|
90
|
+
let _e89 = q;
|
|
91
|
+
param = _e89;
|
|
92
|
+
let _e90 = getFromColor((¶m));
|
|
93
|
+
let _e91 = q;
|
|
94
|
+
param_1 = _e91;
|
|
95
|
+
let _e92 = getToColor((¶m_1));
|
|
96
|
+
let _e94 = uniforms.progress;
|
|
97
|
+
let _e97 = p;
|
|
98
|
+
param_2 = _e97;
|
|
99
|
+
let _e98 = getFromColor((¶m_2));
|
|
100
|
+
let _e99 = p;
|
|
101
|
+
param_3 = _e99;
|
|
102
|
+
let _e100 = getToColor((¶m_3));
|
|
103
|
+
let _e102 = uniforms.progress;
|
|
104
|
+
let _e106 = uniforms.progress;
|
|
105
|
+
return mix(mix(_e90, _e92, vec4(_e94)), mix(_e98, _e100, vec4(_e102)), vec4((1f - (2f * abs((_e106 - 0.5f))))));
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
fn main_1() {
|
|
109
|
+
var param_4: vec2<f32>;
|
|
110
|
+
|
|
111
|
+
let _e20 = _uv_1;
|
|
112
|
+
param_4 = _e20;
|
|
113
|
+
let _e21 = transition((¶m_4));
|
|
114
|
+
_fragColor = _e21;
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
@fragment
|
|
119
|
+
fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
|
|
120
|
+
_uv_1 = _uv;
|
|
121
|
+
main_1();
|
|
122
|
+
let _e3 = _fragColor;
|
|
123
|
+
return _e3;
|
|
124
|
+
}
|
package/wgsl/luma.wgsl
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
// luma — WGSL, generated from https://github.com/gl-transitions/gl-transitions/blob/master/transitions/luma.glsl
|
|
2
|
+
// Author: gre
|
|
3
|
+
// License: MIT
|
|
4
|
+
// Description: A wipe that follows the brightness of a grayscale mask (the luma texture)
|
|
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(4)
|
|
19
|
+
var luma: texture_2d<f32>;
|
|
20
|
+
@group(0) @binding(0)
|
|
21
|
+
var<uniform> uniforms: Uniforms;
|
|
22
|
+
var<private> _fragColor: vec4<f32>;
|
|
23
|
+
var<private> _uv_1: vec2<f32>;
|
|
24
|
+
|
|
25
|
+
fn _texture_luma(uv: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
26
|
+
let _e14 = (*uv)[0u];
|
|
27
|
+
let _e16 = (*uv)[1u];
|
|
28
|
+
let _e19 = textureSampleLevel(luma, _sampler, vec2<f32>(_e14, (1f - _e16)), 0f);
|
|
29
|
+
return _e19;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
fn getFromColor(uv_1: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
33
|
+
let _e14 = (*uv_1)[0u];
|
|
34
|
+
let _e16 = (*uv_1)[1u];
|
|
35
|
+
let _e19 = textureSampleLevel(_from, _sampler, vec2<f32>(_e14, (1f - _e16)), 0f);
|
|
36
|
+
return _e19;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
fn getToColor(uv_2: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
40
|
+
let _e14 = (*uv_2)[0u];
|
|
41
|
+
let _e16 = (*uv_2)[1u];
|
|
42
|
+
let _e19 = textureSampleLevel(_to, _sampler, vec2<f32>(_e14, (1f - _e16)), 0f);
|
|
43
|
+
return _e19;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
fn transition(uv_3: ptr<function, vec2<f32>>) -> vec4<f32> {
|
|
47
|
+
var param: vec2<f32>;
|
|
48
|
+
var param_1: vec2<f32>;
|
|
49
|
+
var param_2: vec2<f32>;
|
|
50
|
+
|
|
51
|
+
let _e16 = (*uv_3);
|
|
52
|
+
param = _e16;
|
|
53
|
+
let _e17 = getToColor((¶m));
|
|
54
|
+
let _e18 = (*uv_3);
|
|
55
|
+
param_1 = _e18;
|
|
56
|
+
let _e19 = getFromColor((¶m_1));
|
|
57
|
+
let _e21 = uniforms.progress;
|
|
58
|
+
let _e22 = (*uv_3);
|
|
59
|
+
param_2 = _e22;
|
|
60
|
+
let _e23 = _texture_luma((¶m_2));
|
|
61
|
+
return mix(_e17, _e19, vec4(step(_e21, _e23.x)));
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
fn main_1() {
|
|
65
|
+
var param_3: vec2<f32>;
|
|
66
|
+
|
|
67
|
+
let _e13 = _uv_1;
|
|
68
|
+
param_3 = _e13;
|
|
69
|
+
let _e14 = transition((¶m_3));
|
|
70
|
+
_fragColor = _e14;
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
@fragment
|
|
75
|
+
fn main(@location(0) _uv: vec2<f32>) -> @location(0) vec4<f32> {
|
|
76
|
+
_uv_1 = _uv;
|
|
77
|
+
main_1();
|
|
78
|
+
let _e3 = _fragColor;
|
|
79
|
+
return _e3;
|
|
80
|
+
}
|