diff --git a/docs/port/PORT-QA.md b/docs/port/PORT-QA.md index 5955e5e..5bed665 100644 --- a/docs/port/PORT-QA.md +++ b/docs/port/PORT-QA.md @@ -79,7 +79,7 @@ Hinweis: Die Projektdateien des .NET-Harness (`tools/dotnet/*/*.csproj`) fehlten | Bekannte Unterschiede | TCP statt ENet (Rahmen auf demselben Socket, Verwerfen über Serial); Zwei-Prozess-Loopback als In-Prozess-Test; vereinfachtes Hauptmenü; „Menü“ fragt vor der Rückkehr (Godot kehrt sofort zurück) | | Nachtrag (7. Oktober 2026) | Startbildschirm in der Szene: `LuneWorldBuilder` legt `LuneNetPlay` an, das Menü hat eine eigene Fläche über dem HUD, „Menü“ → „Zum Menü“ führt zum Startbildschirm zurück. Tests und Benchmark ohne Startbildschirm (`LuneMatchDriver.DirectStart`, `-luneBenchmark`). EditMode 29/29, PlayMode 14/14 mit neuem `StartScreenTests` (26/26), Verify 718/0, Fingerabdrücke unverändert. macOS-Player-Selbsttest `-luneSmoke` 26/26 (`logs/u4/smoke-macos.json`, Bilder `screenshots/u4/startbildschirm/`). Bestätigungslauf am 8. Oktober auf dem Endstand bei offenem Mac: EditMode 29/29, PlayMode 14/14 in einem Zug. Leistung A/B gegen U5.2 (`1b31f9b`), je drei Läufe abwechselnd: Übersicht 111,0–113,9 zu 112,5–114,5 fps, Mid nah 145,2–148,9 zu 146,7–150,0 fps, HUD 0,09–0,11 ms. Die Mittelwerte liegen 0,3 bzw. 1,1 % auseinander, innerhalb der Streuung; kein messbarer Unterschied (`logs/u4/benchmark-ab/`). Details [U4-NETWORK.md](U4-NETWORK.md#nachtrag-startbildschirm-in-der-szene-7-oktober-2026) | | Offen | Windows-/Linux-Player (Build-Module); Internetpartie über mehrere Rechner; optional unzuverlässiger Rahmenkanal | -| Commits | `luneraria/u4` `769e622`; Nachtrag `luneraria/u4-nachtrag` = `d590fde` (auf U5.2), Bestätigung und Benchmark im Commit danach | +| Commits | `luneraria/u4` `769e622`; Nachtrag `luneraria/u4-nachtrag` = `d590fde` (auf U5.2), Bestätigung und Benchmark im Commit danach; in `luneraria/u5.3` zusammengeführt (`c62a1f4`), Szene dort neu gebaut, EditMode 29/29, PlayMode 14/14, Player-Selbsttest 26/26 (`logs/u4/smoke-macos-u5.3.json`) | ## U5 · Visuelle Neuausrichtung (Vertical Slice) diff --git a/docs/port/PORT-STATUS.md b/docs/port/PORT-STATUS.md index 9b89113..e0bfa63 100644 --- a/docs/port/PORT-STATUS.md +++ b/docs/port/PORT-STATUS.md @@ -1,6 +1,6 @@ # Port-Status · Champions of Luneraria in Unity -Stand: 7. Oktober 2026 (U5.3). +Stand: 8. Oktober 2026 (U5.3 mit U4-Nachtrag). Referenz ist der Godot-Stand `luneraria/g3` (`1b540f2`) in `../saumwacht-godot`; er wird nicht mehr verändert. Engine: Unity 6.3 LTS (6000.3.20f1), Renderer URP. HDRP ist ausgeschlossen, bis ein Vergleich mit einer echten Szene etwas anderes nahelegt. @@ -12,7 +12,7 @@ Zielplattformen sind Fedora 44 und Windows 11; macOS ist die Entwicklungsplattfo | U1.5 · Unity-Integrationsprüfung | **fertig**: Kern im Unity-Editor 402/402 (Release und Debug), Golden bitgleich nach expliziter float32-Rundung in `Vec2`, Editor-Benchmark | [U1.5-UNITY.md](U1.5-UNITY.md) | | U2 · Unity-Spielwelt | **fertig**: U2A Blender→FBX-Pipeline (9 Assets geprüft), U2B G1-Karte mit Materialsystem, U2C fester Takt und Ansichten (bildratenunabhängig nachgewiesen), U2D vollständige Bot-Partien sichtbar und gleich dem Kern; danach Batch-Import aller 86 Modelle, Einheiten mit eigenen Modellen | [U2-WORLD.md](U2-WORLD.md) | | U3 · G3-HUD portieren | **fertig** (`luneraria/u3`): UI Toolkit, Sichtmodell mit Privatsphäre, menschlicher Sitz, alle HUD-Bereiche, Eingabe und Befehle, Prüfung 718/0, 14 G3-Motive, Spieltest, Leistung mit HUD | [U3-UI.md](U3-UI.md) | -| U4 · Netzwerk | **fertig** (`luneraria/u4` = `769e622`): LuneSession (Protokoll 4), TCP-Transport, Startbildschirm Host/Join, 43+12 Prüfungen, Mindestumfang M4 | [U4-NETWORK.md](U4-NETWORK.md) | +| U4 · Netzwerk | **fertig** (`luneraria/u4` = `769e622`): LuneSession (Protokoll 4), TCP-Transport, Startbildschirm Host/Join, 43+12 Prüfungen, Mindestumfang M4. Nachtrag (`luneraria/u4-nachtrag`, in U5.3 zusammengeführt): Startbildschirm in der Szene, „Menü“ führt dorthin zurück | [U4-NETWORK.md](U4-NETWORK.md) | | U5 · Visuelle Neuausrichtung (Vertical Slice Mid-Lane) | **fertig** (`luneraria/u5` = `2c1686b`, Stufen `luneraria/u5.2`): 6 PBR-Sätze, Surface-Shader mit Albedo/Normal/ORM, Stufen Lane/Rand, Hit- und Turm-VFX, 133/180 fps. **U5.3** (`luneraria/u5.3` = `07fa457`): Gebäude, Boss und Ringborkes Rinde auf PBR (11 Sätze); Bildfehler aus U5 behoben (doppelte Einfärbung, Datenkarten als sRGB, Streifen, bleichender Treffer-Flash, Nebel), Helligkeit und Grün wieder auf U3-Niveau | [U5-VISUAL.md](U5-VISUAL.md) | QA je Meilenstein: [PORT-QA.md](PORT-QA.md). diff --git a/docs/port/U4-NETWORK.md b/docs/port/U4-NETWORK.md index 7af813e..ec71f3b 100644 --- a/docs/port/U4-NETWORK.md +++ b/docs/port/U4-NETWORK.md @@ -75,7 +75,7 @@ Das Loopback der Mehr-Runden-Partie läuft im Prozess mit zwei `LuneSession`-Ins ## Nachtrag: Startbildschirm in der Szene (7. Oktober 2026) -Zweig `luneraria/u4-nachtrag` (`d590fde`), aufgesetzt auf `luneraria/u5.2` (`1b31f9b`, mit dem U3-Nachtrag). +Zweig `luneraria/u4-nachtrag` (`d590fde`), aufgesetzt auf `luneraria/u5.2` (`1b31f9b`, mit dem U3-Nachtrag). Am 8. Oktober in `luneraria/u5.3` zusammengeführt (`c62a1f4`). Einziger Konflikt war die Szene; sie ist mit dem zusammengeführten Builder neu gebaut (U5.3-Welt plus `LuneNetPlay`, sonst gleiche Verweise). Prüfung dort: EditMode 29/29, PlayMode 14/14, Fingerabdrücke unverändert, Player-Selbsttest 26/26 (`logs/u4/smoke-macos-u5.3.json`). **Befund** aus dem Spieltest des U3-Nachtrags: Nichts legte `LuneNetPlay` in die Szene. `G1_Map.unity` enthielt die Komponente nicht, `LuneWorldBuilder` fügte sie nicht hinzu, und es gab keinen Bootstrap. Das Spiel begann deshalb direkt in einer Partie (`LuneGame.Start` startet sie, wenn `Net` fehlt), und der Startbildschirm war unerreichbar. Der Verlassen-Dialog versprach das Hauptmenü, beendete aber das Spiel. diff --git a/docs/port/logs/u4/smoke-macos-u5.3-log.txt b/docs/port/logs/u4/smoke-macos-u5.3-log.txt new file mode 100644 index 0000000..a78571c --- /dev/null +++ b/docs/port/logs/u4/smoke-macos-u5.3-log.txt @@ -0,0 +1,33 @@ +LUNE_SMOKE ok Startbildschirm sichtbar +LUNE_SMOKE ok Partie wartet: Spielcontroller und Treiber aus +LUNE_SMOKE ok vor dem Start kein HUD +LUNE_SMOKE ok „Allein spielen“ bedienbar +LUNE_SMOKE_SHOT 00-startbildschirm.jpg +LUNE_SMOKE ok Offline: Startbildschirm verborgen +LUNE_SMOKE ok Offline: Spielcontroller und Treiber laufen +LUNE_SMOKE ok Offline: HUD sichtbar +LUNE_SMOKE ok Offline: neue Partie, Sitz 1 (Mid) +LUNE_SMOKE ok Offline: Planung +LUNE_SMOKE ok Offline: lokale Sitzung +LUNE_SMOKE_SHOT 01-planung.jpg +LUNE_SMOKE ok „Startaufstellung“ bedienbar +LUNE_SMOKE ok Startaufstellung gekauft (3 Einheiten) +LUNE_SMOKE ok „Bereit“ bedienbar +LUNE_SMOKE ok Bereit: Kampf beginnt +LUNE_SMOKE ok Kampf: Figuren im Feld +LUNE_SMOKE_SHOT 02-kampf.jpg +LUNE_SMOKE ok „Menü“ bedienbar +LUNE_SMOKE ok Verlassen-Dialog mit „Zum Menü“ +LUNE_SMOKE_SHOT 03-verlassen.jpg +LUNE_SMOKE ok Zurück: Startbildschirm sichtbar +LUNE_SMOKE ok Zurück: HUD verborgen +LUNE_SMOKE ok Zurück: Spielcontroller und Treiber aus +LUNE_SMOKE ok Zurück: Sitzung beendet +LUNE_SMOKE ok Zurück: keine Figuren im Feld +LUNE_SMOKE ok Zurück: Kamera ruht +LUNE_SMOKE ok Zurück: „Allein spielen“ bedienbar +LUNE_SMOKE_SHOT 04-zurueck-im-startbildschirm.jpg +LUNE_SMOKE ok Zweite Partie: Startbildschirm verborgen, HUD sichtbar +LUNE_SMOKE ok Zweite Partie: neue Partie in der Planung +LUNE_SMOKE_SHOT 05-zweite-partie.jpg +LUNE_SMOKE_PASS 26 ok, 0 Fehler diff --git a/docs/port/logs/u4/smoke-macos-u5.3.json b/docs/port/logs/u4/smoke-macos-u5.3.json new file mode 100644 index 0000000..c83293f --- /dev/null +++ b/docs/port/logs/u4/smoke-macos-u5.3.json @@ -0,0 +1,11 @@ +{ + "build": "OSXPlayer player, 6000.3.20f1, release", + "device": "Mac17,2; Apple M5; Apple M5", + "graphics_api": "Metal", + "resolution": "1920x1080", + "seconds": 10.8, + "passed": ["Startbildschirm sichtbar", "Partie wartet: Spielcontroller und Treiber aus", "vor dem Start kein HUD", "„Allein spielen“ bedienbar", "Offline: Startbildschirm verborgen", "Offline: Spielcontroller und Treiber laufen", "Offline: HUD sichtbar", "Offline: neue Partie, Sitz 1 (Mid)", "Offline: Planung", "Offline: lokale Sitzung", "„Startaufstellung“ bedienbar", "Startaufstellung gekauft (3 Einheiten)", "„Bereit“ bedienbar", "Bereit: Kampf beginnt", "Kampf: Figuren im Feld", "„Menü“ bedienbar", "Verlassen-Dialog mit „Zum Menü“", "Zurück: Startbildschirm sichtbar", "Zurück: HUD verborgen", "Zurück: Spielcontroller und Treiber aus", "Zurück: Sitzung beendet", "Zurück: keine Figuren im Feld", "Zurück: Kamera ruht", "Zurück: „Allein spielen“ bedienbar", "Zweite Partie: Startbildschirm verborgen, HUD sichtbar", "Zweite Partie: neue Partie in der Planung"], + "failed": [], + "photos": ["00-startbildschirm.jpg", "01-planung.jpg", "02-kampf.jpg", "03-verlassen.jpg", "04-zurueck-im-startbildschirm.jpg", "05-zweite-partie.jpg"], + "result": "PASS" +}