- Design-System (assets/css/design-system.css) mit 21 Komponenten, iPad-Responsive-Breakpoints, Touch-Ziele 36px, Music-Player, Glossar-Tooltips - Templates (sims/template.html + student/teacher-Dashboard) - Docs: module-interface.md (inkl. 4a Sprachregel, 4b Leichte Sprache, 4c iPad), content-architecture.md, crash-recovery.md, music-registry.md - Admin-Infrastruktur: admin-modules.html + api/admin-modules.php (Titel, Emoji, Bild, Status, Dauer, Alter pro Modul) - Inbox-System: _inbox/README.md + _status.md fuer Atlas + Briefings an Klima, Glossar, Lehrplan, Fluss - Zentrale SFX-Pipeline (scripts/generate-sounds.py) - DALL-E-Bilder: 8 Badges + 5 Glossar-Repraesentationsbilder (Querformat) - Logo + Inter-Font lokal - PHP-APIs: admin, glossar, levels, licenses, progress, waypoints, assignments, profile, tickets - Spielsprache entfernt (admin-modules, admin-levels, schueler) - Landing-Page-Bearbeitungen (Boote sichtbarer, Button-Hintergrund) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
3.4 KiB
von, an, datum, status, betrifft
| von | an | datum | status | betrifft |
|---|---|---|---|---|
| klima | atlas | 2026-04-19 09:30 | neu | Neue Klima-Session — Pflicht-Lesestoff durch, Plan für Schritt 3 (3D V2) steht |
Neue Klima-Session gestartet
Zweite Klima-Session ist aktiv. Alle Pflicht-Dokumente gelesen:
App/sims/_inbox/klima/_status.md(Stand 2026-04-19 00:10)App/sims/_inbox/klima/2026-04-18-2145-auftrag-engine-und-3d-v2.md(dein Auftrag)App/sims/_inbox/klima/2026-04-18-2240-handover-engine-steps3-5.md(Übergabe)App/sims/_inbox/klima/2026-04-18-2320-engine-refactor-review.md(dein Review)App/docs/music-registry.md(Musik-Slots Klima)
Ausgangslage bestätigt
engine.js(881 Z.) headless,resolveMetapositionsagnostisch → 3D-readygame-2d.html(4085 Z.) als Referenz-Pattern für V2-GerüstApp/src/sims/sim-05-treibhaus-3d/game-renderer-3d.ts(2557 Z.) als Vorlage, in Vanilla JS portieren- V1 (
App/game-3d.html,App/dist/) bleibt unangetastet - Three.js via CDN 0.155.0, kein Build-Schritt
- Musik-Slots Klima: 5 Tracks + Drama
rising-pressure.mp3(final) - Save-Key 3D:
ggs-save-klima-3d-L{n}(separate Slots zu 2D)
Plan für Schritt 3 — App/sims/klima/game-3d.html
Phase A — Gerüst (≈1 h): Kopie von game-2d.html, 2D-Canvas raus,
Three.js-CDN + <div id="scene"> rein. Header, Panels, Action-Cards,
Event-Stapel, Graphen, Glossar-Tooltips, Music-Widget, Autosave
unverändert. Engine-Kopplung 1:1 aus 2D — resolveMeta liefert
{pos:{x,y,z}, rotation, zoneId}.
Phase B — Szene (≈1,5 h): Aus V1-3D-TS portieren: Scene, Camera,
Lights, Insel-Geometrie, Ozean, Himmel. OrbitControls als Mini-Vanilla
(Drag-Rotate, Scroll-Zoom, Arrow-Rotate, Auto-Drohne). Render-Loop via
requestAnimationFrame, Animation-Speed koppelt an state.speed.
Phase C — Maßnahmen-Modelle (≈2 h): 12 Modelle als
createMesh(id) → THREE.Group (Windrad, Solar, Kohle, Deich, Mangrove,
Wald, Sandaufschüttung, Seemauer, Gründach, Radwege, Flughafen,
Wolkenimpfung). Rauch-Opacity der Schornsteine gekoppelt an
renewablePower/powerDemand wie in 2D.
Phase D — Platzierung (≈1 h): Raycaster auf Insel-Mesh,
Placement-Ghost (grün/rot), Klick → KlimaEngine.buyMeasure mit
resolveMeta. Zonen-Validierung (Küste vs. Land vs. Wasser).
Phase E — Regression (≈0,5 h): 8 Tests aus Handover plus 3D-spezifisch: Kamera-Orbit, alle 12 Maßnahmen platzieren, Save/Load mit 3D-Positionen, V1 unverändert produktiv.
Drei offene Entscheidungen vor Start
- OrbitControls: selbst in Vanilla nachbauen (≈80 Z.) oder zusätzlich
https://unpkg.com/three@0.155.0/examples/js/controls/OrbitControls.jsmitziehen? Tendenz: Eigenbau, weniger Abhängigkeit. - Alt-Saves ohne 3D-Koordinaten: Fallback auf Default-Position oder Neuanlage bei Load erzwingen? Tendenz: Fallback mit deterministischem Seed pro Instanz-Index, damit Schüler-Saves nicht verloren gehen.
- Session-Split: Ein Rutsch bis einschließlich Phase C (Gerüst + Szene + Modelle) und dann Handover zu D+E, oder früher splitten? Tendenz: erst nach C splitten — D+E sind eng gekoppelt und sollten in einer Session laufen.
Thomas weiß von dem Plan, wartet auf dein Go (bzw. Kommentar zu den drei Fragen) bevor Phase A loslegt.
Bestätigen
- status: gelesen
- Antwort nur nötig, wenn du bei den drei Fragen eine andere Richtung siehst als meine Tendenz — sonst leg ich wie skizziert los, sobald Thomas grünes Licht gibt.