Skills

Threejs Procedural Planets

Author procedural planetary bodies in Three.js.

Install

npx skills add scottstts/Threejs-Awesome-Graphics-Agent-Skills --skill threejs-procedural-planets -g -a claude-code -y
Category
Engineering
Updated
13d ago
License
MIT
Context cost
Lightabout 656 tokens
Runs scripts
Yes, review before use

What it does

Author procedural planetary bodies in Three.js. Use for spherical terrain, continents, ridges, craters, biome masks, coastlines, material variation, analytic normals, altitude LOD, and bodies that must hold up from orbit through close approach.

Procedural Planets

Build a planet as a coupled field system evaluated on a unit direction. The same geological causes must drive geometry, color, roughness, normal, atmosphere handoff, and distance filtering.

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.

Required build order

  1. Establish planet-space direction, radius, sea level, and world-unit scale.
  2. Build macro silhouette fields before any surface material.
  3. Add named geological structures: continents, basins, ridges, craters, lava fields, or ice.
  4. Derive slope, cavity, altitude, latitude, exposure, and shoreline fields.
  5. Classify broad biomes from those causes.
  6. Derive displacement, color, roughness, and normal from the shared field bundle.
  7. Filter bands by represented mesh scale and camera altitude.
  8. Couple the material to atmosphere and lighting using the same planet transform.

Read references/planet-field-and-atmosphere-systems.md for terrain, biome, gas-giant, material, altitude-LOD, and atmosphere-handoff mechanisms, including a known CPU/GPU field-parity failure mode.

Read the procedural planet surface implementation and its shared terrain field for undeformed sphere coordinates, shared CPU/GLSL terrain, coupled biome and material causes, derivative bump, and altitude-filtered detail.

Non-negotiable constraints

Read the whole SKILL.md on GitHub

More in Engineering