passages: tunnels own their floor - flat-bottomed tube + solid shell (L109, v217) - pending visual review

Owner design: flat world-horizontal floor (0.50 m corner blend), 0.75 m solid shell written only
where the host field is air (interiors union first and beat every shell), 5 m cubic mouth ramps.
Removed route support restoration, deferred support, support columns, mouth-support restoration
and their capsule checks (-5,129 / +1,641 lines). Near-ready @W12: FI 1.39 -> 0.86, TN 1.29 ->
0.90, VS 0.85 -> 0.74, SW 0.70 -> 0.76 s (more shell/skirt surface). All walk audits pass;
Clang/GCC W1/W8/W12 deterministic; fast tier PASS; Linux UE builds; 6 UE arrival traces pass.
OPEN ISSUE: open-air shell (e.g. passage 0-1, 1037-1489 m route span) shows a regular stepped
banding pattern - not merged into assembler/world until fixed/approved.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016dhxM43dnWvUu2B5Ph1iG1
This commit is contained in:
Fr0zkaandClaude Opus 5.5 committed 2026-10-29 05:54:48 +01:00
1 parent 95cf8de107
commit 5ea01988c4
104 files changed
+7880 -5022

No files matched your search

-33
View File
@@ -24,37 +24,6 @@ struct FStandaloneParitySample
int32 StrateIndex = INDEX_NONE;
};
struct FStandalonePassageVoidCrossing
{
std::size_t passageIndex=0;
std::size_t firstSegment=0;
std::size_t lastSegment=0;
std::uint64_t unsupportedSamples=0;
double unsupportedLengthMetres=0.0;
std::array<double,4> startPoint{};
std::array<double,4> endPoint{};
bool needsColumn=false;
bool connectedAtStart=false;
bool connectedAtEnd=false;
std::int64_t centerXSubvoxels=0;
std::int64_t centerYSubvoxels=0;
std::int64_t topZSubvoxels=0;
std::int64_t bottomZSubvoxels=0;
std::int64_t minimumRadiusSubvoxels=0;
std::int64_t nominalRadiusSubvoxels=0;
std::int64_t maximumRadiusSubvoxels=0;
double naturalSurfaceReliefMetres=0.0;
double maximumRouteOffsetMetres=0.0;
double maximumBoreRadiusMetres=0.0;
bool needsRootTaper=false;
};
struct FStandalonePassageVoidCrossingCache
{
std::mutex mutex;
std::unordered_map<std::string,std::vector<FStandalonePassageVoidCrossing>> byLayout;
};
struct FStandaloneOwnerWorld
{
std::unique_ptr<UVoxelSettings> Settings;
@@ -81,8 +50,6 @@ struct FStandaloneOwnerWorld
std::uint32_t StrateLayoutChunkSizeMicrometres = 8000000;
std::int64_t StrateLayoutChunkWidthSubvoxels = 8192;
bool bHasUnrealResolvedCorePlan = false;
std::shared_ptr<FStandalonePassageVoidCrossingCache> PassageVoidCrossingCache =
std::make_shared<FStandalonePassageVoidCrossingCache>();
};
namespace StandaloneOwnerLoader