Skip to content
Back to skills

Backgrounds Gradients

ASecurity

Living backgrounds & moving gradients for motion-graphics videos — the layer that makes a frame feel alive instead of a static slide. Color-arc gradient that shifts per scene with drifting blobs, a soft mesh light-wash that glides across, blueprint line grids, dot-matrix fields, glowing neon curved paths with travelling light-dots, starfields, and grain/paper/paint texture overlays. Use when a scene looks flat or slide-like, when adding a moving gradient behind the whole piece, or matching a ...

  • 2 stars
  • 0 votes
  • 1 copy
  • 3 views
  • Added September 27, 2026
ai-agentsgo

Security analysis

A100/100

Scanned September 27, 2026

npx -y skills add JagZ999/explainer-video --skill backgrounds-gradients --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Backgrounds Gradients?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Backgrounds Gradients
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/jagz999-backgrounds-gradients/badge)](https://www.skillsdirectory.com/skills/jagz999-backgrounds-gradients)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: backgrounds-gradients
description: >-
  Living backgrounds & moving gradients for motion-graphics videos — the layer that makes a frame
  feel alive instead of a static slide. Color-arc gradient that shifts per scene with drifting
  blobs, a soft mesh light-wash that glides across, blueprint line grids, dot-matrix fields,
  glowing neon curved paths with travelling light-dots, starfields, and grain/paper/paint texture
  overlays. Use when a scene looks flat or slide-like, when adding a moving gradient behind the
  whole piece, or matching a reference reel's animated background. Triggers: "moving gradient
  background", "gradient that shifts through the video", "make the background alive", "mesh
  gradient wash", "blueprint grid", "dotted background", "neon lines", "starfield", "film grain /
  texture overlay".
---

# Backgrounds & Gradients

Family **B** of the **motion-graphics** super-skill. Drop-in building blocks live in the
shared library — from any skill in this plugin: `../motion-graphics/assets/motion.css` +
`motion.js`. Every effect scales by `--R` and is driven by **logical time `t`**, so it survives
slow-clock capture (see `smooth-render`).

```html
<link rel="stylesheet" href="../motion-graphics/assets/motion.css">
<script src="../motion-graphics/assets/motion.js"></script>
```

## Moves
| # | Name | Looks like | Build |
|---|---|---|---|
| B1 | **Color-Arc + Blobs** | palette shifts per scene; soft blobs drift | `.tm-gradbg + tmGrad + tmDrift` |
| B2 | **Mesh Wash** | a soft colored light-sweep glides across the frame | `.tm-mesh + tmMesh` |
| B3 | **Blueprint Grid** | faint technical line grid | `.tm-grid` |
| B4 | **Dot Matrix** | faint dotted grid field | `.tm-dots` |
| B5 | **Neon Path + Travellers** | glowing curved lines with light-dots running along them | `.tm-path + tmTravel` |
| B6 | **Starfield Drift** | tiny dots twinkle + parallax | `.tm-stars + tmStars` |
| B7 | **Texture Overlay** | grain / paper / halftone / paint-wash over the frame | `.tm-grainwrap / .tm-paint / .tm-halftone` |
| B8 | **Colour Flow Track** | the whole frame walks from one chapter's colour to the next, with no visible cut | `C(t)` track + three drifting fields — see below |
| B9 | **Mark-Driven Ground** | rings, a lit arc and a landing glow built around the element travelling through the frame | the `mark-driven-ground` skill |

## Rules that make these render-safe
- **Never `filter:blur()` / `backdrop-filter:blur()`** — headless Chromium/Edge software-rasterizes
  them and capture drops to ~5 fps. Softness is faked with radial-gradient falloff / translucent
  fills / directional text-shadow smears.
- Drive every time-based helper by your render clock's **logical time `t`**, never wall-clock.

## Colour flow track + smooth fields
Family B's other moves change palette **per scene** — the gradient is one colour, then it is another.
That works, but every change is a cut you can see. The alternative is to make the colour a
*continuous function of time* and let the frame arrive at each chapter's colour before the chapter
does.

**The track.** Author a piecewise-linear colour walk `C(t)` through `[time, colour]` pairs placed at
the **chapter midpoints**, not at the boundaries — so each chapter is fully its own colour in the
middle and is already becoming the next one at its end:
```js
const TRACK = [[0,'#c4b5fd'],[46,'#a5c8ff'],[75,'#3b7bf0'],[98,'#c24fc0'],
               [117,'#e06ab8'],[158,'#8c57ff'],[192,'#2bb39a'],[206,'#c4b5fd']];
// C(t): find the pair after t, lerp the two colours per sRGB channel by the position between them
```
**Three fields, one track — lead / current / lag.** Do not paint the whole background `C(t)`: that
is still one colour, just smoothly changing, and it reads as a wash of nothing. Give the frame three
soft fields and offset their sampling:

| field | samples | so that |
|---|---|---|
| lead | `C(t + 12)` | the *next* chapter's colour is already in the frame, arriving from one corner |
| current | `C(t)` | the chapter's own colour holds the middle |
| lag | `C(t − 9)` | the *previous* colour is still leaving from another corner |

Drift each on its own long period (47/53/59 s on x, 61/67/71 s on y) so they never beat against each
other. The change then reads as weather, not as a transition.

**Falloff and blur — the rule that decides whether it looks expensive.**
A field built as a *solid plateau with a hard stop* (`colour 0 55%, transparent 60%`) plus a small
blur looks like a **patch**: you can see exactly where it ends, and more blur only softens the seam.
A field with a **small solid core and a long falloff** — `radial-gradient(closest-side, c 0%, c 14%,
transparent 76%)` — reads as a wash even with **no blur at all**. Fix the falloff first; treat blur
as the last 5 %, and remember it is software-rasterized in headless capture (see the blur rule
above). If you do use it, go big (110–140 px at 2K) rather than tightening the gradient.

**Ground options.**
- *Light:* a pale lavender mist (`#ece8f6`) rather than white — pure white reads as an unfinished
  page, and the fields have nothing to sit on.
- *Dark:* a near-black brand ground (`#07050f`) plus a hero glow. Mid-saturation track colours go
  **grey** on black, so pull every field toward a deep violet (≈55 %) before painting it, and
  **lighten the accent glows toward white** (≈30 %) so they read as light sources rather than paint.

**Strength.** Treat the colour's share of the frame as a dial, not a constant: a 12 %-toward-white
tint at the low end, pure colour at full opacity in the middle, and at the top a 25 % wider field
with the gentle core above — bold enough that type sits *on* the colour rather than near it.

### Implementation
The code for all of it — `C(t)`, the three fields, light/dark grounds and the strength levels — is the
**mark-driven-ground** skill (`../mark-driven-ground/assets/ground.js`, `GROUND.colorAt(t)`), which
also couples the ground to an element travelling through the frame: rings along its flight path, a
lit arc behind it, and a glow where it lands.

## See also
The full menu across all 8 families (A–H, ~56 moves) is the **motion-graphics** master skill and its
[PLATTER.md](../motion-graphics/PLATTER.md). Ask for "the platter" to get the whole menu.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.