wip: L174 Design50 steps 0-2 in progress (interrupted for a power cut)

Audits collect gates and run seams (landing discs + end runs, LOD0/1), tagged uncapped failures, separate exempt
counts, self-overlap census; level end runs; overlap/turn constraints. Partial sweep: end runs pass 3/3 per seed;
1-2 end-turn violations per seed; 50-110k tagged seam mismatches per seed (real vs audit artefact not yet decided).
Not verified; resume L174.

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-11-03 13:11:26 +01:00
1 parent b09728354d
commit dee53c8d2a
9 files changed
+2155 -257

No files matched your search

File diff suppressed because it is too large. Load diff
+13 -2
View File
@@ -2890,6 +2890,7 @@ namespace VoxelForgeCore
const auto MarchingCubesStart=std::chrono::steady_clock::now();
FVoxelUniformBlockProofAuditStats BlockProofAudit;
FVoxelMeshData mesh;
FIntVector DebugDensityOrigin,DebugDensityDimensions;
{
FStandaloneShapeWorld::FScopedStampSamplingStep stampSamplingStep(MeshStep);
mesh=mesher.GenerateMesh(origin,MeshStep,MeshCells,nullptr,
@@ -2897,7 +2898,9 @@ namespace VoxelForgeCore
(options.hashDensity||options.captureDensitySamples)?&densityValues:nullptr,
options.profileMesherStages?&McStageTimings:nullptr,
options.auditUniformBlockProofs?&BlockProofAudit:nullptr,
options.forceFullDensityCapture);
options.forceFullDensityCapture,
options.captureDensitySamples?&DebugDensityOrigin:nullptr,
options.captureDensitySamples?&DebugDensityDimensions:nullptr);
}
passageFeatureScope.copySweptTubeRuntimeCounts();
if(options.auditUniformBlockProofs)
@@ -3222,7 +3225,15 @@ namespace VoxelForgeCore
std::chrono::steady_clock::now()-materialQueryStart).count():0.0;
out.indices.reserve(static_cast<std::size_t>(mesh.Triangles.Num()));
for(const int32 index:mesh.Triangles)out.indices.push_back(static_cast<std::uint32_t>(index));
if(options.captureDensitySamples)out.debugDensitySamples=std::move(densityValues);
if(options.captureDensitySamples)
{
out.debugDensitySamples=std::move(densityValues);
out.debugDensityOriginVoxels={DebugDensityOrigin.X,DebugDensityOrigin.Y,
DebugDensityOrigin.Z};
out.debugDensityDimensions={DebugDensityDimensions.X,
DebugDensityDimensions.Y,DebugDensityDimensions.Z};
out.debugDensityStepVoxels=MeshStep;
}
if(options.hashDensity)
{
std::uint64_t densityHash=14695981039346656037ull;