threejs-atmosphere-aer…
Implement physically motivated sky and aerial-perspective systems in Three.js. Use for planetary atmospheres, ground-to-space…
Author production procedural materials in Three.js. Use for hybrid texture-backed PBR soil and moss with procedural displacement and masks, upward-facing model moss accumulation, atlas filtering, specular AA, planet-space fields, terrain wetness, deformable granular sand with
$ npx -y skills add scottstts/threejs-awesome-graphics-agent-skills --skill threejs-procedural-materials --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/threejs-procedural-materialsContext preview
The summary Claude sees to decide when to auto-load this skill.
Author production procedural materials in Three.js. Use for hybrid texture-backed PBR soil and moss with procedural displacement and masks, upward-facing model moss accumulation, atlas filtering, specular AA, planet-space fields, terrain wetness, deformable granular sand with
name: threejs-procedural-materials description: Author production procedural materials in Three.js. Use for hybrid texture-backed PBR soil and moss with procedural displacement and masks, upward-facing model moss accumulation, atlas filtering, specular AA, planet-space fields, terrain wetness, deformable granular sand with mass-coupled grain shading, simulated tearable denim with implicit yarn mechanics, wear-driven failure and frayed fibres, woven cloth with GPU XPBD mechanics and yarn microstructure, simulated fur with interactive grooming and strand shading, lava and emissive surfaces, reflective wave-optical diffraction gratings, air-film-air soap bubbles with Airy interference, raytraced diamond and gem refraction with internal reflection and dispersion, image-space glass transmission with spectral dispersion and volume absorption, deforming softbody jelly materials with XPBD mechanics and refractive caustics, per-instance dissolve, authored PBR identities, derivative normals, and custom direct-light shadow modulation.
Build a material from surface identity and causes. Color, roughness, metalness, normal, transmission, and emission should describe the same surface—not unrelated noise textures.
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.
stable coordinates → structural fields → material identity weights → causal modifiers → filtered microstructure → PBR channels → lighting/shadow extensions
Read [references/procedural-pbr-system.md](references/procedural-pbr-system.md) for atlas filtering, specular AA, planetary coordinates, world-height wetness, per-instance dissolve, and authored PBR response bundles.
Read the [sculpted gallery frame geometry](../threejs-procedural-geometry/examples/sculpted-gallery-frame/frame-geometry.js) for walnut, antique-gold, and ebony texture/roughness/metalness/clearcoat bundles under a grazing-light setup.
Read the [procedural planet surface](../threejs-procedural-planets/examples/procedural-planet-surface/planet-system.js) for shared geological, climate, water, biome, roughness, and derivative-normal causes on a procedural planetary surface.
Read the [lava flow surface material](examples/lava-flow-surface/lava-surface.js) for raymarched procedural height fields whose normals, rock/lava identity, emission, glow, embers, fog, and grain are coupled to one material cause stack.
Read the [raytraced diamond material](examples/raytraced-diamond/diamond-material.js) for a gem whose mesh is its own optical volume: camera-ray entry refraction, a GPU BVH first-hit loop with bounded total-internal-reflection bounces, per-channel IOR dispersion, mip-correct environment exit sampling, and live camera-matrix uniforms.
Read the [spectral dispersive glass material](examples/spectral-dispersive-glass/spectral-glass-material.js) for a transmissive body solved in image space: a double-sided back-face data pass with inverted depth, an iterative interior exit search, bounded total internal reflection, Beer-Lambert absorption over the true path length, and a per-wavelength Cauchy index recombined through CIE 1931. Its reusable optical primitives — exact unpolarised Fresnel, Cauchy coefficients, spectral weights, the rotatable environment probe, and the buffer projection — live in [glass optics](examples/spectral-dispersive-glass/glass-optics.js), and [references/dielectric-glass-optics.md](references/dielectric-glass-optics.md) carries the two-pass contract, buffer format, search bounds, and transmission diagnostics.
Pick between the two transmissive paths by geometry, not by quality. A closed faceted gem whose exit facet must be exact even when it faces away from the camera takes the BVH path. A scanned, assembled, open-sheet, or multi-shell body takes the image-space path, which tolerates inconsistent winding and authored normals pointing either way but cannot see a surface outside the frame.
Read [references/physical-diffraction-grating.md](references/physical-diffraction-grating.md) for the exact embossed-field, CIE/blackbody spectral, phase-grating, Bessel order-efficiency, coherence-broadening, strip-emitter, additive-layer, stable object-frame, limitation, and diagnostic contracts.
Read the [physical diffraction-grating implementation](examples/physical-diffraction-grating/physical-diffraction-grating.js) for a printed substrate plus additive HDR foil response whose star and stripe masks select local groove angle, pitch, and relief while wavelength alone owns spectral colour. Its complete optical model is expressed as a pure TSL graph with `Fn`, `If`, and `Loop`, without embedded native shader source.
Read [references/thin-film-soap-bubble-system.md](references/thin-film-soap-bubble-system.md) for the air-film-air Airy equation, representative RGB spectral bands, two-membrane blending, bounded secondary reflection, capillary mechanics, camera-aware inflow, puncture retraction, limits, and diagnostics.
Read the [thin-film soap bubble system](examples/thin-film-soap-bubbles/soap-bubble-system.js) when soap-film interference must drive the image: it provides wavelength- dependent aqueous index, front and rear membrane passes, analytic nearby- bubble reflection, volume-preserving capillary modes, buoyancy and drag, Taylor-Culick rupture, visible-drop aftermath, and deterministic physics gates.
Read the [softbody jelly implementation](examples/softbody-jelly/softbody-jelly.js) for a deforming flower-shaped transmissive body whose tetrahedral XPBD state, smooth optical shell, view-ray thickness, BVH refraction, absorption, receiver shadow, and finite RGB caustic fields remain coupled.
Read the [deformable sand implementation](examples/deformable-sand/deformable-sand.js) for a fixed-step granular heightfield whose conservative tr
Example gallery to visually inspect included examples This is a Three.js agent skills pack for producing awesome graphics.
Implement physically motivated sky and aerial-perspective systems in Three.js. Use for planetary atmospheres, ground-to-space…
Implement production bloom in advanced Three.js scenes. Use for HDR signal ordering, bloom-node controls, dual selective bloom…
Direct advanced Three.js camera systems. Use for scale-aware chase rigs, thrust lag, side/orbit cameras, body-relative up…
Build a measured exposure and grading path in Three.js. Use for a 64x36 encoded luminance meter, asynchronous readback, weighted…
Build a deliberate final-image pipeline for advanced Three.js scenes. Use for depth, normal, albedo, and history ownership; GTAO…
Build silhouette-aware parallax occlusion mapping in Three.js WebGPU and TSL. Use for height-field ray marching, relief UVs,…