Generated caustic field asset used by the Three.js WebGPU skill pack

TSL-first · WebGPURenderer · Screenshot-backed validation

26 expert skills for ambitious Three.js WebGPU scenes.

Not a tutorial. A skill pack for agents — Claude Code, Codex, and any shell that loads local skill folders — that need to design, implement, debug, and prove advanced real-time graphics: oceans, atmospheres, planets, volumetric clouds, water optics, particles, shadows, and full node post pipelines.

npx skills@latest add linegel/threejs-complete-set-of-skill --skill '*'
26skills
45runnable examples
TSLnode-first architecture
PNG+JSONregression evidence

Usage

Install the complete pack with npx skills@latest add linegel/threejs-complete-set-of-skill --skill '*', or clone the repo where your agent can see it and invoke skills by name. Broad scene requests should use the in-pack router after the pack is installed; each skill carries its own references, agents, and runnable examples.

01

Install

List available skills first, then install the whole pack as one coherent graphics toolkit.

npx skills@latest add linegel/threejs-complete-set-of-skill --list
npx skills@latest add linegel/threejs-complete-set-of-skill --skill '*'
02

Route

Start broad requests with the router so only the relevant experts are loaded into context.

Use $threejs-choose-skills to plan a WebGPU/TSL
scene with an ocean at sunset, volumetric clouds,
camera flythrough, bloom, and validation.
03

Build & validate

Load the selected skills, build the visual cause first, then prove the frame with reproducible evidence.

Use $threejs-spectral-ocean and
$threejs-sky-atmosphere-and-haze, then
$threejs-visual-validation to verify the frame.

Install for your harness

Every skill is a plain folder — SKILL.md with YAML frontmatter, references/, agents/, and runnable examples/ — so skills CLI, skills.sh, and any agent that reads local files can use the pack. Machine-readable index: skills.json · plain-text overview for LLMs: llms.txt.

01

skills CLI

Use the open skills installer to list the pack, then install every top-level threejs-* skill folder as one coherent graphics skill pack for your selected agent.

npx skills@latest add linegel/threejs-complete-set-of-skill --list
npx skills@latest add linegel/threejs-complete-set-of-skill --skill '*'
02

Claude Code

Install through skills CLI, or symlink/copy the skill folders into a personal or project skills directory.

npx skills@latest add linegel/threejs-complete-set-of-skill --skill '*' -a claude-code -g -y
# manual fallback:
git clone https://github.com/linegel/threejs-complete-set-of-skill.git
ln -s "$PWD/threejs-complete-set-of-skill"/threejs-* ~/.claude/skills/
03

Codex CLI

Install the whole pack through skills CLI when available. For local checkouts, keep AGENTS.md pointed at the repo-local threejs-*/SKILL.md files as the authoritative source.

npx skills@latest add linegel/threejs-complete-set-of-skill --skill '*' -a codex -g -y
# local checkout fallback: read ./threejs-*/SKILL.md when a task matches
04

Cursor / Gemini / generic agents

Any harness that can read local files works: each skill is a self-contained folder with SKILL.md, references/, agents/, and examples/. The machine-readable index lives at skills.json; a plain-text overview at llms.txt.

git submodule add https://github.com/linegel/threejs-complete-set-of-skill.git skills/threejs
curl -s https://linegel.github.io/threejs-complete-set-of-skill/skills.json | jq '.install.source, .skills[].name'
curl -s https://linegel.github.io/threejs-complete-set-of-skill/llms.txt

Skill catalog

One owner for depth, tone mapping, and output color. Build the visual cause first; use post to preserve it. Validate with evidence, not one attractive screenshot. Every card opens a dedicated page with the approach, math, gallery, and full skill text.

Planning and Validation

Route requests to the right experts, diagnose version-dependent failures, and prove results with reproducible evidence.

Cameras, Lighting, and Final Image

Who owns depth, tone mapping, and the last pass — the difference between a demo and an image.

05

Camera Controls and Rigs

Build advanced Three.js WebGPU/TSL camera controls and rigs. Use for scale-aware chase rigs, thrust lag, side/orbit cameras, body-relative up vectors, quaternion handoffs, authored cinematic framing, floating origins with storage-buffer world offsets, pointer-look controls, camera collision constraints, projection/depth ownership, node post-pipeline integration, and lifecycle restoration.

$threejs-camera-controls-and-rigs · 1 example
06

Scalable Real-Time Shadows

Implement scalable real-time WebGPU/TSL shadow systems for Three.js. Use for dynamic scenes, bounded lights, cascades, tiled projections, streaming open worlds, cached clipmaps, ShadowNode hooks, texel stabilization, update budgets, targeted invalidation, and node-material caster parity.

$threejs-scalable-real-time-shadows · 1 example
07

Ambient Contact Shading

Implement production ambient contact shading and ambient occlusion in latest Three.js with WebGPURenderer, TSL, RenderPipeline, GTAONode, TRAANode integration, half-resolution node passes, bilateral reconstruction, and optional custom bent-normal extensions.

$threejs-ambient-contact-shading · 1 example
08

Bloom

Implement production bloom in advanced Three.js WebGPU/TSL scenes. Use for RenderPipeline HDR signal ordering, MRT emissive-output selective bloom, BloomNode controls, scene-relative emissive hierarchy, resolution-scale budgets, and effect-isolation diagnostics.

$threejs-bloom · 1 example
09

Exposure and Color Grading

Build a maximum-performance WebGPU/TSL exposure and grading path in Three.js. Use for compute-reduced luminance metering, storage-buffer exposure state, shader-side asymmetric adaptation, single tone-map/output ownership, and post-tone-map lut3D color grading.

$threejs-exposure-color-grading · 1 example
10

Image Pipeline

Build a maximum-performance WebGPU/TSL final-image pipeline for advanced Three.js scenes. Use for RenderPipeline ownership; pass()/mrt() depth, normal, albedo, emissive, velocity, and history signals; GTAONode, BloomNode, TRAANode, exposure, tone mapping, 3D LUT grading, outputColorTransform, and pass diagnostics.

$threejs-image-pipeline · 2 examples

Worlds and Environments

Skies, oceans, weather, and water that share causes instead of fighting each other.

11

Sky, Atmosphere, and Haze

Implement maximum-performance sky, atmosphere, and haze systems in latest Three.js with WebGPURenderer, TSL, NodeMaterial, RenderPipeline, compute-generated scattering LUTs, depth-aware aerial perspective, sun/moon discs, and atmosphere-aware lighting.

$threejs-sky-atmosphere-and-haze · 2 examples
12

Volumetric Clouds

Implement maximum-performance volumetric cloud systems in latest Three.js with WebGPURenderer, TSL, NodeMaterial, node RenderPipeline passes, compute/storage textures, temporal reprojection, cloud shadows, and scalable quality tiers.

$threejs-volumetric-clouds · 2 examples
13

Spectral Ocean

Build large procedural oceans in latest Three.js with WebGPURenderer, TSL compute FFT cascades, StorageTexture ping-pongs, NodeMaterial shading, node post pipelines, multi-cascade wavelength bands, clear-water optics, above/below surface rendering, spectral derivatives, Jacobian whitecaps, temporal foam, analytic sky reflection, underwater absorption, crest scatter, and GPU validation.

$threejs-spectral-ocean · 4 examples
14

Water Optics

Build production WebGPU/TSL analytic and bounded water in Three.js. Use for compute StorageTexture heightfield simulation, TSL shared multi-wave displacement and normals, local drops, object ripples, differential-area caustics, depth-aware node refraction, NodeMaterial water optics, Beer-Lambert absorption, side-aware Fresnel, derivative-filtered normal bands, analytic sky reflection, and crest foam.

$threejs-water-optics · 3 examples
15

Rain, Snow, and Wet Surfaces

Build coupled WebGPU/TSL rain, snow, and wet-surface systems in Three.js. Use for compute-driven falling snow, rain streaks, snow accumulation, model snow caps, wet asphalt puddles, procedural or generated ripple normals, splash flipbooks, shared weather envelopes, and surface wetness or coverage transitions.

$threejs-rain-snow-and-wet-surfaces · 3 examples

Procedural Content

Fields, materials, geometry, buildings, planets, vegetation, creatures — authored systems, not noise soup.

16

Procedural Fields

Build coherent WebGPU/TSL procedural scalar and vector fields for Three.js NodeMaterials, compute bakes, storage textures, terrain, planets, wear, biomes, clouds, water masks, displacement, roughness, normals, domain warping, and visuals where many channels derive from shared causes.

$threejs-procedural-fields · 1 example
17

Procedural Materials

Author production WebGPU/TSL procedural materials in Three.js. Use for NodeMaterial PBR identity fields, atlas and triplanar filtering, specular AA, planet-space material fields, terrain wetness, lava and hot emissive procedural surfaces, raymarched material fields, per-instance dissolve, derivative normals, and authored physical response bundles.

$threejs-procedural-materials · 2 examples
18

Procedural Geometry

Build production procedural mesh systems in latest Three.js WebGPU/TSL. Use for sculpted rail and frame profiles, oriented branch rings, semantic indexed BufferGeometry writers, explicit material slots, BatchedMesh versus InstancedMesh decisions, typed-array update paths, NodeMaterial surfaces, and close-inspection geometry budgets.

$threejs-procedural-geometry · 2 examples
19

Procedural Buildings and Cities

Build authored procedural buildings, facades, and city kits in latest Three.js WebGPU/TSL. Use for massing grammars, exposed-edge analysis, facade bays, profiles, arches, cornices, roofs, ornaments, material-slot BatchedMesh or merged BufferGeometry compilation, deterministic variants, NodeMaterial identities, and procedural city assets.

$threejs-procedural-buildings-and-cities · 2 examples
20

Procedural Planets

Author high-performance procedural planetary bodies in latest Three.js with WebGPURenderer, TSL, NodeMaterial, cube-sphere quadtree LOD, GPU displacement, coupled crater/biome/climate fields, analytic normals, altitude LOD, and atmosphere handoff from orbit through close approach.

$threejs-procedural-planets · 2 examples
21

Procedural Vegetation

Generate authored procedural trees, grass, and vegetation in latest Three.js with WebGPURenderer, TSL, NodeMaterial, compute storage buffers, rooted wind, chunked LOD, species presets, trunks, branches, roots, canopies, leaf cards, trellises, and deterministic vegetation diagnostics.

$threejs-procedural-vegetation · 5 examples
22

Procedural Creatures

Build high-quality procedural and generated creatures in Three.js WebGPU/TSL. Use for spec-driven creature bodies, skeleton/control rigs, SDF blend-shell or generated/hybrid skins, procedural gait/hop/flight/swim locomotion, foot planting and 2-bone IK, verlet tails and ears, squash-and-stretch, toon fauna and NPCs, creature crowds, deterministic creature labs, and genetic creature variation. Not for imported glTF skinned-clip pipelines.

$threejs-procedural-creatures · 1 example

Motion and Effects

Kinematics, particles, surface history, and spacetime — motion with frame-rate-independent discipline.

23

Procedural Motion Systems

Build high-performance procedural motion systems in Three.js WebGPU/TSL. Use for launch kinematics, gravity turns, staging, spin docking, target-frame decomposition, spring-follow motion, rotating-frame alignment, peeling debris, analytic transform timelines, frame-rate-independent response, storage/instanced animation, and quaternion control.

$threejs-procedural-motion-systems · 1 example
24

Particles, Trails, and Effects

Author production WebGPU/TSL particles, trails, and real-time effects in Three.js. Use for ship-conforming reentry plasma, generated capsule wakes, compute-updated instanced sparks, timed dissolving debris, dense-swap effect pools, and MRT-driven scene-relative HDR emission hierarchy.

$threejs-particles-trails-and-effects · 2 examples
25

Dynamic Surface Effects

Build dynamic screen-space surface effects in latest Three.js WebGPU/TSL. Use for StorageTexture touch-history ping-pong, dt-correct frost/thaw masks, reduced-resolution node blur, static crystalline structure targets, and two-scale TSL normal refraction.

$threejs-dynamic-surface-effects · 2 examples
26

Black Holes and Space Effects

Build WebGPU/TSL black holes, wormholes, accretion disks, and curved-ray space effects in Three.js. Use for black-hole lensing, accretion disks, wormholes, curved-ray integration, procedural star fields, relativistic-looking distortion, bounded volumetric structures, and GPU effects that need controlled numerical integration.

$threejs-black-holes-and-space-effects · 2 examples

Live WebGPU demos

GitHub Pages demos that initialize WebGPU in the browser. They are integration probes and reduced-tier provider surfaces, not substitute production engines.