0.3.0-0-pre.2
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/architecture/004-INPUT_AND_CONTROLS.md -->
|
||||
<!-- version: 7 -->
|
||||
<!-- version: 8 -->
|
||||
|
||||
# Abstraction des entrées et contrôles
|
||||
|
||||
@@ -97,6 +97,20 @@ Pour souris et tactile :
|
||||
|
||||
Reflex conserve son impulsion `Primary` sur `Down` et reste donc indépendant de la reconnaissance du swipe.
|
||||
|
||||
## Baseline Snake portable `0.3.0`
|
||||
|
||||
La crate `game-snake-poc` consomme uniquement le contrat générique `engine-v1-common` pour son gameplay. Elle ne dépend pas de `engine-v1-platform-api`, de SDL3, du DOM ou d'un type de périphérique concret.
|
||||
|
||||
Le contrat d'entrée Snake retenu pour le premier POC Web est volontairement minimal :
|
||||
|
||||
- `Left`, `Right`, `Up` et `Down` pilotent la direction ;
|
||||
- le rejet d'un demi-tour opposé reste une règle du gameplay Snake ;
|
||||
- `Primary`, `Secondary`, `Pause` et le pointeur normalisé ne sont pas requis par le gameplay Snake actuel ;
|
||||
- le host traduit clavier, swipe ou boutons virtuels vers les mêmes actions directionnelles ;
|
||||
- le rendu reste exposé par `EngineGame::scene` sous forme d'`EngineScene`, sans dépendance au Canvas ou à SDL3.
|
||||
|
||||
Le futur adapter WASM de `0-pre.3` doit donc adapter ce contrat existant plutôt que créer un second modèle d'entrée ou de rendu propre au Web. Les besoins de provenance, monétisation ou autres services plateforme appartiennent au host/launcher et ne justifient pas une dépendance plateforme inutilisée dans la crate de gameplay.
|
||||
|
||||
## Requête de sortie
|
||||
|
||||
La plateforme ne décide plus directement de terminer un jeu. Elle traduit l'événement physique en `QuitRequest` :
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/plans/001-V0_3_0_WEB_SNAKE_POC_PLAN.md -->
|
||||
<!-- version: 2 -->
|
||||
<!-- version: 3 -->
|
||||
|
||||
# Plan v0.3.0 — baseline Snake et premier POC Web direct
|
||||
|
||||
@@ -53,7 +53,9 @@ Créer `docs/plans/`, formaliser le caractère vivant du plan, corriger le contr
|
||||
|
||||
Nettoyer les dépendances inutiles/spécifiques au launcher, stabiliser la frontière gameplay/input et confirmer les tests Snake ainsi que le runner Desktop SDL3.
|
||||
|
||||
Gate : audits statiques, tests ciblés des crates touchées et smoke Desktop si le runtime SDL est modifié.
|
||||
Livraison candidate : `engine-v1-platform-api` est retiré des crates de gameplay Snake et Reflex où il n'est pas consommé ; les launchers qui utilisent réellement les capacités plateforme conservent leur dépendance. Le contrat Snake est fixé sur `EngineGame`, `InputState`, les quatre actions directionnelles et `EngineScene`, sans SDL3, DOM, Canvas ni API plateforme dans la crate de gameplay. Aucun adapter WASM n'est introduit avant `0-pre.3`.
|
||||
|
||||
Gate : audits statiques, `cargo check --workspace`, tests ciblés Snake et vérification du graphe de dépendances des crates de gameplay. Un smoke Desktop n'est requis que si le runtime SDL ou son mapping est modifié.
|
||||
|
||||
### `0-pre.3` — adaptation Snake WASM
|
||||
|
||||
|
||||
Reference in New Issue
Block a user