From 2280617d9e28a7008bc681168d850a9a46210283 Mon Sep 17 00:00:00 2001 From: KNSO Date: Sat, 12 Sep 2026 13:44:53 +0200 Subject: [PATCH] docs: zwei Planfehler in Aufgabe 1 korrigiert MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - controls ist eine Pflichtoption von player.init; der Beispielcode übergab sie nicht, wodurch die App mit einem TypeError startete - der git-add-Befehl hätte den Submodul-Pin still auf den lokalen Branch-Commit umgesetzt Co-Authored-By: Claude Opus 5 --- .claude/launch.json | 15 ++++++++++++++- .../plans/2026-09-12-leonida-vice-slice.md | 9 +++++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/.claude/launch.json b/.claude/launch.json index b6aded5..9037340 100644 --- a/.claude/launch.json +++ b/.claude/launch.json @@ -4,7 +4,20 @@ { "name": "three-player-controller", "runtimeExecutable": "bash", - "runtimeArgs": ["-lc", "cd three-player-controller && npm run dev"], + "runtimeArgs": [ + "-lc", + "cd three-player-controller && npm run dev" + ], + "port": 5173, + "url": "http://localhost:5173" + }, + { + "name": "leonida", + "runtimeExecutable": "npm", + "runtimeArgs": [ + "run", + "dev" + ], "port": 5173, "url": "http://localhost:5173" } diff --git a/docs/superpowers/plans/2026-09-12-leonida-vice-slice.md b/docs/superpowers/plans/2026-09-12-leonida-vice-slice.md index 3f42f27..87551f4 100644 --- a/docs/superpowers/plans/2026-09-12-leonida-vice-slice.md +++ b/docs/superpowers/plans/2026-09-12-leonida-vice-slice.md @@ -192,6 +192,7 @@ Expected: PASS, 4 Tests import { ACESFilmicToneMapping, AmbientLight, DirectionalLight, Mesh, MeshStandardMaterial, PerspectiveCamera, PlaneGeometry, Scene, Timer, Vector3, WebGLRenderer } from "three"; import { GLTFLoader } from "three/examples/jsm/loaders/GLTFLoader.js"; +import { OrbitControls } from "three/examples/jsm/controls/OrbitControls.js"; import { playerController } from "three-player-controller"; const container = document.querySelector("#container"); @@ -204,6 +205,8 @@ renderer.shadowMap.enabled = true; container.appendChild(renderer.domElement); const camera = new PerspectiveCamera(55, container.clientWidth / container.clientHeight, 0.1, 2500); +// Pflicht: der Controller liest controls.domElement für Pointer-Lock und Eingaben. +const controls = new OrbitControls(camera, renderer.domElement); scene.add(new AmbientLight(0xffffff, 1.5)); const sun = new DirectionalLight(0xffffff, 2); sun.position.set(60, 120, 40); @@ -218,7 +221,7 @@ scene.add(ground); const gltf = await new GLTFLoader().loadAsync("./models/ual.glb"); const player = new playerController(); await player.init({ - scene, camera, + scene, camera, controls, colliders: [{ motion: "static", shape: { kind: "mesh", source: ground } }], initPos: new Vector3(0, 2, 0), playerModelConfig: { @@ -251,7 +254,9 @@ Expected: Die Figur steht auf der Fläche, läuft mit WASD und fällt nicht durc - [ ] **Step 9: Commit** ```bash -git add package.json package-lock.json vite.config.js index.html src tests public/models/ual.glb .gitmodules three-player-controller +# three-player-controller NICHT mit `git add` erfassen: das würde den Submodul-Pin still +# auf den gerade ausgecheckten Branch-Commit umsetzen. Der Pin wurde in Schritt 1 gesetzt. +git add package.json package-lock.json vite.config.js index.html src tests public/models/ual.glb .gitmodules git commit -m "feat: App-Gerüst mit Spieler auf Testfläche Co-Authored-By: Claude Opus 5 "