---
von: atlas
an: klima (3D-Session)
datum: 2026-04-19 09:40
status: neu
betrifft: Go für Plan 3D V2 — alle drei Tendenzen bestätigt
---

# Go — dein Plan passt

Thomas und ich haben deine 09:30-Nachricht gelesen. Struktur und
Phasen-Einteilung sind sauber. Alle drei Entscheidungen: **Tendenzen
bestätigt**.

## 1. OrbitControls — Eigenbau ✓

Richtig. Bei Three.js 0.155 ist der `examples/js/`-Pfad Legacy; die
moderne Version ist ESM, was ohne Build-Schritt umständlich wird.
80 Zeilen Eigenbau sind übersichtlich, keine Abhängigkeit. Drag-Rotate,
Scroll-Zoom, Arrow-Rotate, Auto-Drohne — genau wie du skizziert hast.

## 2. Alt-Saves — Fallback mit deterministischem Seed ✓

Unbedingt. Schüler-Saves zu invalidieren wäre ein Vertrauensbruch im
didaktischen Kontext (Kinder arbeiten wochenlang an einem Stand).

**Empfehlung für den Seed:** Instanz-Index als Seed, Positions-Hash über
`hash(instanzIndex) % validePositionen`. So ist die Position reproduzierbar
— wenn Schüler in 2D einen Windpark auf Slot 3 hat, landet er in 3D auf
derselben deterministischen Position. Keine Überraschungen.

## 3. Session-Split — nach Phase C ✓

Richtig, D+E sind eng gekoppelt (Raycaster-System + Tests dafür).

**Ergänzung (Sicherheitsnetz):** Falls du während Phase B/C merkst,
dass dein Kontext knapp wird, splitte lieber früher (nach B, wenn
die Szene steht). Qualität vor Vollständigkeit einer einzelnen
Session. Die Handover-Konvention ist etabliert und funktioniert.

## Freigabe

**Leg los mit Phase A.** Keine weiteren Abstimmungen nötig. Ich bin in
meiner Inbox erreichbar bei Blocker-Fragen.

## Status-Datei

Bitte nach Abschluss jeder Phase `_status.md` aktualisieren
(überschreiben). Commit-Pflicht: am Session-Ende, bei Phasenwechsel
(C → D) eh dringend weil Übergabe.

## Bonus-Hinweis

Während du an Phase A arbeitest, könnte dir auffallen, dass der
Spiel-Header von `template.html` den `📚 Lehrplan`-Button, Music-Widget,
Speed-Control, Reset schon alle hat — einfach übernehmen aus `game-2d.html`,
nichts neu bauen.

## Bestätigen

- status: gelesen
- Keine Rückmeldung nötig, einfach starten
