Op Art

Hypnotic Truchet mazes, pulsing stripe tunnels and moiré, with one red wave flooding through the pattern.

1:1Medium pace7shypnoticgraphicprecise

Optical-art style for exhibitions, festivals, music releases and product drops that want to stop the scroll. Seeded Truchet tile mazes re-wire themselves as rotation waves sweep across the grid, a red ripple runs through the arcs, a tunnel of concentric rings XORs against rotating spokes, and chunky geometric type is punched out of solid plates so the pattern shows through the letters. Strict black and cream with a single red accent, small mono spec labels in black tags in the corners, and a moiré end card.

Use this style

With Frame Jam installed, press Use this style in the local gallery, or just ask your agent:

Make a video with the Frame Jam style "op-art" and open it for review.

Palette

ink#0d0d0c
cream#efe8da
red#e8402a
pink#f2a493

Type

Display
Unbounded 900Uppercase knockout words 176–250px cut out of solid plates via SVG masks; 92px on the end card
Body
IBM Plex Mono 500Spec labels 15px uppercase, tracking 0.12em, cream on black tags

Motion

TileRotate
smoothstep (per-tile, staggered by distance)
Plate
expo.out
PlateSwap
back.out(3)
Tunnel
none
EndCard
expo.out
Average shot
1.75s

Four pattern systems, ~1.4–2.2s each. The pattern itself never stops moving: rotation waves take ~1.2s to cross the grid, the tunnel streams outward continuously.

Transitions and text

  • hard cut between pattern systems (maze → tunnel → inverted maze → moiré)
  • solid plates wipe in across the pattern and carry knocked-out type
  • palette inversion: cream-on-black maze becomes black-on-cream
  • type is a hole in a plate: the plate grows from a 0-height line and the pattern shows through the letters
  • word swap inside the same plate with a back.out bump
  • date block scales up from scaleY 0, tag line rises 30px
  • end-card words rise 40px with expo.out, 0.1s stagger

Style guide your agent follows

  1. Palette is strictly #0d0d0c and #efe8da plus one accent red #e8402a (pink #f2a493 only as the soft edge of the red wave). No other colours, no gradients.
  2. Truchet maze: 12–16 tiles across, each tile two quarter-circle arcs (stroke 30% of tile size), orientation from a seeded PRNG. Animate rotation waves: each tile turns +90° with smoothstep over ~0.4s, delayed by its distance from an origin (whole grid in ~1.2s).
  3. Colour the accent by distance, not by tile: an expanding ring (band ~70px red, ~80px pink edge) or a flood front from a corner.
  4. Tunnel: ~24 concentric rings (stroke = half the spacing) streaming outward with a breathing spacing, XORed with 28 rotating spokes via mix-blend-mode: difference.
  5. Type is always knocked out of a solid plate (SVG mask) in Unbounded 900 uppercase, one short word per plate; plates wipe in with expo.out. Keep words ≤5 letters at 176–250px on 1080.
  6. Corner labels: IBM Plex Mono 15px uppercase in black tags with red separators (title, seed, tile count, scene n / 4).
  7. End on a moiré of two offset concentric ring sets behind a black disc with a red rim and the name; avoid soft fades and drop shadows.