docs: plan Étape 15 (primitives + input unifié + exemple final) ; ROADMAP items 2.2/2.3
This commit is contained in:
@@ -104,6 +104,16 @@ generated: { by: human:jerome, at: 2026-07-31T00:00:00Z }
|
||||
- [ ] Permettre plusieurs caméras (actuelle/inactive) et une sélection par identifiant (`scene.set_active_camera(camera_id)`)
|
||||
- [ ] Exposer une caméra orbitale contrôlable (exemple final, Phase 5)
|
||||
|
||||
### 2.2 Meshes primitifs (bibliothèque procédurale, WSGL)
|
||||
- [ ] Module `math::primitives` générant des `Geometry` prêts à l'emploi (positions + normales + UVs + indices) : `cube`, `plane`, `uv_sphere`, `icosphere`, `cylinder`, `cone` (et `torus` en bonus) — *(Étape 15, avec l'exemple final)*
|
||||
- [ ] Factoriser le `cube_geometry` des exemples (`cube.rs`) vers `primitives::cube`
|
||||
- [ ] Tests unitaires : comptes de sommets/indices cohérents, normales unitaires orientées
|
||||
|
||||
### 2.3 Input unifié (clavier / souris / gamepad, WSGL)
|
||||
- [ ] Module `core::input` : `InputState` à sémantique cross-frame (pressed/held/released), consommation des `WindowEvent`/`DeviceEvent` winit, souris (position, delta, boutons, molette), clavier (touches), gamepad (v1 minimale optionnelle)
|
||||
- [ ] Boucle dans `App::run` (`begin_frame`/`end_frame`) + exposition `app.input()` / `app.input_mut()`
|
||||
- [ ] Contrôleur caméra orbitale (`CameraController`) construit sur l'input — *(Étape 15, prérequis de l'exemple final)*
|
||||
|
||||
---
|
||||
|
||||
## Phase 3️⃣ — GPU-Driven Rendering
|
||||
|
||||
Reference in New Issue
Block a user