DevLog #2 — Das OS lebt: Fullscreen, ESC-Key und echte Fenster
EPIC_014 abgeschlossen: Das In-Game-OS hat jetzt einen echten Vollbildmodus, eine funktionierende ESC-Taste und isolierte Popup-Fenster. RiverTycoon faengt an, sich wie ein richtiges Spiel anzufuehlen.
Von der Datenbank zur Interaktion
Der letzte DevLog handelte von Fundamenten — JSON-Datenbanken, satirischen Brands, unsichtbare Systeme die im Hintergrund laufen. EPIC_014 ist das Gegenteil davon: Es geht um das, was der Spieler sieht und fuehlt.
Das In-Game-OS in RiverTycoon ist keine Dekoration. Es ist die Spielflaeche. Und jetzt verhaelt es sich endlich so.
Das Problem mit zwei Welten
Unity kennt zwei Arten von UI: ScreenSpaceCamera und ScreenSpaceOverlay. Klingt technisch — ist es auch. Aber der Unterschied ist fuer den Spieler spuerbar.
ScreenSpaceCamera rendert das UI als Teil der Spielwelt, mit Tiefe, Licht und Kamera-Perspektive. Overlay klebt direkt aufs Bild, ohne Ruecksicht auf die Szene dahinter. Fuer ein normales Spiel-HUD ist Overlay prima. Fuer ein In-Game-OS, das sich wie ein echtes Betriebssystem anfuehlen soll — problematisch.
EPIC_014 loest genau das: Ein sauberer Toggle zwischen beiden Modi, abhaengig davon ob der Spieler im Vollbild-OS-Modus ist oder nicht.
Was gebaut wurde
Fullscreen OS Toggle — Mit einem Klick wechselt das gesamte OS zwischen Fenster- und Vollbildmodus. Technisch schaltet das Canvas zwischen ScreenSpaceCamera und ScreenSpaceOverlay um, setzt Referenzen neu und sorgt dafuer, dass keine UI-Elemente dabei verloren gehen oder falsch skalieren.
ESC-Key Binding — Klingt trivial. War es nicht. Die ESC-Taste schliesst jetzt das OS geordnet — mit einem State-Check der sicherstellt, dass offene Popup-Fenster zuerst geschlossen werden, bevor das gesamte OS weggeht. Kein abruptes Verschwinden, kein verlorener Zustand.
Isolierte Popup-Windows — Das groesste Sorgenkind von EPIC_014. Jedes App-Fenster (Damazon, Mail, Food-Delivery) muss unabhaengig geoeffnet, verschoben und geschlossen werden koennen, ohne den Rest des OS zu beeinflussen. Das erfordert eine saubere Chrome-Logik: Titelleiste, Close-Button, Z-Order-Management.
Die NUnit-Tests dahinter
Ein Feature gilt in RiverTycoon erst als fertig, wenn es gruene Tests hat. EPIC_014 war da besonders nervig — der JobManager und die worldCamera-Referenzen hatten Test-Abhaengigkeiten, die erst geloest werden mussten, bevor die neuen Tests laufen konnten.
Nach dem Fix: Alle Tests gruen. Merge auf dev. Sprint geschlossen.
Das klingt selbstverstaendlich. Als Solo-Dev ohne QA-Team ist es das nicht.
Was der Spieler jetzt erleben kann
Noch nicht spielbar im klassischen Sinne. Aber zum ersten Mal fuehlt sich das OS wie ein OS an:
- Du oeffnest es. Es fuellt den Bildschirm.
- Du drueckst ESC. Es geht weg — geordnet, nicht abrupt.
- Du oeffnest Damazon. Ein Fenster erscheint. Du oeffnest die Mail-App. Noch ein Fenster. Beide existieren gleichzeitig, unabhaengig voneinander.
- Du klickst auf eines. Es kommt in den Vordergrund.
Kleinigkeiten. Aber es sind die Kleinigkeiten, die den Unterschied zwischen "Prototype" und "Spiel" machen.
Was als naechstes kommt
Sprint 2 laeuft gerade: Das OS-Layout wird refaktoriert, die Food-App bekommt ihre komplette UI-Logik mit Coroutine-Animationen. Der Spieler soll bald das erste Mal echtes Essen bestellen koennen — und dabei zusehen wie die Bestellung animiert reinkommt.
Und die Homepage hier? Auch die waechst. Netlify ist live, das Auto-Deploy funktioniert. Ihr lest das in Echtzeit.
Pixel River Studio · Solo Indie Dev · Horb am Neckar, Baden-Wuerttemberg Stack: Unity 6 · URP · C# 12+ · NUnit · Eleventy · Netlify
Kommentare