docs: arc42 architecture documentation for Gig Line

Populated from the arc42-template (EN/adoc) with project-specific content
across all 12 sections:

1.  Introduction and Goals — requirements overview, quality goals, stakeholders
2.  Architecture Constraints — technical (engine, collision, coordinates),
    organisational (squash-merge, visual review, provenance), conventions
3.  Context and Scope — business and technical context tables
4.  Solution Strategy — technology decisions, top-level decomposition,
    quality achievement approach
5.  Building Block View — Gameplay (6 C++ classes), Site (7 meshes + 7
    materials), Facades (9 buildings), Art Pipeline, QA & Review; Level 2
    white boxes for input flow and collision model
6.  Runtime View — walk, screenshot capture, QA self-test, build/import
    pipeline scenarios
7.  Deployment View — dev workstation and packaged build infrastructure
8.  Cross-cutting Concepts — coordinate system, collision model, lighting,
    materials, data provenance, QA harness
9.  Architecture Decisions — 7 ADRs (dynamic lighting, UE materials,
    C++ collision helper, grounded reset, core ticker, Y convention,
    headless Blender)
10. Quality Requirements — overview table + 7 measurable scenarios
11. Risks and Technical Debts — 5 risks, 2 debts with mitigations
12. Glossary — 16 domain-specific terms

Master document: Docs/Architecture/architecture.adoc
Config: Docs/Architecture/config.adoc
This commit is contained in:
zwitschi committed 2026-11-08 13:08:35 +01:00
1 parent b577afa730
commit 72705268b5
15 files changed
+610

No files matched your search

@@ -0,0 +1,47 @@
ifndef::imagesdir[:imagesdir: ./images]
[[section-introduction-and-goals]]
== Introduction and Goals
{project-name} is a Linux-first Unreal Engine 5 game that reconstructs a walkable (and eventually drivable) stretch of Hollywood Boulevard around 6840 Hollywood Blvd / El Capitan Entertainment Centre. The initial release (`0.1.0`) delivers a first-person walking demo of the south-side block between Highland Avenue and Orange Drive, plus north-side buildings within 50 m of the frontage.
=== Requirements Overview
[cols="1,3" options="header"]
|===
| ID | Description
| F-1 | Walk both sides of Hollywood Blvd in the demo area without falling through geometry
| F-2 | First-person movement (WASD + mouse look), jump, reset (R), pause (Escape)
| F-3 | Fixed daytime lighting and atmosphere (sun, sky, fog, exposure)
| F-4 | Geographic attribution display (ODbL: "© OpenStreetMap contributors" + licence link)
| F-5 | Designated street crossing with zebra markings at signalised crossings
| F-6 | Building façades recognisable against reference photography
| F-7 | Terrain, road, and sidewalk follow real-world DEM elevation
| F-8 | 60 FPS at 1440p on the documented workstation and quality preset
|===
Full requirements and progress are in link:../../TODO.md[TODO.md]; version direction is in link:../../ROADMAP.md[ROADMAP.md].
=== Quality Goals
[cols="1,3,2" options="header"]
|===
| Priority | Quality Goal | Scenario
| 1 | **Performance efficiency** | 60 FPS at 2560×1440 on RTX 5070 Ti, documented preset, no frame generation
| 2 | **Terrain walkability** | Zero raycast holes across both sidewalks and the carriageway (84-sample transect passes)
| 3 | **Geographic fidelity** | Building placement, street scale, and façade identity match reference photography
| 4 | **Build reproducibility** | Fresh checkout + documented engine path produces a runnable Linux build
| 5 | **Licensing compliance** | Every redistributable asset has verified provenance; ODbL attribution is visible at runtime
|===
=== Stakeholders
[cols="1,2,2" options="header"]
|===
| Role | Contact | Expectations
| Owner / Director | zwitschi | Sets scope, approves screenshots, cuts release tags
| AI coding agents | multiple sessions | Read `AGENTS.md`, `TODO.md`, `ROADMAP.md`, and this document for architecture constraints; never commit directly to `main`
| Players | end users | Walk the demo at 60 FPS without falling through the world; see a recognisable Hollywood block
| OSM contributors | OpenStreetMap | ODbL attribution is displayed and derivative-database obligations are met
|===