Files
VoxelForge/Standalone/Research/WorldAssemblerM3/Research1/REPORT.md
T
Fr0zkaandClaude Opus 5.5 3e443bf81c wip(assembler): round L37 -- FI mouth carve-fade fix, no raised bridge (style 0); research R1
The passage mouth fade multiplied the signed carve distance by zero, which turned native rock into an
open surface (the reason earlier rounds stamped walk pads at mouths); it now blends between the
uncarved field and the full signed carve. The FI style-0 route followed a lifted grade envelope over
the crater (the "bridge"); it now runs on the rim and follows the native surface. New built-shape and
crease audits with thresholds frozen before the fix (L36 and box controls fail). 24/24 passage rows,
30/30 determinism, 16/16 invariants, 18/18 interface/ring. Unreal: one recipe setter (uncompiled).
Research R1 (read-only, web): ranked proposals for natural walkable mouths, floor-limited carve first.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016dhxM43dnWvUu2B5Ph1iG1
2026-10-23 05:51:50 +02:00

6.8 KiB
Raw Blame History

Research R1 — natural, walkable cave mouths and tunnels

What the references show

  • Deep Rock Galactic separates room/exit structure from biome noise and debris; designers test generated variants for traversal and wayfinding. Minecraft 1.18 distinguishes caverns from spaghetti and noodle tunnels, and its noise caves form entrances where they intersect the surface. These support a planned route plus a terrain-native mouth, not a portal stamp. Ghost Ship’s cave-generation post, Mojang 1.18 notes
  • Astroneer describes layered on-the-fly noise with separate cave layers. No Man’s Sky identifies navigable caves as a goal and documents dual marching-cubes performance work, but does not publish the cave-shape algorithm. Use these as support for deterministic layers and navigation goals, not as evidence of a specific implementation. Astroneer, NMS terrain, NMS meshing
  • Enshrouded describes sculpted macro-topology and hand-placed voxel stamps. Valheim documents room assets used by its dungeon generator; Teardown documents VoxTool for complex voxel terrain assets. These are topology/tooling examples, not disclosed SDF mouth techniques. Enshrouded, Valheim, Teardown
  • Cave research separates playable topology from cave appearance. A karst SDF paper models irregular cross-sections and warns that curved sweeps can lose continuity at high curvature; tortuous paths use a union of spheres. Erosion papers model morphology at generation time, not per voxel. Playable cave systems, geological cave SDFs, karst erosion

These references do not guarantee VoxelForge’s walk-only contract. Keep its deterministic route, 0.34 m × 1.76 m capsule, supported floor, and slope checks authoritative.

Ranked proposals

Rank Proposal and code location Expected gain Main risk / cost
1 Limit the carve by a route floor. Keep grade-safe route/floor data in PlanResolvedLayoutPassagesV1; in ApplyResolvedStratePassageCarves, constrain the tunnel void to above that floor and subtract it from native solid. For negative-is-solid fields: void = max(tubeSdf, floorZ - z), then carvedSolid = max(nativeSolid, -void). Blend the floor to native terrain height along route distance. Replace broad decks where native rock supports the route; keep only narrow fallback support where it does not. Best chance of a worn path that remains part of the crater/rock instead of reading as a platform. The floor stays explicit and testable. Medium walkability risk where the source has no solid underfoot or where FI coils overlap. Keep capsule, support, open-air, and slope gates. Low-to-moderate per-sample cost.
2 Blend the mouth along route distance. Refine mouthCarveFade / roughSignedDistance in ApplyResolvedStratePassageCarves (around lines 1168–1209) with a local smooth CSG transition between native terrain and bore. Carving uses smooth-max with the negated void field. Keep the floor cap separate. Smooth-min reference. Removes a visible seam while letting the entrance follow the local landform. Smooth CSG moves the zero surface and can round off thin rock or support. L36’s broad filter still left a 27° crease against the earlier 20° probe. Keep it local and hold the crease gate before comparing. Small field cost.
3 Shape walls, not the walk plane. Extend considerCarveSegment / VF_FieldPassageWallRelief (around lines 933–1043) with one bounded, seeded, low-frequency displacement or asymmetric profile, masked by wall orientation and distance from floor. Domain warping, karst SDFs. Unequal pockets and folds add geology without ribs or a straight tread outline. Too much detail can narrow capsule clearance or become periodic. One noise term is cheap; nested warps and curved cross-section sweeps are more expensive and need updated slope/Lipschitz bounds.
4 Reuse the current spatial culling. Bound each new mouth feature so BuildPassageFeatureTileList, PassageMayAffectDensity, and the nearest-segment BVH skip distant voxels. These AABB and route BVHs already exist (architecture §8.45). Lipschitz pruning is safe only with proven bounds that include smooth blend radii and warp derivatives. SDF pruning research. Protects CPU budget with little geometry risk; lowest-risk performance path. Little visual gain. Full cached/interpolated distance volumes add memory and can move the zero surface; consider only after profiling, with exact evaluation near the walk surface.

What not to repeat from L33–L37

  • Regular world-space octaves produced visible 8 m / 4 m wall ribs. Keep relief irregular and seeded.
  • Per-segment one-sided tread clamps produced floor washboard. Removing support altogether then caused unsupported samples; keep one continuous floor profile.
  • The L34 apron, L36 trapezoid, and L37 raised bridge read as built geometry. The bridge SDF is a separate deck primitive in ShapeWorldInternal.h; do not widen it to repair cave shape.
  • L36’s broad field filter removed most fragments but left a 27° crease, above the earlier 20° gate. Avoid broad blur and do not tune gates after seeing results.
  • Wall-only ripple checks missed the floor beat. Keep walk-floor profiles and negative controls for periodic relief and built shapes.

Recommendation

Prioritize the floor-limited carve and local terrain-to-bore blend. Let ResolvedLayoutInternal.h own the deterministic walk route and grade; let native density provide visible support; confine seeded detail to walls and ceiling. The owner has accepted the current L37 crater mouth, so apply this to the remaining bridge and future shaping without reopening that look.