16:9 preview · open this file directly in any browser
16:9
9:16
Color Cycle
Colors (up to 6)
+ Add color
Transition speed (fade)
ms
Duration of the smooth fade between each color.
Hold time (per color)
ms
How long each color stays before fading to the next.
Get embed code
Waves
Wave type
Sine
Triangle
Square
Sawtooth
Wave colors
+ Add color
Spread evenly across the layers — a gradient from the first color to the last.
Background color
Speed
8
Direction
Left
Right
Amplitude
40
px
Wavelength
320
px
Layers
3
Stacked semi-transparent waves at different speeds for depth.
Distance between waves
9
Vertical gap between stacked layers (0 = all on the same line).
Rotation
0
°
Blur
0
px
Soft-focus blur over the waves.
Noise overlay
Enable noise
Shape
Pixels (squares)
Dots (circles)
Crosses
Blend mode
Pass through
Normal
Darken
Multiply
Color burn
Lighten
Screen
Color dodge
Overlay
Soft light
Hard light
Difference
Exclusion
Hue
Saturation
Color
Luminosity
Grain size
2
px
Density
40
Opacity
35
Higher = more visible (less transparent).
Noise color
Export video…
Get embed code
Matrix
Background color
Character color
Character types
Unknown glyphs (katakana)
Numbers (0–9)
Latin letters (A–Z)
Fall speed
ms
Base time for a column to fall one screen. Lower = faster. Each column varies ±40% so they don't move in lockstep.
Regenerate
Halftone
Image
Upload any image or animated GIF. GIFs are halftoned live, frame by frame; every control below updates in real time.
Dot spacing
6
px
Dot size
100
%
Max dot radius relative to the cell (over 100% lets neighbours touch/overlap).
Screen angle
30
°
Contrast
1.6
Brightness
0
Dot color
(small)
Dot color 2
(large)
Dots blend from color 1 (small/light) to color 2 (large/dark). Same value = solid.
Background color
Dot shapes (mix any)
Round
Square
Diamond
Characters
Cells that get a character show a random matrix glyph, sized by brightness. Re-rolls with Shuffle.
Glyph set
Katakana
Numbers
Latin
Shuffle glyphs
Zoom
100
%
Zooms into the centre of the image before halftoning.
Playback speed
1.0
×
Speeds up or slows down animated GIF playback (and matches in GIF/WebM export). No effect on a static image.
Image fit
Contain (whole image)
Cover (fill frame)
Invert (light areas get the big dots)
Second halftone layer (on top)
Layer 2 opacity
100
%
Dot spacing
8
px
Dot size
100
%
Screen angle
45
°
Contrast
1.6
Brightness
0
Invert
Dot color
(small)
Dot color 2
(large)
Dot shapes (mix any)
Round
Square
Diamond
Characters
Glyph set
Katakana
Numbers
Latin
Shuffle glyphs
Export…
Choose file name, format (PNG / GIF / WebM) and resolution (up to 4K) in the export dialog.
Interactive Grid
Move your mouse over the preview to push the dots around.
Shape
Dots
Squares
Rhombs
Dot size
6
px
Spacing
30
px
Dot color
Background color
Mouse gravity
Radius
120
px
How far from the cursor dots are affected.
Intensity
40
Strength of the push.
Direction
Push away from mouse
Pull in toward mouse
Angle
0
°
Rotation offset on the force: 0° = straight in/out · 90° = swirl around the cursor.
Return speed
8
How quickly dots spring back home.
Friction
85
Higher = looser, bouncier motion.
Get embed code
Export halftone
File name
Format
PNG — still image
GIF — animation
WebM — video
Resolution
Preview size
Full HD (1080p)
4K (2160p)
Exporting…
Cancel
Export
Embed code
HTML + JS
JS only
Close
Download .html
Copy
Export waves video
File name
Format
WebM
MP4
Resolution
720p
1080p
1440p
4K (2160p)
Duration
6
s
Recording…
Cancel
Export