Shapes of the picture

These move the picture about: fold it, bend it, repeat it, shake it. Nothing is added and no colour is changed.

19 of the 94 effects: kaleidoscope, mirror, pixelate, waves, ripple, wobble, swirl, fisheye, tunnel, tile, droste, rotozoom, hexagons, glassTiles, frosted, heatHaze, caustics, shake, punch.

Each is one line to turn on. The value in the brackets is the one a plain number (or name) sets, and every other setting goes in by name: glow(0.8, { radius: 40 }), or in Python glow(0.8, radius=40). Every effect also has amount, from 0 to 1: how much of it is mixed in.

kaleidoscope

One slice of the picture, folded round and round. The slice starts at the middle and points right: turn it with angle.

JavaScriptPython
kaleidoscope(8)kaleidoscope(8)
SettingIn PythonStarts atCan be
segmentssegments82 to 32, a whole number
angleangle0-360 to 360 degrees
zoomzoom10.2 to 5
xxthe middlea place in the scene
yythe middlea place in the scene
amountamount10 to 1

mirror

One half of the picture shown on both sides, or one quarter in all four.

JavaScriptPython
mirror("left")mirror("left")
SettingIn PythonStarts atCan be
sideside"left""left", "right", "top", "bottom", "four"
amountamount10 to 1

pixelate

Big square pixels.

JavaScriptPython
pixelate(10)pixelate(10)
SettingIn PythonStarts atCan be
sizesize101 to 100
amountamount10 to 1

waves

The picture ripples like a flag in the wind.

JavaScriptPython
waves(12)waves(12)
SettingIn PythonStarts atCan be
sizesize120 to 100
lengthlength16010 to 1000
speedspeed0.5-5 to 5
amountamount10 to 1

ripple

Rings spreading from a point, as from a stone dropped in water.

JavaScriptPython
ripple(8)ripple(8)
SettingIn PythonStarts atCan be
sizesize80 to 100
lengthlength6010 to 1000
speedspeed1-5 to 5
xxthe middlea place in the scene
yythe middlea place in the scene
amountamount10 to 1

wobble

The picture wobbles like jelly, or something seen under water.

JavaScriptPython
wobble(14)wobble(14)
SettingIn PythonStarts atCan be
sizesize140 to 100
scalescale12010 to 1000
speedspeed0.4-5 to 5
amountamount10 to 1

swirl

The middle of the picture twisted round, like stirred paint.

JavaScriptPython
swirl(180)swirl(180)
SettingIn PythonStarts atCan be
angleangle180-1440 to 1440 degrees
radiusradius00 to 2000
xxthe middlea place in the scene
yythe middlea place in the scene
amountamount10 to 1

fisheye

A bulge, as through a round lens. Below zero it pinches instead.

JavaScriptPython
fisheye(0.5)fisheye(0.5)

Also called bulge.

SettingIn PythonStarts atCan be
strengthstrength0.5-1 to 1
radiusradius00 to 2000
xxthe middlea place in the scene
yythe middlea place in the scene
amountamount10 to 1

tunnel

The picture becomes the walls of a tunnel you are flying down.

JavaScriptPython
tunnel(0.4)tunnel(0.4)
SettingIn PythonStarts atCan be
speedspeed0.4-5 to 5
repeatrepeat21 to 12, a whole number
depthdepth0.50.05 to 4
xxthe middlea place in the scene
yythe middlea place in the scene
amountamount10 to 1

tile

The picture repeated in rows and columns.

JavaScriptPython
tile(3)tile(3)
SettingIn PythonStarts atCan be
acrossacross31 to 40, a whole number
downdown00 to 40, a whole number
flipflipfalsetrue or false (True, False)
amountamount10 to 1

droste

The picture inside itself, smaller each time, for ever. With a twist it winds in as a spiral.

JavaScriptPython
droste(3)droste(3)
SettingIn PythonStarts atCan be
zoomzoom31.2 to 10
twisttwist10 to 4, a whole number
speedspeed0.3-5 to 5
xxthe middlea place in the scene
yythe middlea place in the scene
amountamount10 to 1

rotozoom

The picture tiled, turning and zooming: an old demo-scene favourite.

JavaScriptPython
rotozoom(0.5)rotozoom(0.5)
SettingIn PythonStarts atCan be
speedspeed0.5-5 to 5
zoomzoom1.50.2 to 8
amountamount10 to 1

hexagons

Six-sided pixels, like a honeycomb.

JavaScriptPython
hexagons(14)hexagons(14)
SettingIn PythonStarts atCan be
sizesize143 to 100
amountamount10 to 1

glassTiles

Seen through a wall of glass blocks.

JavaScriptPython
glassTiles(40)glass_tiles(40)
SettingIn PythonStarts atCan be
sizesize406 to 300
strengthstrength0.40 to 1
amountamount10 to 1

frosted

Seen through frosted glass.

JavaScriptPython
frosted(6)frosted(6)
SettingIn PythonStarts atCan be
sizesize60 to 60
amountamount10 to 1

heatHaze

The shimmer of hot air rising.

JavaScriptPython
heatHaze(5)heat_haze(5)
SettingIn PythonStarts atCan be
sizesize50 to 60
scalescale405 to 400
speedspeed1-5 to 5
amountamount10 to 1

caustics

The net of bright lines that sunlight makes on the floor of a pool.

JavaScriptPython
caustics(0.5)caustics(0.5)
SettingIn PythonStarts atCan be
strengthstrength0.50 to 2
scalescale12020 to 600
speedspeed0.5-5 to 5
colourcolour"#bfe8ff"any colour
amountamount10 to 1

shake

The whole picture shakes. Set strength when something hits, and let it fall away.

JavaScriptPython
shake(10)shake(10)
SettingIn PythonStarts atCan be
strengthstrength100 to 200
speedspeed251 to 100
amountamount10 to 1

punch

A zoom in towards a point. Tie its strength to the beat.

JavaScriptPython
punch(0.15)punch(0.15)
SettingIn PythonStarts atCan be
strengthstrength0.15-0.9 to 4
xxthe middlea place in the scene
yythe middlea place in the scene
amountamount10 to 1