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
35 lines
1.7 KiB
Plaintext
35 lines
1.7 KiB
Plaintext
ifndef::imagesdir[:imagesdir: ./images]
|
||
|
||
[[section-quality-scenarios]]
|
||
== Quality Requirements
|
||
|
||
=== Quality Requirements Overview
|
||
|
||
[cols="1,2,1" options="header"]
|
||
|===
|
||
| Category | Requirement | Priority
|
||
| Performance efficiency | 60 FPS at 2560×1440, documented preset, no frame generation | 1
|
||
| Reliability / Terrain | Zero raycast holes across sidewalks and carriageway (84-sample transect) | 1
|
||
| Accuracy / Fidelity | Building placement matches reference photography within ~1 m | 2
|
||
| Accuracy / Fidelity | Street scale (lane width, sidewalk width) within ~10 cm of measured profile | 2
|
||
| Usability | WASD + mouse look, jump, reset (R), pause (Escape) — no tutorial needed | 2
|
||
| Compliance | ODbL attribution visible at runtime | 2
|
||
| Maintainability | Fresh checkout builds with documented engine installation | 2
|
||
| Portability | Linux build packages and runs; Windows build ships | 3
|
||
|===
|
||
|
||
=== Quality Scenarios
|
||
|
||
[cols="1,1,2,2" options="header"]
|
||
|===
|
||
| ID | Source/Stimulus | Response | Metric
|
||
| QS-1 | Player walks both sides of the demo | No fall-through, character stays at ground Z | 0 raycast holes in 84-sample transect
|
||
| QS-2 | Player holds W for 2 s on flat road | Character moves forward | ≥ 200 cm displacement, Z constant within ±5 cm
|
||
| QS-3 | Player presses R | Character teleports to spawn | < 100 cm from `StartLocation`
|
||
| QS-4 | Player presses Escape | Game pauses, cursor appears | `IsGamePaused()` = true
|
||
| QS-5 | Player presses Escape while paused | Game unpauses, cursor hides | `IsGamePaused()` = false
|
||
| QS-6 | Game runs on dev workstation at 1440p | Frame rate stable | ≥ 60 FPS, 99th percentile ≥ 55 FPS
|
||
| QS-7 | Fresh checkout + engine install | Build succeeds | Exit code 0, runnable binary produced
|
||
|===
|
||
|