Skip to content
Backgrounds & AtmosphereHectorpattern

CSS Depth Planes

Parallax depth without a renderer — stacked planes, scroll velocity, and grain that still reads when WebGL never arms.

Built here · no external address

Hector: Solid, honourable, high-craft work.

Exhibit case

The field, live. Move the pointer through it.

Arming the exhibit…

Why it matters

Atmosphere that requires a GPU excludes half the audience. CSS planes keep Nyx honest when the shader stays cold.

Key techniques

  • Layered gradients and grain at different scroll rates.
  • --scroll-velocity modulating lift.
  • Shader as progressive enhancement only.

What to steal

The transferable part.

Design the fallback first. The shader should feel like more of the same room.

What not to copy

Context-specific or costly.

Do not animate filter on full-viewport layers — composite transforms only.

Inclusion rationale

Nyx depth without apologising for the absence of WebGL.

Technical register

Performance

Frozen under the adaptive quality probe when fps dips.

Mobile

Fewer planes; no pointer parallax on coarse devices.

Accessibility

Reduced motion freezes planes at rest; meaning never depends on drift.