diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/REPORT.md b/Standalone/Research/WorldAssemblerM3/Linux126/REPORT.md new file mode 100644 index 0000000..0bc84c6 --- /dev/null +++ b/Standalone/Research/WorldAssemblerM3/Linux126/REPORT.md @@ -0,0 +1,20 @@ +# Linux126 — passage preparation + +**No-go for the L109 speed bar.** Two exact-preserving preparation filters were tried. They reduced floor-profile calls by 20–23%, but did not reduce segment/sample pair counts or near-ready time enough. The tested source was restored after the host build. + +The L125 overlap is from each segment’s sweep bounds, expanded by its radius and the 4.335 m route reach. Adjacent segment bounds revisit the same samples. The feature slab only stamps outside sentinels; it does not create the pair count. Floor-profile and shell work multiply the cost of each pair. L125’s LOD0 pair overlap was 67.2%, 72.0%, 72.0%, and 67.6% for S0–S3. The first filter cut floor-profile calls from 3.107M→2.457M, 8.487M→6.549M, 8.303M→6.418M, and 5.269M→4.169M respectively. + +Five interleaved L80 measurements per cell, on a quiet machine (load 0.34, idle 98.2%): + +| Stratum | W8 near-ready vs L109 | W12 near-ready vs L109 | +| --- | ---: | ---: | +| S0 | +3.20% | +4.63% | +| S1 | +9.34% | +7.03% | +| S2 | +6.16% | +7.68% | +| S3 | +10.97% | +8.65% | + +L126 was +0.52% to +2.13% vs L125 in six cells and within 0.20% in the other two. All eight cells missed L109. + +Quality stayed unchanged: 264 fast-tier checks passed; walkability passed 21,425/21,425 samples; the floor probe remained 7.884 mm; four seam pairs matched all 4,900 shared samples bit-for-bit; all 23 captures were verified and byte-identical to L125. Clang/GCC W1/W8/W12 hashes matched, and the v225 baselines were unchanged. The Linux VFHostEditor build succeeded in 37.60 s with `-NoUBA -MaxParallelActions=4` and no `prlimit`. + +No evaluator bump or baseline update was needed. Timing and count logs are under `Saved/Linux/l126/`; captures are under `captures/`. diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Captures.py b/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Captures.py new file mode 100644 index 0000000..d2530e0 --- /dev/null +++ b/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Captures.py @@ -0,0 +1,98 @@ +#!/usr/bin/env python3 +"""Render the 23 L119 camera poses with the L126 candidate.""" +from __future__ import annotations + +import importlib.util +import json +import math +import os +from pathlib import Path + +ROOT = Path(__file__).resolve().parents[4] +RESEARCH = Path(__file__).resolve().parent +CAPTURES = RESEARCH / "captures" +SAVED = ROOT / "Saved/Linux/l126/captures" +BASELINE_INDEX = (ROOT / "Standalone/Research/WorldAssemblerM3/Linux119" + / "captures/L119/capture-index.json") +LAYOUT = ROOT / "Saved/Linux/l126/hashes/owner4-surface-world-w12-clang.layout.json" +CLANG = ROOT / os.environ.get("L126_CAPTURE_CLANG", + "Saved/Linux/l126/design2/bin/VoxelForgeCoreHeadless-l126-design2-clang") +RENDERER = ROOT / os.environ.get("L126_CAPTURE_RENDERER", + "Saved/Linux/l126/design2/bin/VoxelForgeOffscreenCapture-l126-design2-clang") +HELPER_PATH = ROOT / "Standalone/Research/WorldAssemblerM3/Linux113/RunL113Captures.py" + +SPEC = importlib.util.spec_from_file_location("l113_capture_helpers", HELPER_PATH) +if SPEC is None or SPEC.loader is None: + raise SystemExit("cannot load the verified L113 capture helpers") +HELPERS = importlib.util.module_from_spec(SPEC) +SPEC.loader.exec_module(HELPERS) +HELPERS.RESEARCH = RESEARCH +HELPERS.CAPTURES = CAPTURES +HELPERS.SAVED = SAVED +HELPERS.BINARIES = {"L126": CLANG} +HELPERS.RENDERERS = {"L126": RENDERER} + + +def main() -> int: + if any(not path.is_file() for path in (BASELINE_INDEX, LAYOUT, CLANG, RENDERER)): + raise SystemExit("missing L119 camera set, L126 layout, or capture binary") + baseline = json.loads(BASELINE_INDEX.read_text(encoding="utf-8")) + layout = json.loads(LAYOUT.read_text(encoding="utf-8")) + rows = [] + CAPTURES.mkdir(parents=True, exist_ok=True) + SAVED.mkdir(parents=True, exist_ok=True) + for view in baseline["captures"]: + row = HELPERS.capture("L126", view, layout) + row["variant"] = "L126-v225" + if view["kind"] == "rock-floor-close": + scene = ROOT / row["scene"] + anchor = HELPERS.nearest_surface_anchor(scene, view["target"], margin_m=5.0, + preferred_normal=(0.0, 0.0, 1.0), minimum_alignment=0.85) + alignment = HELPERS.dot(anchor["normal"], (0.0, 0.0, 1.0)) + camera_distance = math.dist(row["camera_actual_m"], anchor["position_m"]) + row.update({"floor_anchor_position_m": anchor["position_m"], + "floor_anchor_normal": anchor["normal"], + "closeup_camera_to_floor_distance_m": camera_distance, + "closeup_floor_normal_alignment": alignment, + "verified_upward_floor_normal": alignment >= 0.85}) + if (not row["verified"] or not 2.0 <= camera_distance <= 3.2 + or anchor["distance_m"] > 0.25 or alignment < 0.85 + or row["drawn_triangles"] <= 0 + or row["pixel_quality_status"] not in + ("pass", "low_contrast_geometry_visible")): + raise RuntimeError(f"L126 floor close-up failed at {view['name']}") + rows.append(row) + if len(rows) != len(baseline["captures"]) or len(rows) != 23: + raise RuntimeError(f"expected all 23 L119 views, captured {len(rows)}") + index = CAPTURES / "L126" / "capture-index.json" + index.parent.mkdir(parents=True, exist_ok=True) + index.write_text(json.dumps({"captures": rows}, indent=2) + "\n", + encoding="utf-8") + + html = ["", + "L119 / L126 tunnel capture comparison", + "", "

L119 / L126 v225: identical views

"] + old_by_name = {Path(row["capture"]).name: row for row in baseline["captures"]} + for row in rows: + name = Path(row["capture"]).name + old = old_by_name[name] + old_path = os.path.relpath(ROOT / "Standalone/Research/WorldAssemblerM3/Linux119" + / old["capture"], CAPTURES) + new_path = os.path.relpath(RESEARCH / row["capture"], CAPTURES) + html.extend(["
", f"

{row['passage']} — {row['station']}

", + f"

{row['kind']} · L119 {old['pixel_quality_status']} · " + f"L126 {row['pixel_quality_status']}

", "
", + f"
L119
", + f"
L126 v225
", + "
", "
"]) + (CAPTURES / "COMPARE.html").write_text("\n".join(html) + "\n", encoding="utf-8") + print(f"[L126Captures] rendered={len(rows)} views index={index.relative_to(ROOT)}", + flush=True) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Timing.py b/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Timing.py new file mode 100644 index 0000000..a78449b --- /dev/null +++ b/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Timing.py @@ -0,0 +1,136 @@ +#!/usr/bin/env python3 +"""Five interleaved L80 readiness runs for L109, L125 and L126.""" +from __future__ import annotations + +import json +import os +import re +import statistics +import subprocess +import time +from pathlib import Path + +ROOT = Path(__file__).resolve().parents[4] +OUT = ROOT / os.environ.get("L126_TIMING_DIR", "Saved/Linux/l126/timing") +DATA = ROOT / "Standalone/data/owner_world.json" +BINARIES = { + "L109": ROOT / "Saved/Linux/l109/bin-final/VoxelForgeCoreHeadless-l109-clang", + "L125": ROOT / "Saved/Linux/l125/bin/VoxelForgeCoreHeadless-l125-clang", + "L126": ROOT / os.environ.get("L126_CANDIDATE_BINARY", + "Saved/Linux/l126/design2/bin/VoxelForgeCoreHeadless-l126-design2-clang"), +} +CAMERAS = { + 0: (8.0, 16.0, -372.2626953125), + 1: (25.8369140625, 3.19921875, -737.0), + 2: (19.166015625, -14.2001953125, -753.3740234375), + 3: (-20.0625, -5.068359375, -900.353515625), +} +PIPELINE = re.compile(r"^\[StreamPipeline\] (.*)$", re.M) +FIELDS = re.compile(r"([a-zA-Z0-9_]+)=([^ ]+)") +NEAR = re.compile( + r"^\[WorldAssemblerNearLODReady\] lods=0-2 tiles=(\d+)/(\d+) cold_ready_s=([0-9.]+)$", + re.M) + + +def run(strate: int, workers: int, version: str, phase: str, replicate: int) -> dict: + OUT.mkdir(parents=True, exist_ok=True) + label = f"s{strate}-w{workers}-{version}-{phase}{replicate}" + log = OUT / f"{label}.log" + camera = ",".join(f"{value:.12f}" for value in CAMERAS[strate]) + ",0,0" + command = [ + "taskset", "-c", "0-11", "prlimit", "--as=6442450944", "--", + "timeout", "1740s", str(BINARIES[version]), str(DATA), + "--world-assembler-prototype", "--stream-benchmark", "--stream-pipeline", + f"--workers={workers}", "--clip-radius=3", "--max-clip-level=8", + "--max-level=8", f"--camera={camera}", "--profile-lod-work", + "--stream-scheduler-policy=3", + ] + started = time.monotonic() + with log.open("w", encoding="utf-8") as output: + result = subprocess.run(command, cwd=ROOT, stdout=output, + stderr=subprocess.STDOUT, check=False, timeout=1740) + content = log.read_text(encoding="utf-8", errors="replace") + pipeline_match, near_match = PIPELINE.search(content), NEAR.search(content) + if result.returncode or pipeline_match is None or near_match is None: + raise SystemExit(f"readiness run failed or incomplete: {log}; exit={result.returncode}") + pipeline = dict(FIELDS.findall(pipeline_match.group(1))) + row = {"strate": strate, "workers": workers, "version": version, + "phase": phase, "replicate": replicate, "exit_code": result.returncode, + "wall_s": round(time.monotonic() - started, 3), + "lod02_ready_s": float(near_match.group(3)), + "whole_view_ready_s": float(pipeline["whole_view_ready"].removesuffix("s")), + "whole_tiles": int(pipeline["whole_tiles"].split("/")[0]), + "log": str(log.relative_to(ROOT))} + print("[L126TimingRun] " + json.dumps(row, sort_keys=True), flush=True) + return row + + +def cpu_idle_percent(interval_s: float = 2.0) -> float: + def totals() -> tuple[int, int]: + fields = Path("/proc/stat").read_text(encoding="utf-8").splitlines()[0].split() + values = [int(value) for value in fields[1:]] + return sum(values), values[3] + (values[4] if len(values) > 4 else 0) + before_total, before_idle = totals() + time.sleep(interval_s) + after_total, after_idle = totals() + return 100.0 * (after_idle-before_idle) / max(1, after_total-before_total) + + +def main() -> int: + if not DATA.is_file() or any(not binary.is_file() for binary in BINARIES.values()): + raise SystemExit("missing L109/L125/L126 timing input") + OUT.mkdir(parents=True, exist_ok=True) + load_1m, idle_pct = os.getloadavg()[0], cpu_idle_percent() + uptime = subprocess.run(["uptime"], cwd=ROOT, text=True, + capture_output=True, check=True).stdout.strip() + top = subprocess.run(["ps", "-eo", "pid,pcpu,comm", "--sort=-pcpu"], + cwd=ROOT, text=True, capture_output=True, check=True).stdout + (OUT / "machine-load-before.txt").write_text( + f"uptime: {uptime}\n1-minute load: {load_1m:.2f}\n" + f"2-second CPU idle: {idle_pct:.1f}%\ntop CPU users:\n{top}", encoding="utf-8") + print(f"[L126TimingGate] load_1m={load_1m:.2f} cpu_idle_2s={idle_pct:.1f}%", + flush=True) + if load_1m >= 0.9 or idle_pct < 97.0: + raise SystemExit("timing refused: machine is above the quiet-load gate") + + rows = [] + versions = ("L109", "L125", "L126") + for strate in range(4): + for workers in (8, 12): + for version in versions: + run(strate, workers, version, "warmup", 0) + for replicate in range(1, 6): + offset = (replicate - 1) % len(versions) + order = versions[offset:] + versions[:offset] + for version in order: + rows.append(run(strate, workers, version, "measured", replicate)) + (OUT / "runs-partial.json").write_text( + json.dumps(rows, indent=2) + "\n", encoding="utf-8") + + summary = [] + for strate in range(4): + for workers in (8, 12): + item = {"strate": strate, "workers": workers, "replicates": 5} + medians = {} + for version in versions: + group = [row for row in rows if row["strate"] == strate + and row["workers"] == workers and row["version"] == version] + medians[version] = {} + for key in ("lod02_ready_s", "whole_view_ready_s"): + values = [row[key] for row in group] + medians[version][key] = statistics.median(values) + item[f"{version}_{key}_values"] = values + item[f"{version}_{key}_median"] = medians[version][key] + for comparison in ("L109", "L125"): + for key in ("lod02_ready_s", "whole_view_ready_s"): + item[f"L126_vs_{comparison}_{key}_delta_pct"] = round( + 100.0 * (medians["L126"][key] / medians[comparison][key]-1.0), 2) + summary.append(item) + (OUT / "summary.json").write_text( + json.dumps({"runs": rows, "summary": summary}, indent=2) + "\n", + encoding="utf-8") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/COMPARE.html b/Standalone/Research/WorldAssemblerM3/Linux126/captures/COMPARE.html new file mode 100644 index 0000000..815023a --- /dev/null +++ b/Standalone/Research/WorldAssemblerM3/Linux126/captures/COMPARE.html @@ -0,0 +1,188 @@ + +L119 / L126 tunnel capture comparison + +

L119 / L126 v225: identical views

+
+

passage/0-1/0 — rock-floor/401.7m

+

rock-floor-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/0-1/0 — rock-floor/792.8m

+

rock-floor-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/0-1/0 — rock-floor/1634.5m

+

rock-floor-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/1-2/0 — rock-floor/27.0m

+

rock-floor-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/1-2/0 — rock-floor/52.9m

+

rock-floor-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/1-2/0 — rock-floor/78.9m

+

rock-floor-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/2-3/0 — rock-floor/323.4m

+

rock-floor-close · L119 low_contrast_geometry_visible · L126 low_contrast_geometry_visible

+
+
L119
+
L126 v225
+
+
+
+

passage/2-3/0 — rock-floor/333.4m

+

rock-floor-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/2-3/0 — rock-floor/343.4m

+

rock-floor-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/0-1/0 — section-1/4m-outside

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/0-1/0 — section-1/4m-interior-wall

+

open-air-close · L119 low_contrast_geometry_visible · L126 low_contrast_geometry_visible

+
+
L119
+
L126 v225
+
+
+
+

passage/0-1/0 — section-2/4m-outside

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/0-1/0 — section-2/4m-interior-wall

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/0-1/0 — section-3/4m-outside

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/0-1/0 — section-3/4m-interior-wall

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/1-2/0 — section-1/4m-outside

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/1-2/0 — section-1/4m-interior-wall

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/1-2/0 — section-2/4m-outside

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/1-2/0 — section-2/4m-interior-wall

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/2-3/0 — section-1/4m-outside

+

open-air-close · L119 low_contrast_geometry_visible · L126 low_contrast_geometry_visible

+
+
L119
+
L126 v225
+
+
+
+

passage/2-3/0 — section-1/4m-interior-wall

+

open-air-close · L119 low_contrast_geometry_visible · L126 low_contrast_geometry_visible

+
+
L119
+
L126 v225
+
+
+
+

passage/2-3/0 — section-2/4m-outside

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
+
+

passage/2-3/0 — section-2/4m-interior-wall

+

open-air-close · L119 pass · L126 pass

+
+
L119
+
L126 v225
+
+
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/capture-index.json b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/capture-index.json new file mode 100644 index 0000000..507505c --- /dev/null +++ b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/capture-index.json @@ -0,0 +1,1562 @@ +{ + "captures": [ + { + "name": "passage-0-1-0-rock-floor-station-1", + "passage": "passage/0-1/0", + "kind": "rock-floor-close", + "station": "rock-floor/401.7m", + "camera": [ + -9.24648786798055, + 19.798675033837775, + -443.9636296749357 + ], + "target": [ + -7.026884524505579, + 20.857335392121104, + -445.66373993191075 + ], + "yaw": 64.50075976736525, + "pitch": -34.65771934187305, + "focus": [ + -7.026884524505579, + 20.857335392121104, + -445.66373993191075 + ], + "center_z": -445.66373993191075, + "route_distance_m": 401.6612010038529, + "requested_route_distance_m": 401.6612010038529, + "route_length_m": 2026.6238040154117, + "planned_floor_m": -445.66373993191075, + "planned_grade_deg": 10.372328677972732, + "variant": "L126-v225", + "capture": "captures/L126/passage-0-1-0-rock-floor-station-1.png", + "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-1.vfmesh", + "drawn_triangles": 122294, + "source_triangles": 146798, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 401.6612010038529, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": null, + "closeup_target_surface_distance_m": null, + "closeup_predicted_target_offset_m": null, + "closeup_wall_normal_alignment": null, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -9.24648786798055, + 19.798675033837775, + -443.9636296749357 + ], + "target_actual_m": [ + -7.026884524505579, + 20.857335392121104, + -445.66373993191075 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-1-mesh.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-1-render.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-1-quality.log" + ], + "floor_anchor_position_m": [ + -7.026885053959959, + 20.857335155432953, + -445.66374310012867 + ], + "floor_anchor_normal": [ + 0.16438021494383692, + 0.07357583212203939, + 0.9836491965444629 + ], + "closeup_camera_to_floor_distance_m": 2.989612610955708, + "closeup_floor_normal_alignment": 0.9836491965444629, + "verified_upward_floor_normal": true + }, + { + "name": "passage-0-1-0-rock-floor-station-2", + "passage": "passage/0-1/0", + "kind": "rock-floor-close", + "station": "rock-floor/792.8m", + "camera": [ + -0.021280083711839648, + -26.43771312964049, + -514.3617561596035 + ], + "target": [ + -2.4714859241065525, + -26.227784739959716, + -516.0616688299093 + ], + "yaw": -85.10297944703369, + "pitch": -34.654210347383824, + "focus": [ + -2.4714859241065525, + -26.227784739959716, + -516.0616688299093 + ], + "center_z": -516.0616688299093, + "route_distance_m": 792.8284020077059, + "requested_route_distance_m": 792.8284020077059, + "route_length_m": 2026.6238040154117, + "planned_floor_m": -516.0616688299093, + "planned_grade_deg": 10.367725129664787, + "variant": "L126-v225", + "capture": "captures/L126/passage-0-1-0-rock-floor-station-2.png", + "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-2.vfmesh", + "drawn_triangles": 586092, + "source_triangles": 626196, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 792.8284020077059, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": null, + "closeup_target_surface_distance_m": null, + "closeup_predicted_target_offset_m": null, + "closeup_wall_normal_alignment": null, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -0.021280083711839648, + -26.43771312964049, + -514.3617561596035 + ], + "target_actual_m": [ + -2.4714859241065525, + -26.227784739959716, + -516.0616688299093 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-2-mesh.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-2-render.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-2-quality.log" + ], + "floor_anchor_position_m": [ + -2.471476828908, + -26.227785976319144, + -516.0617189697925 + ], + "floor_anchor_normal": [ + -0.179115780575022, + 0.024140888419756926, + 0.9835317761289187 + ], + "closeup_camera_to_floor_distance_m": 2.9895496409822853, + "closeup_floor_normal_alignment": 0.9835317761289187, + "verified_upward_floor_normal": true + }, + { + "name": "passage-0-1-0-rock-floor-station-3", + "passage": "passage/0-1/0", + "kind": "rock-floor-close", + "station": "rock-floor/1634.5m", + "camera": [ + 15.717287112180728, + 19.71739973195528, + -665.8352816543407 + ], + "target": [ + 17.336220092016376, + 17.86620742417785, + -667.5348848643227 + ], + "yaw": 138.82915885966676, + "pitch": -34.64871452830556, + "focus": [ + 17.336220092016376, + 17.86620742417785, + -667.5348848643227 + ], + "center_z": -667.5348848643227, + "route_distance_m": 1634.4566030115589, + "requested_route_distance_m": 1634.4566030115589, + "route_length_m": 2026.6238040154117, + "planned_floor_m": -667.5348848643227, + "planned_grade_deg": 10.360515186362372, + "variant": "L126-v225", + "capture": "captures/L126/passage-0-1-0-rock-floor-station-3.png", + "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-3.vfmesh", + "drawn_triangles": 137288, + "source_triangles": 166736, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 1634.4566030115589, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": null, + "closeup_target_surface_distance_m": null, + "closeup_predicted_target_offset_m": null, + "closeup_wall_normal_alignment": null, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 15.717287112180728, + 19.71739973195528, + -665.8352816543407 + ], + "target_actual_m": [ + 17.336220092016376, + 17.86620742417785, + -667.5348848643227 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-3-mesh.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-3-render.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-3-quality.log" + ], + "floor_anchor_position_m": [ + 17.33622182815858, + 17.866205324064538, + -667.534869956066 + ], + "floor_anchor_normal": [ + 0.11463807621472542, + -0.13864390562764303, + 0.9836848981834071 + ], + "closeup_camera_to_floor_distance_m": 2.9893930396931125, + "closeup_floor_normal_alignment": 0.9836848981834071, + "verified_upward_floor_normal": true + }, + { + "name": "passage-1-2-0-rock-floor-station-1", + "passage": "passage/1-2/0", + "kind": "rock-floor-close", + "station": "rock-floor/27.0m", + "camera": [ + 15.990262769683945, + 2.495369317804175, + -736.4846720823747 + ], + "target": [ + 15.354493464592624, + 4.868558240151556, + -738.1970266319915 + ], + "yaw": -14.99718988160138, + "pitch": -34.875140724394136, + "focus": [ + 15.354493464592624, + 4.868558240151556, + -738.1970266319915 + ], + "center_z": -738.1970266319915, + "route_distance_m": 26.963657939523273, + "requested_route_distance_m": 26.963657939523273, + "route_length_m": 114.99063175809309, + "planned_floor_m": -738.1970266319915, + "planned_grade_deg": 10.657740387934142, + "variant": "L126-v225", + "capture": "captures/L126/passage-1-2-0-rock-floor-station-1.png", + "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-1.vfmesh", + "drawn_triangles": 652056, + "source_triangles": 719660, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 26.963657939523273, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": null, + "closeup_target_surface_distance_m": null, + "closeup_predicted_target_offset_m": null, + "closeup_wall_normal_alignment": null, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 15.990262769683945, + 2.495369317804175, + -736.4846720823747 + ], + "target_actual_m": [ + 15.354493464592624, + 4.868558240151556, + -738.1970266319915 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-1-mesh.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-1-render.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-1-quality.log" + ], + "floor_anchor_position_m": [ + 15.354124807038394, + 4.869920275450426, + -738.1895881032126 + ], + "floor_anchor_normal": [ + -0.047307387705878, + 0.17883124580074233, + 0.9827417751341397 + ], + "closeup_camera_to_floor_distance_m": 2.9916387475909154, + "closeup_floor_normal_alignment": 0.9827417751341397, + "verified_upward_floor_normal": true + }, + { + "name": "passage-1-2-0-rock-floor-station-2", + "passage": "passage/1-2/0", + "kind": "rock-floor-close", + "station": "rock-floor/52.9m", + "camera": [ + -2.48434493546405, + 15.983647301702653, + -741.2835409028854 + ], + "target": [ + -4.76517685476837, + 15.070128626649932, + -742.995373541633 + ], + "yaw": -111.82708648318167, + "pitch": -34.86587426337977, + "focus": [ + -4.76517685476837, + 15.070128626649932, + -742.995373541633 + ], + "center_z": -742.995373541633, + "route_distance_m": 52.927315879046546, + "requested_route_distance_m": 52.927315879046546, + "route_length_m": 114.99063175809309, + "planned_floor_m": -742.995373541633, + "planned_grade_deg": 10.645569354114926, + "variant": "L126-v225", + "capture": "captures/L126/passage-1-2-0-rock-floor-station-2.png", + "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-2.vfmesh", + "drawn_triangles": 636162, + "source_triangles": 700558, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 52.927315879046546, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": null, + "closeup_target_surface_distance_m": null, + "closeup_predicted_target_offset_m": null, + "closeup_wall_normal_alignment": null, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -2.48434493546405, + 15.983647301702653, + -741.2835409028854 + ], + "target_actual_m": [ + -4.76517685476837, + 15.070128626649932, + -742.995373541633 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-2-mesh.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-2-render.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-2-quality.log" + ], + "floor_anchor_position_m": [ + -4.766428465537912, + 15.069671584786441, + -742.988228337538 + ], + "floor_anchor_normal": [ + -0.1744301807701029, + -0.061608715063684795, + 0.9827402903436447 + ], + "closeup_camera_to_floor_distance_m": 2.9915240428933867, + "closeup_floor_normal_alignment": 0.9827402903436447, + "verified_upward_floor_normal": true + }, + { + "name": "passage-1-2-0-rock-floor-station-3", + "passage": "passage/1-2/0", + "kind": "rock-floor-close", + "station": "rock-floor/78.9m", + "camera": [ + -13.44544511010513, + -3.995230772069307, + -746.0839041050349 + ], + "target": [ + -12.287009401722694, + -6.161841337747165, + -747.7963166548619 + ], + "yaw": 151.8676321960706, + "pitch": -34.87617050502889, + "focus": [ + -12.287009401722694, + -6.161841337747165, + -747.7963166548619 + ], + "center_z": -747.7963166548619, + "route_distance_m": 78.89097381856982, + "requested_route_distance_m": 78.89097381856982, + "route_length_m": 114.99063175809309, + "planned_floor_m": -747.7963166548619, + "planned_grade_deg": 10.659092990906162, + "variant": "L126-v225", + "capture": "captures/L126/passage-1-2-0-rock-floor-station-3.png", + "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-3.vfmesh", + "drawn_triangles": 580472, + "source_triangles": 639376, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 78.89097381856982, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": null, + "closeup_target_surface_distance_m": null, + "closeup_predicted_target_offset_m": null, + "closeup_wall_normal_alignment": null, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -13.44544511010513, + -3.995230772069307, + -746.0839041050349 + ], + "target_actual_m": [ + -12.287009401722694, + -6.161841337747165, + -747.7963166548619 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-3-mesh.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-3-render.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-3-quality.log" + ], + "floor_anchor_position_m": [ + -12.283352972838873, + -6.167679829029396, + -747.554756449892 + ], + "floor_anchor_normal": [ + 0.09692807602747124, + -0.15782686841357624, + 0.9826981366036961 + ], + "closeup_camera_to_floor_distance_m": 2.8693901200350096, + "closeup_floor_normal_alignment": 0.9826981366036961, + "verified_upward_floor_normal": true + }, + { + "name": "passage-2-3-0-rock-floor-station-1", + "passage": "passage/2-3/0", + "kind": "rock-floor-close", + "station": "rock-floor/323.4m", + "camera": [ + 6.997568341188331, + -14.934306981606339, + -869.3796844648476 + ], + "target": [ + 9.102823911740126, + -13.661883549736208, + -871.0755965556104 + ], + "yaw": 58.85109570948622, + "pitch": -34.583159686285406, + "focus": [ + 9.102823911740126, + -13.661883549736208, + -871.0755965556104 + ], + "center_z": -871.0755965556104, + "route_distance_m": 323.4481319239866, + "requested_route_distance_m": 323.4481319239866, + "route_length_m": 494.0722798830563, + "planned_floor_m": -871.0755965556104, + "planned_grade_deg": 10.274530613220444, + "variant": "L126-v225", + "capture": "captures/L126/passage-2-3-0-rock-floor-station-1.png", + "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-1.vfmesh", + "drawn_triangles": 474964, + "source_triangles": 502362, + "verified": true, + "pixel_quality_status": "low_contrast_geometry_visible", + "route_distance_actual_m": 323.4481319239866, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": null, + "closeup_target_surface_distance_m": null, + "closeup_predicted_target_offset_m": null, + "closeup_wall_normal_alignment": null, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 6.997568341188331, + -14.934306981606339, + -869.3796844648476 + ], + "target_actual_m": [ + 9.102823911740126, + -13.661883549736208, + -871.0755965556104 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-1-mesh.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-1-render.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-1-quality.log" + ], + "floor_anchor_position_m": [ + 9.103799793973732, + -13.661094033901383, + -871.068656948616 + ], + "floor_anchor_normal": [ + 0.14021616794161246, + 0.11018123609139711, + 0.9839713011369495 + ], + "closeup_camera_to_floor_distance_m": 2.9849472681829123, + "closeup_floor_normal_alignment": 0.9839713011369495, + "verified_upward_floor_normal": true + }, + { + "name": "passage-2-3-0-rock-floor-station-2", + "passage": "passage/2-3/0", + "kind": "rock-floor-close", + "station": "rock-floor/333.4m", + "camera": [ + 14.426607883839745, + -8.501776133009574, + -871.1605818845352 + ], + "target": [ + 15.203729308783775, + -6.16777561793481, + -872.8561420785873 + ], + "yaw": 18.41553205389999, + "pitch": -34.576909662847896, + "focus": [ + 15.203729308783775, + -6.16777561793481, + -872.8561420785873 + ], + "center_z": -872.8561420785873, + "route_distance_m": 333.4481319239866, + "requested_route_distance_m": 333.4481319239866, + "route_length_m": 494.0722798830563, + "planned_floor_m": -872.8561420785873, + "planned_grade_deg": 10.266334408339132, + "variant": "L126-v225", + "capture": "captures/L126/passage-2-3-0-rock-floor-station-2.png", + "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-2.vfmesh", + "drawn_triangles": 494504, + "source_triangles": 524342, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 333.4481319239866, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": null, + "closeup_target_surface_distance_m": null, + "closeup_predicted_target_offset_m": null, + "closeup_wall_normal_alignment": null, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 14.426607883839745, + -8.501776133009574, + -871.1605818845352 + ], + "target_actual_m": [ + 15.203729308783775, + -6.16777561793481, + -872.8561420785873 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-2-mesh.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-2-render.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-2-quality.log" + ], + "floor_anchor_position_m": [ + 15.204108325185125, + -6.1664350574610705, + -872.848494535829 + ], + "floor_anchor_normal": [ + 0.0468360027958031, + 0.17218671405633393, + 0.9839502651783747 + ], + "closeup_camera_to_floor_distance_m": 2.9845224063213145, + "closeup_floor_normal_alignment": 0.9839502651783747, + "verified_upward_floor_normal": true + }, + { + "name": "passage-2-3-0-rock-floor-station-3", + "passage": "passage/2-3/0", + "kind": "rock-floor-close", + "station": "rock-floor/343.4m", + "camera": [ + 16.176045301879554, + 1.1336183974400118, + -872.9426489764151 + ], + "target": [ + 15.465325445603714, + 3.4887437417106955, + -874.6379150751349 + ], + "yaw": -16.792543840841383, + "pitch": -34.57168620892087, + "focus": [ + 15.465325445603714, + 3.4887437417106955, + -874.6379150751349 + ], + "center_z": -874.6379150751349, + "route_distance_m": 343.4481319239866, + "requested_route_distance_m": 343.4481319239866, + "route_length_m": 494.0722798830563, + "planned_floor_m": -874.6379150751349, + "planned_grade_deg": 10.259484647608062, + "variant": "L126-v225", + "capture": "captures/L126/passage-2-3-0-rock-floor-station-3.png", + "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-3.vfmesh", + "drawn_triangles": 485356, + "source_triangles": 512664, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 343.4481319239866, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": null, + "closeup_target_surface_distance_m": null, + "closeup_predicted_target_offset_m": null, + "closeup_wall_normal_alignment": null, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 16.176045301879554, + 1.1336183974400118, + -872.9426489764151 + ], + "target_actual_m": [ + 15.465325445603714, + 3.4887437417106955, + -874.6379150751349 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-3-mesh.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-3-render.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-3-quality.log" + ], + "floor_anchor_position_m": [ + 15.464091528009144, + 3.4924186701988678, + -874.5280427606272 + ], + "floor_anchor_normal": [ + -0.061689200676463656, + 0.16755705537563617, + 0.9839304221913991 + ], + "closeup_camera_to_floor_distance_m": 2.9298959629846824, + "closeup_floor_normal_alignment": 0.9839304221913991, + "verified_upward_floor_normal": true + }, + { + "name": "passage-0-1-0-openair-1-4m-outside", + "passage": "passage/0-1/0", + "kind": "open-air-close", + "station": "section-1/4m-outside", + "camera": [ + 13.176702021211483, + 7.149068417345486, + -374.402 + ], + "target": [ + 9.197121888971225, + 7.5527291301707695, + -374.402 + ], + "yaw": -84.20812706837869, + "pitch": 0.0, + "focus": [ + 7.272, + 7.748, + -373.197 + ], + "center_z": -373.197, + "open_air_section": 1, + "closeup_side": "outside", + "closeup_preferred_normal": [ + 0.9948950330600643, + -0.1009151782063209, + 0.0 + ], + "camera_target_distance_m": 4.000000000000001, + "route_distance_m": 8.3545, + "requested_route_distance_m": 8.3545, + "route_length_m": 2026.6238040154117, + "variant": "L126-v225", + "capture": "captures/L126/passage-0-1-0-openair-1-4m-outside.png", + "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-outside.vfmesh", + "drawn_triangles": 275333, + "source_triangles": 327745, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 8.3545, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 3.999999999999992, + "closeup_target_surface_distance_m": 0.794053842406799, + "closeup_predicted_target_offset_m": 0.794053842406799, + "closeup_wall_normal_alignment": 0.9449803535183738, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 12.920589450293994, + 7.974422667153486, + -375.0086678277374 + ], + "target_actual_m": [ + 9.12386703491211, + 8.0, + -373.75 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-outside-mesh.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-outside-render.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-outside-quality.log" + ] + }, + { + "name": "passage-0-1-0-openair-1-4m-interior-wall", + "passage": "passage/0-1/0", + "kind": "open-air-close", + "station": "section-1/4m-interior-wall", + "camera": [ + 7.395778712540976, + 3.8749008126934172, + -374.89997477205173 + ], + "target": [ + 8.778272394312646, + 7.595214286886338, + -374.402 + ], + "yaw": 20.38540702862518, + "pitch": 7.1515181408188955, + "focus": [ + 7.272, + 7.748, + -373.197 + ], + "center_z": -373.197, + "open_air_section": 1, + "closeup_side": "interior-wall", + "closeup_preferred_normal": [ + -0.9948950330600643, + 0.1009151782063209, + -0.0 + ], + "camera_target_distance_m": 3.9999999999999973, + "route_distance_m": 8.3545, + "requested_route_distance_m": 8.3545, + "route_length_m": 2026.6238040154117, + "variant": "L126-v225", + "capture": "captures/L126/passage-0-1-0-openair-1-4m-interior-wall.png", + "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall.vfmesh", + "drawn_triangles": 308012, + "source_triangles": 368124, + "verified": true, + "pixel_quality_status": "low_contrast_geometry_visible", + "route_distance_actual_m": 8.3545, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 3.999999999999992, + "closeup_target_surface_distance_m": 0.8416597466625043, + "closeup_predicted_target_offset_m": 0.8416597466625043, + "closeup_wall_normal_alignment": 0.9449803535183738, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 5.327144619530225, + 8.025577332846515, + -372.4913321722626 + ], + "target_actual_m": [ + 9.12386703491211, + 8.0, + -373.75 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall-mesh.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall-render.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall-quality.log" + ] + }, + { + "name": "passage-0-1-0-openair-2-4m-outside", + "passage": "passage/0-1/0", + "kind": "open-air-close", + "station": "section-2/4m-outside", + "camera": [ + 12.814097656232029, + 0.949800892309409, + -375.51163279923776 + ], + "target": [ + 8.842807594702599, + 1.4281890685821654, + -375.51163279923776 + ], + "yaw": -83.1311525734364, + "pitch": 0.0, + "focus": [ + 6.603, + 1.698, + -374.149 + ], + "center_z": -374.149, + "open_air_section": 2, + "closeup_side": "outside", + "closeup_preferred_normal": [ + 0.9928225153823576, + -0.1195970440681891, + 0.0 + ], + "camera_target_distance_m": 4.0, + "route_distance_m": 14.4925, + "requested_route_distance_m": 14.4925, + "route_length_m": 2026.6238040154117, + "variant": "L126-v225", + "capture": "captures/L126/passage-0-1-0-openair-2-4m-outside.png", + "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-outside.vfmesh", + "drawn_triangles": 275333, + "source_triangles": 327745, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 14.4925, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 3.999999999999995, + "closeup_target_surface_distance_m": 1.0963161771133416, + "closeup_predicted_target_offset_m": 1.0963161771133416, + "closeup_wall_normal_alignment": 0.39413995490510356, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 9.613469253122387, + 1.5471847686714795, + -379.60073544787906 + ], + "target_actual_m": [ + 7.959597110748291, + 1.0, + -376.0 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-outside-mesh.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-outside-render.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-outside-quality.log" + ] + }, + { + "name": "passage-0-1-0-openair-2-4m-interior-wall", + "passage": "passage/0-1/0", + "kind": "open-air-close", + "station": "section-2/4m-interior-wall", + "camera": [ + 6.939570778854576, + -2.1803140897652855, + -376.2060303004211 + ], + "target": [ + 8.388084903173432, + 1.4829657169105679, + -375.51163279923776 + ], + "yaw": 21.574563086437188, + "pitch": 9.997160707081923, + "focus": [ + 6.603, + 1.698, + -374.149 + ], + "center_z": -374.149, + "open_air_section": 2, + "closeup_side": "interior-wall", + "closeup_preferred_normal": [ + -0.9928225153823576, + 0.1195970440681891, + -0.0 + ], + "camera_target_distance_m": 3.999999999999997, + "route_distance_m": 14.4925, + "requested_route_distance_m": 14.4925, + "route_length_m": 2026.6238040154117, + "variant": "L126-v225", + "capture": "captures/L126/passage-0-1-0-openair-2-4m-interior-wall.png", + "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall.vfmesh", + "drawn_triangles": 345026, + "source_triangles": 414658, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 14.4925, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 4.000000000000001, + "closeup_target_surface_distance_m": 0.7732263275133904, + "closeup_predicted_target_offset_m": 0.7732263275133904, + "closeup_wall_normal_alignment": 0.286757829360229, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 6.619154002331269, + 0.5694445029418322, + -372.249825471136 + ], + "target_actual_m": [ + 7.85216206252137, + 1.2143337388310353, + -376.0 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall-mesh.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall-render.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall-quality.log" + ] + }, + { + "name": "passage-0-1-0-openair-3-4m-outside", + "passage": "passage/0-1/0", + "kind": "open-air-close", + "station": "section-3/4m-outside", + "camera": [ + -28.32291429976088, + -16.444327461849063, + -600.6066327992378 + ], + "target": [ + -25.004026673221745, + -14.211619482196229, + -600.6066327992378 + ], + "yaw": 56.07018168236039, + "pitch": 0.0, + "focus": [ + -22.1, + -12.258, + -599.244 + ], + "center_z": -599.244, + "open_air_section": 3, + "closeup_side": "outside", + "closeup_preferred_normal": [ + -0.8297219066347834, + -0.5581769949132084, + 0.0 + ], + "camera_target_distance_m": 4.000000000000001, + "route_distance_m": 1265.3425000000002, + "requested_route_distance_m": 1265.3425000000002, + "route_length_m": 2026.6238040154117, + "variant": "L126-v225", + "capture": "captures/L126/passage-0-1-0-openair-3-4m-outside.png", + "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-outside.vfmesh", + "drawn_triangles": 149234, + "source_triangles": 181128, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 1265.3425000000002, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 3.9999999999999907, + "closeup_target_surface_distance_m": 0.06836631107301705, + "closeup_predicted_target_offset_m": 0.06836631107301705, + "closeup_wall_normal_alignment": 0.9604329420550252, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -28.63982379180018, + -15.582695163623317, + -601.2438490311043 + ], + "target_actual_m": [ + -24.955621627611308, + -14.176566764792845, + -600.5734332352072 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-outside-mesh.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-outside-render.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-outside-quality.log" + ] + }, + { + "name": "passage-0-1-0-openair-3-4m-interior-wall", + "passage": "passage/0-1/0", + "kind": "open-air-close", + "station": "section-3/4m-interior-wall", + "camera": [ + -26.071689640946218, + -10.338278587083852, + -601.3036807194 + ], + "target": [ + -24.774901932566983, + -14.057480898923608, + -600.6066327992378 + ], + "yaw": 160.77768453528284, + "pitch": 10.035712777782798, + "focus": [ + -22.1, + -12.258, + -599.244 + ], + "center_z": -599.244, + "open_air_section": 3, + "closeup_side": "interior-wall", + "closeup_preferred_normal": [ + 0.8297219066347834, + 0.5581769949132084, + -0.0 + ], + "camera_target_distance_m": 4.000000000000005, + "route_distance_m": 1265.3425000000002, + "requested_route_distance_m": 1265.3425000000002, + "route_length_m": 2026.6238040154117, + "variant": "L126-v225", + "capture": "captures/L126/passage-0-1-0-openair-3-4m-interior-wall.png", + "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall.vfmesh", + "drawn_triangles": 148100, + "source_triangles": 180244, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 1265.3425000000002, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 4.000000000000004, + "closeup_target_surface_distance_m": 0.15667051955483755, + "closeup_predicted_target_offset_m": 0.15667051955483755, + "closeup_wall_normal_alignment": 0.936006465878356, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -21.875641690065105, + -11.887416826703374, + -599.3020917133557 + ], + "target_actual_m": [ + -24.866552934428398, + -14.149067333208382, + -600.6947104389109 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall-mesh.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall-render.log", + "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall-quality.log" + ] + }, + { + "name": "passage-1-2-0-openair-1-4m-outside", + "passage": "passage/1-2/0", + "kind": "open-air-close", + "station": "section-1/4m-outside", + "camera": [ + -4.699079444431819, + -4.6537955842685985, + -748.15 + ], + "target": [ + -7.452748333327923, + -7.555055250400828, + -748.15 + ], + "yaw": -136.49505148095557, + "pitch": 0.0, + "focus": [ + -9.518, + -9.731, + -745.88 + ], + "center_z": -745.88, + "open_air_section": 1, + "closeup_side": "outside", + "closeup_preferred_normal": [ + 0.688417222224026, + 0.7253149165330574, + 0.0 + ], + "camera_target_distance_m": 4.000000000000001, + "route_distance_m": 83.504, + "requested_route_distance_m": 83.504, + "route_length_m": 114.99063175809309, + "variant": "L126-v225", + "capture": "captures/L126/passage-1-2-0-openair-1-4m-outside.png", + "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-outside.vfmesh", + "drawn_triangles": 620814, + "source_triangles": 684776, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 83.504, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 3.9999999999999654, + "closeup_target_surface_distance_m": 0.9023580264896125, + "closeup_predicted_target_offset_m": 0.9023580264896125, + "closeup_wall_normal_alignment": 0.5604211333378514, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -8.046760432303138, + -4.114982136123087, + -749.9844534333902 + ], + "target_actual_m": [ + -8.0, + -7.25, + -747.5006103515625 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-outside-mesh.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-outside-render.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-outside-quality.log" + ] + }, + { + "name": "passage-1-2-0-openair-1-4m-interior-wall", + "passage": "passage/1-2/0", + "kind": "open-air-close", + "station": "section-1/4m-interior-wall", + "camera": [ + -6.0956279351195075, + -11.653774892861163, + -748.8673569837389 + ], + "target": [ + -8.16773669839842, + -8.308365466344922, + -748.15 + ], + "yaw": -31.773605793127505, + "pitch": 10.331275124559749, + "focus": [ + -9.518, + -9.731, + -745.88 + ], + "center_z": -745.88, + "open_air_section": 1, + "closeup_side": "interior-wall", + "closeup_preferred_normal": [ + -0.688417222224026, + -0.7253149165330574, + -0.0 + ], + "camera_target_distance_m": 3.999999999999997, + "route_distance_m": 83.504, + "requested_route_distance_m": 83.504, + "route_length_m": 114.99063175809309, + "variant": "L126-v225", + "capture": "captures/L126/passage-1-2-0-openair-1-4m-interior-wall.png", + "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall.vfmesh", + "drawn_triangles": 609757, + "source_triangles": 668131, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 83.504, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 3.999999999999999, + "closeup_target_surface_distance_m": 0.6509430039577998, + "closeup_predicted_target_offset_m": 0.6509430039577998, + "closeup_wall_normal_alignment": 0.7808473937095911, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -8.525095579521167, + -12.94135557024142, + -748.3220319510015 + ], + "target_actual_m": [ + -8.18421537084871, + -8.958641713644115, + -748.1744141343152 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall-mesh.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall-render.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall-quality.log" + ] + }, + { + "name": "passage-1-2-0-openair-2-4m-outside", + "passage": "passage/1-2/0", + "kind": "open-air-close", + "station": "section-2/4m-outside", + "camera": [ + 6.53817273275958, + -4.657210376135293, + -752.013 + ], + "target": [ + 8.159152142647708, + -8.31404312493838, + -752.013 + ], + "yaw": 156.09352823535562, + "pitch": 0.0, + "focus": [ + 9.43, + -11.181, + -749.743 + ], + "center_z": -749.743, + "open_air_section": 2, + "closeup_side": "outside", + "closeup_preferred_normal": [ + -0.40524485247203174, + 0.9142081872007717, + 0.0 + ], + "camera_target_distance_m": 4.0, + "route_distance_m": 104.362, + "requested_route_distance_m": 104.362, + "route_length_m": 114.99063175809309, + "variant": "L126-v225", + "capture": "captures/L126/passage-1-2-0-openair-2-4m-outside.png", + "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-outside.vfmesh", + "drawn_triangles": 584542, + "source_triangles": 637002, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 104.362, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 4.0, + "closeup_target_surface_distance_m": 0.5901774459243846, + "closeup_predicted_target_offset_m": 0.5901774459243846, + "closeup_wall_normal_alignment": 0.9891249705782158, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 6.359624549359488, + -5.416552010781576, + -752.0616659309658 + ], + "target_actual_m": [ + 8.5, + -8.79556763526633, + -752.0293187551489 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-outside-mesh.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-outside-render.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-outside-quality.log" + ] + }, + { + "name": "passage-1-2-0-openair-2-4m-interior-wall", + "passage": "passage/1-2/0", + "kind": "open-air-close", + "station": "section-2/4m-interior-wall", + "camera": [ + 12.438590152225206, + -8.574465388721983, + -752.7261335058829 + ], + "target": [ + 8.55317187096847, + -9.20292810238377, + -752.013 + ], + "yaw": -99.18796190221158, + "pitch": 10.269787281460902, + "focus": [ + 9.43, + -11.181, + -749.743 + ], + "center_z": -749.743, + "open_air_section": 2, + "closeup_side": "interior-wall", + "closeup_preferred_normal": [ + 0.40524485247203174, + -0.9142081872007717, + -0.0 + ], + "camera_target_distance_m": 3.9999999999999973, + "route_distance_m": 104.362, + "requested_route_distance_m": 104.362, + "route_length_m": 114.99063175809309, + "variant": "L126-v225", + "capture": "captures/L126/passage-1-2-0-openair-2-4m-interior-wall.png", + "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall.vfmesh", + "drawn_triangles": 572258, + "source_triangles": 618646, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 104.362, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 4.000000000000001, + "closeup_target_surface_distance_m": 0.353159827911248, + "closeup_predicted_target_offset_m": 0.353159827911248, + "closeup_wall_normal_alignment": 0.9983988827266467, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + 9.748104215680776, + -12.666965794821667, + -752.0265932958123 + ], + "target_actual_m": [ + 8.335827076712103, + -8.924626207433736, + -752.0074179101423 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall-mesh.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall-render.log", + "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall-quality.log" + ] + }, + { + "name": "passage-2-3-0-openair-1-4m-outside", + "passage": "passage/2-3/0", + "kind": "open-air-close", + "station": "section-1/4m-outside", + "camera": [ + -3.5840423774965293, + -5.521048309862215, + -815.8969999999999 + ], + "target": [ + -5.637732447498513, + -8.953592132798093, + -815.8969999999999 + ], + "yaw": -149.10792796365394, + "pitch": 0.0, + "focus": [ + -7.178, + -11.528, + -813.627 + ], + "center_z": -813.627, + "open_air_section": 1, + "closeup_side": "outside", + "closeup_preferred_normal": [ + 0.5134225175004958, + 0.8581359557339694, + 0.0 + ], + "camera_target_distance_m": 4.0, + "route_distance_m": 16.616500000000002, + "requested_route_distance_m": 16.616500000000002, + "route_length_m": 494.0722798830563, + "variant": "L126-v225", + "capture": "captures/L126/passage-2-3-0-openair-1-4m-outside.png", + "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-outside.vfmesh", + "drawn_triangles": 104612, + "source_triangles": 129326, + "verified": true, + "pixel_quality_status": "low_contrast_geometry_visible", + "route_distance_actual_m": 16.616500000000002, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 4.0000000000000036, + "closeup_target_surface_distance_m": 0.29188924025474844, + "closeup_predicted_target_offset_m": 0.29188924025474844, + "closeup_wall_normal_alignment": 0.6703275045296155, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -3.7918253987505834, + -7.16028175130118, + -813.227396563761 + ], + "target_actual_m": [ + -5.7833741859987065, + -9.093313475424294, + -816.1078690565205 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-outside-mesh.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-outside-render.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-outside-quality.log" + ] + }, + { + "name": "passage-2-3-0-openair-1-4m-interior-wall", + "passage": "passage/2-3/0", + "kind": "open-air-close", + "station": "section-1/4m-interior-wall", + "camera": [ + -3.4141605326349946, + -12.659565888737353, + -816.5879167710818 + ], + "target": [ + -6.170971760123668, + -9.844849940114793, + -815.8969999999999 + ], + "yaw": -44.40454805561343, + "pitch": 9.946538162082001, + "focus": [ + -7.178, + -11.528, + -813.627 + ], + "center_z": -813.627, + "open_air_section": 1, + "closeup_side": "interior-wall", + "closeup_preferred_normal": [ + -0.5134225175004958, + -0.8581359557339694, + -0.0 + ], + "camera_target_distance_m": 4.000000000000005, + "route_distance_m": 16.616500000000002, + "requested_route_distance_m": 16.616500000000002, + "route_length_m": 494.0722798830563, + "variant": "L126-v225", + "capture": "captures/L126/passage-2-3-0-openair-1-4m-interior-wall.png", + "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall.vfmesh", + "drawn_triangles": 94962, + "source_triangles": 118028, + "verified": true, + "pixel_quality_status": "low_contrast_geometry_visible", + "route_distance_actual_m": 16.616500000000002, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 4.0, + "closeup_target_surface_distance_m": 0.41920390486225767, + "closeup_predicted_target_offset_m": 0.41920390486225767, + "closeup_wall_normal_alignment": 0.740744136337711, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -7.998432705401559, + -11.833936581758076, + -818.2481168532394 + ], + "target_actual_m": [ + -5.94757062165508, + -9.608161331921629, + -815.6327986602337 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall-mesh.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall-render.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall-quality.log" + ] + }, + { + "name": "passage-2-3-0-openair-2-4m-outside", + "passage": "passage/2-3/0", + "kind": "open-air-close", + "station": "section-2/4m-outside", + "camera": [ + -4.5562890668466025, + 4.648574813628143, + -879.7479999999999 + ], + "target": [ + -7.40869531436283, + 7.452817777269203, + -879.7479999999999 + ], + "yaw": -45.487830534998494, + "pitch": 0.0, + "focus": [ + -9.548, + 9.556, + -877.478 + ], + "center_z": -877.478, + "open_air_section": 2, + "closeup_side": "outside", + "closeup_preferred_normal": [ + 0.7131015618790567, + -0.7010607409102652, + 0.0 + ], + "camera_target_distance_m": 4.000000000000001, + "route_distance_m": 374.929, + "requested_route_distance_m": 374.929, + "route_length_m": 494.0722798830563, + "variant": "L126-v225", + "capture": "captures/L126/passage-2-3-0-openair-2-4m-outside.png", + "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-outside.vfmesh", + "drawn_triangles": 475860, + "source_triangles": 504244, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 374.929, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 4.0, + "closeup_target_surface_distance_m": 1.7280841589725482, + "closeup_predicted_target_offset_m": 1.7280841589725482, + "closeup_wall_normal_alignment": 0.6707889779439669, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -7.47193274788199, + 5.182168353356822, + -879.6783722112204 + ], + "target_actual_m": [ + -7.306445568768645, + 9.17777802625833, + -879.7662205769708 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-outside-mesh.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-outside-render.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-outside-quality.log" + ] + }, + { + "name": "passage-2-3-0-openair-2-4m-interior-wall", + "passage": "passage/2-3/0", + "kind": "open-air-close", + "station": "section-2/4m-interior-wall", + "camera": [ + -11.533986119377625, + 6.164550123765492, + -880.4395357921604 + ], + "target": [ + -8.149320771422074, + 8.180937668487475, + -879.7479999999999 + ], + "yaw": 59.215963829172296, + "pitch": 9.955540417812847, + "focus": [ + -9.548, + 9.556, + -877.478 + ], + "center_z": -877.478, + "open_air_section": 2, + "closeup_side": "interior-wall", + "closeup_preferred_normal": [ + -0.7131015618790567, + 0.7010607409102652, + -0.0 + ], + "camera_target_distance_m": 4.000000000000007, + "route_distance_m": 374.929, + "requested_route_distance_m": 374.929, + "route_length_m": 494.0722798830563, + "variant": "L126-v225", + "capture": "captures/L126/passage-2-3-0-openair-2-4m-interior-wall.png", + "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall.vfmesh", + "drawn_triangles": 486480, + "source_triangles": 513552, + "verified": true, + "pixel_quality_status": "pass", + "route_distance_actual_m": 374.929, + "route_station_adjustment_m": 0.0, + "closeup_camera_target_distance_m": 4.0, + "closeup_target_surface_distance_m": 1.0286227628002445, + "closeup_predicted_target_offset_m": 1.0286227628002445, + "closeup_wall_normal_alignment": 0.720019406420326, + "fallback_kind": null, + "fallback_surface_distance_m": null, + "camera_actual_m": [ + -8.257109087497915, + 13.208090205453457, + -879.7612149430302 + ], + "target_actual_m": [ + -8.149320771422074, + 9.209558486938477, + -879.75 + ], + "logs": [ + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall-mesh.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall-render.log", + "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall-quality.log" + ] + } + ] +} diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall.png new file mode 100644 index 0000000..1fd88a4 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-outside.png new file mode 100644 index 0000000..87570be Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-outside.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall.png new file mode 100644 index 0000000..f76e648 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-outside.png new file mode 100644 index 0000000..c19fc5f Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-outside.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall.png new file mode 100644 index 0000000..7dcd833 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-outside.png new file mode 100644 index 0000000..816ba1d Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-outside.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-1.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-1.png new file mode 100644 index 0000000..e67e8c5 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-1.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-2.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-2.png new file mode 100644 index 0000000..2b35b85 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-2.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-3.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-3.png new file mode 100644 index 0000000..bed41ff Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-3.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall.png new file mode 100644 index 0000000..7569f8c Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-outside.png new file mode 100644 index 0000000..cd3c8b5 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-outside.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall.png new file mode 100644 index 0000000..a6be396 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-outside.png new file mode 100644 index 0000000..c00f532 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-outside.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-1.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-1.png new file mode 100644 index 0000000..3611714 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-1.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-2.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-2.png new file mode 100644 index 0000000..9ac3f59 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-2.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-3.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-3.png new file mode 100644 index 0000000..5b0e0d2 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-3.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall.png new file mode 100644 index 0000000..8a9efbd Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-outside.png new file mode 100644 index 0000000..6ce2868 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-outside.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall.png new file mode 100644 index 0000000..8532d70 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-outside.png new file mode 100644 index 0000000..e9fef5f Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-outside.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-1.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-1.png new file mode 100644 index 0000000..0413199 Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-1.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-2.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-2.png new file mode 100644 index 0000000..f823d6e Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-2.png differ diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-3.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-3.png new file mode 100644 index 0000000..279866a Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-3.png differ