Install
$ agentstack add skill-scottstts-threejs-awesome-graphics-agent-skills-threejs-procedural-fields ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Procedural Fields
Do not start by stacking noise. Start by defining the fields the object physically or stylistically needs.
Field contract
Before shader code, write a field bundle:
coordinates
→ macro form
→ meso structure
→ derived causes
→ material channels
Example:
sphereDirection
→ warpedDirection
→ elevation + ridges + craterDepth
→ slope + cavity + latitude + moisture
→ biome + color + roughness + bump
Required workflow
- Choose coordinates that remain stable under camera and object motion.
- Lock real or perceptual scale for each frequency band.
- Create named primary fields. Never hide the whole look in one expression.
- Derive secondary fields from causes: slope from normals, shore from sea-level distance, wear from exposure, dirt from cavity.
- Reuse the same fields across color, roughness, normal, displacement, emission, and scattering.
- Add debug output for every named field.
- Filter high-frequency fields by derivatives, tessellation density, or camera distance.
Read [references/field-stack-recipes.md](references/field-stack-recipes.md) before implementation. It records sphere, terrain, water, and structured-placement field contracts plus common parity defects.
Read the [procedural planet surface](../threejs-procedural-planets/examples/procedural-planet-surface/planet-system.js) for a shared CPU/GLSL field bundle whose height, continents, climate, biomes, roughness, and normals remain independently inspectable.
Non-negotiable rules
- Independent noise per channel produces visual soup. Share structure.
- Domain warp the coordinates, not every result.
- Warp spherical coordinates tangentially, then renormalize.
- Use different frequency bands for silhouette, regions, surface breakup, and micro-normal.
- Do not displace geometry with frequencies the mesh cannot represent.
- Keep categorical masks broad enough to avoid isolated “bubble” regions.
- Parameter names must describe perception:
ridgeWidth,coastBlend,cavityDarkening, notnoise3Amount.
Routing boundary
Use this skill when the shared field model is the task. Use $threejs-procedural-materials when the task is channel assembly and material response, and $threejs-procedural-planets when the deliverable is a complete planetary body.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: scottstts
- Source: scottstts/Threejs-Awesome-Graphics-Agent-Skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.