Log inGet started
World

Cold Start

Branchmain
Commitcfc095f0fc

README.md

preseed.tendril.cave

Procedural cavern environment for the crawler part (p_tendril).

Cave.build(ctx, path, opts?) sweeps a cave-profile tube along the part's node path (flat dished floor, barreled walls, arched ceiling), displaces every ring vertex with 3-octave value noise plus low-frequency alcove carving, closes both ends with pinched dead-ends, and uploads the result as ONE runtime mesh. The tunnel entity carries a Tessellation component (level 2) whose negative displacement scale pushes micro-vertices outward into the rock from the material's rock_height map — clearance around the creature only ever grows, and the same map drives the shader's cavity shading so geometry and shading agree.

Around the tube it scatters shared-mesh formations, all wearing tendril_rock (triplanar cave_rock shader, so nothing needs UVs):

  • stalactites (3 lathe variants, bases sunk 1.3 m into pre-displacement rock)
  • stalagmites (2 terraced lathe variants) and floor rubble (3 displaced blobs)
  • full-height columns at the walls
  • Cave.spawnCrystalCluster(ctx, pos, scale) — faceted shard clusters wearing tendril_crystal; the caller adds its own Light.

Geometry generates lazily on first build and is cached module-level, so part re-entry re-uses the uploaded meshes. Every spawned entity is ctx.track'd for part teardown.