mcpField
T
threejs-temporal-surfaces

threejs-temporal-surfaces

github.com/scottsttsCreative & media94695 installsUpdated 6d ago
Repository

About threejs-temporal-surfaces

A skill for Three.js screen-space effects, covering wet-glass optics and persistent history accumulation. It distinguishes stored history from analytic procedural state and provides implementation guidance and routing boundaries.

Key features

  1. 01Choosing persistent or procedural evolution
  2. 02Ping-pong history and blur pipeline
  3. 03Wet-glass refraction and optical normals
  4. 04History decay and reset guidance

Use cases

  1. 01Creating glass with accumulated frost
  2. 02Implementing refractive window droplets
  3. 03Managing history in screen-space effects

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/scottstts/threejs-awesome-graphics-agent-skills --skill threejs-temporal-surfaces

After installing, type/threejs-temporal-surfacesin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

agents/
openai.yaml
examples/refractive-window-rain/
rain-window.frag
window-rain-effect.js
examples/touch-history-frost/
frost-surface-effect.js
references/
refractive-window-rain.md
ping-pong-accumulation.md

Details

From the project README

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.

This skill contains exemplary examples and assets beyond descriptive guidance, they're worth studying, referencing, or even copying. Use them sufficiently when relevant and do NOT blindly skip them.

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. Use $threejs-procedural-materials when a body must transmit its surroundings through its own volume rather than through a screen-aligned pane. This skill owns view-aligned wet-glass optics and screen-space persistent history.

Comments

Markdown supported