Skip to content
Back to skills

Video To Particle Field

ASecurity

Turn video, images, and short scene clips into a dense live particle or ASCII field in a web interface. Use when asked for video-to-particles, pixelated video, ASCII video, point-cloud video, image-to-particle morphing, particle disintegration and reassembly, reactive cursor fields, or scroll-synchronized particle scenes. Builds a hidden-video sampling pipeline, stable particle identities, coherent scene morphs, responsive performance budgets, and reduced-motion behavior without exposing the ...

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 24, 2026
ai-agentspythongobashreactapiperformance

Works with

  • cursor
  • cli
  • api

Security analysis

A100/100

Pro scans all 9 files and shows the line behind each finding

Scanned September 24, 2026

npx -y skills add MTEnt/special-skills --skill video-to-particle-field --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Video To Particle Field?

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

Security grade badge for Video To Particle Field
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mtent-video-to-particle-field/badge)](https://www.skillsdirectory.com/skills/mtent-video-to-particle-field)

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: video-to-particle-field
description: |
  Turn video, images, and short scene clips into a dense live particle or ASCII
  field in a web interface. Use when asked for video-to-particles, pixelated
  video, ASCII video, point-cloud video, image-to-particle morphing, particle
  disintegration and reassembly, reactive cursor fields, or scroll-synchronized
  particle scenes. Builds a hidden-video sampling pipeline, stable particle
  identities, coherent scene morphs, responsive performance budgets, and
  reduced-motion behavior without exposing the ordinary source footage.
license: MIT
metadata:
  version: "1.0.0"
  author: MTEnt
---

# Video to Particle Field

Build a continuous visual material in which videos and images are visible only
through a dense particle, pixel, or ASCII field. Preserve particle identity
across scene changes so the field can disintegrate and reassemble instead of
crossfading between unrelated layers.

## Files to read

Read each selected file completely before implementation:

- Always: `references/canvas-pipeline.md` and
  `references/performance-and-accessibility.md`.
- For any transition between sources or scroll-controlled sequence:
  `references/morph-and-scroll.md`.
- Before changing code: `references/implementation-brief.md`. Fill it mentally
  from supplied context and ask only about unknowns that materially change the
  architecture.

For React work, copy and adapt the implementation under
`assets/react-video-particle-field/` instead of recreating the sampling engine.
Inspect source media before planning:

```bash
python3 scripts/inspect_media.py /absolute/path/to/source.mp4
```

## Non-negotiable visual contract

1. The source `<video>` is a decoder and timing source, not a visible layer.
   Keep it mounted and playing or seekable, but set its visual opacity to zero.
   Do not use `display: none`, which can stop decoding in some browsers.
2. The visible canvas begins in the particle material on the first frame. Never
   solve the entrance with ordinary footage that later crossfades to particles.
3. Reuse one stable particle population. Each particle keeps its identity,
   depth, phase, glyph seed, and one target per scene.
4. A scene transition has three legible states: coherent source, controlled
   disintegration, and coherent destination. Do not fade the source away and
   independently fade the destination in.
5. Keep headings, controls, descriptions, and accessibility content in semantic
   DOM elements. Canvas is atmosphere and imagery, never essential copy.
6. Match the project's existing visual system. Derive palette, typography,
   density, and motion language from the target product instead of applying a
   generic neon particle effect.

## Small progressive interview

Infer what is already present. Ask one compact question only when the answer
changes implementation materially:

- What is the source media, aspect ratio, duration, and ownership status?
- Is the target a React component, another framework, or framework-free canvas?
- Should the result preserve source RGB, quantize to a brand palette, or render
  monochrome glyphs?
- Are later scenes images, videos, geometry, or procedural layouts?
- Is scroll controlling a morph, scrubbing clip time, or triggering playback?
- What is the lowest device class that must remain smooth?

Do not conduct an interview when the repository and supplied assets already
answer these questions.

## Workflow

### 1. Inspect the incumbent surface

Read the target component, styling, design tokens, and motion preferences.
Inspect source media dimensions and duration. Identify the exact stacking
context so the canvas is visible behind DOM content without escaping the page.

### 2. Establish a performance budget

Choose particle count, sample resolution, frame-sampling cadence, and maximum
device-pixel ratio before coding. Start with the defaults in
`references/performance-and-accessibility.md`, then measure rather than assuming.

### 3. Build the live video sampler

Mount a muted, `playsInline` video at zero opacity. Draw its current frame to a
small offscreen canvas using the same `object-fit: cover` crop as the viewport.
Read that reduced pixel buffer and update each particle's visible scene color,
opacity, and size. The visible canvas renders the particle field every animation
frame while the expensive video sample updates less frequently.

### 4. Stylize without losing structure

Preserve luminance and edges because they carry faces, silhouettes, furniture,
and camera movement. Map sampled colors to the project's semantic palette when
the intended style is graphic. Use a stable mixture of micro-pixels and glyphs;
do not randomize glyph identity every frame.

### 5. Add coherent morph targets

Sample every destination image or video frame into the same normalized target
space. Assign each particle a destination using a stable spatial mapping. Apply
disintegration displacement only during the middle of the transition, while
interpolating the source and destination targets throughout. Follow
`references/morph-and-scroll.md`.

### 6. Connect motion to scroll

Translate scroll into a normalized scene value. Separate narrative state from
render state when the hero must remain coherent before breakup begins. Keep one
bounded horizontal or depth sequence if the concept requires it; do not hijack
ordinary page scroll for the entire document.

### 7. Handle interaction and lifecycle

Pointer influence may repel, focus, or locally increase particle coherence, but
must not replace the live video with an unrelated static image. Pause video and
animation work when the document is hidden or the field is no longer used.
Provide a static first-frame particle composition for reduced motion.

### 8. Verify in bounded passes

Run one desktop and mobile visual pass together. Check:

- ordinary source footage is never visible
- recognizable forms and motion survive particle reconstruction
- disintegration reads as the same particles leaving the source
- the destination becomes coherent before its chapter copy needs it
- scrolling backward reverses the transition cleanly
- resize preserves the correct crop and target layout
- browser console is clean
- reduced motion, semantic content, and controls remain usable

Fix the complete defect batch once, confirm once, and stop.

## Acceptance contract

The work is complete only when:

- the video element is visually hidden while continuing to decode
- the canvas is visible from the initial frame
- sampled frames visibly change over time
- one particle population carries every source and transition
- desktop and mobile use explicit budgets
- device-pixel ratio is clamped
- hidden-tab and reduced-motion behavior are implemented
- scroll transitions are reversible and free of ordinary crossfades
- local lint, type, build, and browser checks appropriate to the project pass

## Final response

Report the target route, source assets, particle budgets, transition model,
performance safeguards, verification performed, and any remaining media that
must be generated. Distinguish local proof from deployment or publication.

Files in this skill

  • SKILL.md7 KB
  • agents/openai.yaml254 B
  • assets/react-video-particle-field/VideoParticleField.tsx12 KB
  • assets/react-video-particle-field/video-particle-field.module.css280 B
  • references/canvas-pipeline.md4.5 KB
  • references/implementation-brief.md1.4 KB
  • references/morph-and-scroll.md4.6 KB
  • references/performance-and-accessibility.md3.6 KB
  • scripts/inspect_media.py3.1 KB

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…