- Converted 13 individual .adoc section files to .md via asciidoctor→docbook5→pandoc(gfm) + post-processing, placed alongside the .adoc sources in Docs/Architecture/ - Rebuilt architecture.md from the individual section .md files - Ran prettier --write on all .md in the repo (23 files changed): normalised table column alignment, trailing whitespace, line breaks - Added .agents/ to .prettierignore (vendored third-party content) - All .md now passes prettier --check
2.3 KiB
Cross-cutting Concepts
Coordinate system and scale
-
Source CRS: EPSG:26911 (UTM zone 11N). Local origin recorded in
Geo/. -
Blender: metres. East → +X, north → +Y (Blender convention).
-
Unreal: centimetres. East → +X, north → −Y (confirmed from street mesh:
Sidewalk_NorthY −1912..−1053,Sidewalk_SouthY +718..+1447). -
Conversion: every exporter calls the metre→centimetre function. Import presets (
ue_metric_v1,ue_character_v1) are named and repeatable.
Rule: place a building only against a neighbour or street mesh, never in isolation.
Collision model
-
Site meshes (road, sidewalks, kerbs, crossing):
STATICmobility,BlockAllcollision profile. -
Terrain:
STATIC,CTF_UseComplexAsSimple(forced byUGigLineAssetToolsat build time, saved on the asset — the flag lives on theUStaticMesh/UBodySetup, not the map). -
Buildings:
STATIC, simple collision (convex hull from mesh). -
Rule: the collision flag must be saved on the asset. Saving only the
.umapsilently reverts it.
Lighting
-
Dynamic-only:
r.AllowStaticLighting=False. All lights areMOVABLE. -
Fixed daytime rig: directional light (sun, −62° pitch), sky light, exponential height fog, post-process volume with fixed exposure.
-
Rationale: avoids "LIGHTING NEEDS TO BE REBUILT" warnings; no bake step; the scene never changes time of day.
Materials
-
All materials authored in Unreal, not carried from Blender (FBX import loses diffuse colours).
-
World-space-noise blend nodes for cheap procedural variation (asphalt grain, concrete speckle, stucco roughness).
-
Instance parameters where tunable (e.g. wetness, ageing).
Geographic data provenance
-
OSM extract is layout data only — not authoritative for façade, height, or pavement detail.
-
DEM from 3DEP 1 m; elevation verified against cross-sections in
Geo/verification/. -
Reference photography (local, gitignored) drives manual façade work.
-
In-game ODbL attribution drawn by
AGigLineHUDevery frame, bottom-left.
QA harness
-
-qaselftest: core ticker (not world timer) so pause cannot freeze the test that proves pause works. -
GigLine SIM/GigLine GROUND: TEMP diagnostic logging, to be removed before release tag. -
Screenshot approval: human must tick
Screenshots/README.mdbefore visual work is marked done.