wip(assembler): M3 round 3 -- separated islands + Unreal island route (owner build 18:46)
Islands read as separate (91.89% open sky at mid-height), underside cavity closed, rim teeth were capture shading. Island manifest import + BuildHost proof passed on the pre-cache tree; M1 SurfaceWorld and M2 V1/V2 gates passed. Known open: final XY-column cache compiled in the owner build but is unverified; island LOD0 p95 ~155 ms misses the 133 ms sprint deadline (legacy ~43 ms); the island manifest only fits the BuildHost fixture layout (owner's world: Core init fails, empty world) -> round 4 builds plans inside Unreal. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MmSoF64BbRFmk9C3p1VsBJ
This commit is contained in:
1 parent
4afea7c802
commit
48fa028086
37 files changed
+3788
-107
No files matched your search
@@ -299,6 +299,17 @@ namespace StandaloneOwnerLoader
|
||||
Error = "export voxel_size_cm does not match the standalone VOXEL_SIZE";
|
||||
return false;
|
||||
}
|
||||
const VFJson::Value& OwnerVoxelSize = Root.Get("owner_voxel_size_cm");
|
||||
const VFJson::Value& CoreVoxelSize = Root.Get("core_voxel_size_cm");
|
||||
const VFJson::Value& OwnerToCoreScale = Root.Get("owner_to_core_length_scale");
|
||||
if (!std::holds_alternative<std::nullptr_t>(OwnerVoxelSize.Data)
|
||||
&& (!OwnerVoxelSize.IsNumber() || OwnerVoxelSize.Number() != 12.5
|
||||
|| !CoreVoxelSize.IsNumber() || CoreVoxelSize.Number() != 25.0
|
||||
|| !OwnerToCoreScale.IsNumber() || OwnerToCoreScale.Number() != 0.5))
|
||||
{
|
||||
Error = "owner-to-Core import scale must be 12.5 cm to 25 cm at a 0.5 length ratio";
|
||||
return false;
|
||||
}
|
||||
Out.Seed = static_cast<int32>(Root.Get("seed").Integer());
|
||||
Out.ClipRadius = static_cast<int32>(Root.Get("clip_radius").Integer(6));
|
||||
Out.MaxClipLevel = static_cast<int32>(Root.Get("max_clip_level").Integer(8));
|
||||
|
||||
Reference in new issue
Block a user