back to the projects

Distorsion Movement

A grid of shapes, bent by math, redrawn 60 times a second

Distorsion Movement screenshot
Distorsion Movement

Overview

Distorsion Movement draws a grid of shapes and bends it with math. Pick from a dozen shapes, 20 distortions and 20 palettes, and it redraws thousands of shapes at 60fps while you change the settings. You can save a frame as a PNG, record an animated GIF, or keep the whole scene in a YAML file.

Why I built this

After a generative art exhibition in Nantes, I wondered if I could reproduce some of the simpler pieces. I kept making it more complex, mostly because watching it move is hypnotic.

Features

  • 12+ shapes. Squares, circles, triangles, hexagons, pentagons, stars, diamonds, Koch snowflakes, rings, yin-yangs, leaves and ellipses.
  • 20 distortions. Sine waves, Perlin noise, swirls, ripples, lens effects, moiré patterns and more.
  • 20 palettes. Rainbow, neon, cyberpunk, thermal, vaporwave, sunset and others.
  • 60fps. Thousands of shapes on screen, redrawn every frame.
  • Export. Save a frame as a PNG or record an animated GIF.
  • Scenes. Save a configuration to a YAML file and load it back later.

Tech stack

Core

Python pygame numpy scipy

Visualization

matplotlib Pillow imageio

Tools

PyYAML pytest