mcpbeat

Threejs Temporal Surfaces

scottstts/threejs-temporal-surfaces

Build view-aligned and screen-space surface effects in Three.js. Use for touch-history frost and thaw, ping-pong accumulation, reduced-resolution blur, crystalline masks, two-scale refraction, and procedural rain droplets that refract and blur a background through wet glass.

20k tokens
context cost
the whole folder, loaded on every use
10
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
527
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/scottstts/Threejs-Awesome-Graphics-Agent-Skills --skill threejs-temporal-surfaces

The instruction itself

4 sections, as written by the author

Temporal Surfaces

Choose persistent history or procedural screen-space evolution explicitly. Do

not fake accumulation with time-only noise, and do not allocate history for an

effect whose complete state is analytic in time.

Pipeline

persistent surface: input -> ping-pong state -> blur -> structure -> refraction
procedural surface: time/coverage -> analytic field -> optical normal -> refraction/blur

Read references/ping-pong-accumulation.md

for an exact frost pass graph, pointer-history channels, blur and refraction

coupling, and implementation defects that must be corrected.

Read the

touch-history frost implementation for the

previous/deposit/next state transition, reduced blur, static structures,

frost-mask composition, and two-scale refraction.

Read references/refractive-window-rain.md

and the

refractive window rain implementation

for layered static and travelling droplets, finite-difference optical normals,

background refraction, stochastic disc blur, aspect fill, and presentation.

Rules

  • Separate persistent state, analytic procedural state, and scene color.
  • Preserve separate visible-mask and tilt-response channels.
  • Use half-float for this history path unless a measured lower format is equivalent.
  • Convert per-frame history decay to frame-rate-independent decay.
  • Run the two-pass scene blur at reduced resolution.
  • Pre-render static procedural textures once.
  • Define and test resize/reset behavior for both history targets and static targets.
  • Do not route world footprints, object-UV paint, or simulation-plane wetness here; this skill is view-aligned or screen-space.

Routing boundary

Use $threejs-procedural-vfx for world- or object-space residue and particles.

Use $threejs-precipitation-surfaces for world-space rain, puddles, snow, and

weather-surface coupling. This skill owns view-aligned wet-glass optics and

screen-space persistent history.

How to use it

Copy the folder

Take scottstts/threejs-temporal-surfaces from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.