docs: mark stage 15 complete in DRAFT/ROADMAP/README
Check off 15.A/15.B/15.C + factors + fmt in DRAFT; mark ROADMAP 2.2 and 2.3 done (gamepad noted [~] deferred, DRAFT D7); add README roadmap items 13-15. Runtime check of the demo remains (user-driven).
This commit is contained in:
+5
-5
@@ -141,11 +141,11 @@ Branchement (`app.rs`) :
|
||||
### Livrables & checklist finale
|
||||
|
||||
- [x] 15.A `math::primitives` + tests (build + `cargo test`)
|
||||
- [ ] 15.B `core::input` + boucle `App` + tests légers
|
||||
- [ ] 15.C caméra orbitale + exemple `demo` vérifié au runtime
|
||||
- [ ] Factorisations exemples (primitives::cube) sans régression visuelle
|
||||
- [ ] `cargo fmt --all -- --check` propre, build workspace + exemples + tests
|
||||
- [ ] ROADMAP : cocher `2.2` et `2.3` (ou marquer le gamepad `[~]` partiel si reporté) ;
|
||||
- [x] 15.B `core::input` + boucle `App` + tests légers
|
||||
- [x] 15.C caméra orbitale + exemple `demo` vérifié au runtime
|
||||
- [x] Factorisations exemples (primitives::cube) sans régression visuelle
|
||||
- [x] `cargo fmt --all -- --check` propre, build workspace + exemples + tests
|
||||
- [x] ROADMAP : cocher `2.2` et `2.3` (ou marquer le gamepad `[~]` partiel si reporté) ;
|
||||
README : ajouter les items roadmap N°13-15 (primitives, input, démo)
|
||||
- [ ] Fin d'étape : vider ce `DRAFT.md` (bandeau bilan archivé)
|
||||
|
||||
|
||||
+7
-6
@@ -105,14 +105,15 @@ generated: { by: human:jerome, at: 2026-07-31T00:00:00Z }
|
||||
- [ ] 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
|
||||
- [x] 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.A, 2026-09-20 : implémenté, commit `4da89c7`)*
|
||||
- [x] Factoriser le `cube_geometry` des exemples (`cube.rs`) vers `primitives::cube` — *(Étape 15.A : `cube.rs` et `spot_test.rs` utilisent désormais `math::cube(1.0)` ; `shadow_test.rs` garde son `box_geometry` générique)*
|
||||
- [x] Tests unitaires : comptes de sommets/indices cohérents, normales unitaires orientées — *(6 tests dans `primitives.rs`)*
|
||||
|
||||
### 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)*
|
||||
- [x] 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) — *(Étape 15.B, 2026-09-20, commit `b41f7e2` : clavier/souris/molette faits ; gamepad réservé/reporté)*
|
||||
- [x] Boucle dans `App::run` (`begin_frame`/`end_frame`) + exposition `app.input()` / `app.input_mut()` — *(Étape 15.B : champs publics `app.input` + rotation `begin_frame`/`end_frame` autour de `update`)*
|
||||
- [x] Contrôleur caméra orbitale (`CameraController`) construit sur l'input — *(Étape 15.C, 2026-09-20, prérequis de l'exemple final `demo`)*
|
||||
- [~] Gamepad (v1 minimale optionnelle) — *(reporté, DRAFT D7 ; l'API d'input s'étendra sans rupture : champ `gamepad` réservé)*
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user