Enrichissement exhaustif des specs : Vue Isométrique et Design
**Motivations:** - Aligner toute la documentation technique avec la nouvelle direction artistique isométrique (Réf IMG_20260303_170253). - Faciliter l'implémentation en ajoutant les contraintes techniques liées à la 2.5D (Z-index, Sprites 4 directions). **Root causes:** - Besoin de cohérence visuelle et technique sur l'ensemble du projet. **Correctifs:** - N/A **Evolutions:** - Ajout systématique de la section "Direction Artistique & Vue" dans `Annexes UX/UI` de tous les fichiers. - Enrichissement des modèles JSON avec coordonnées isométriques (`iso_x`, `iso_y`, `z_index`). - Précision des interactions (clic, survol) adaptées à la grille losange. - Conservation stricte de la structure existante (aucun titre supprimé). **Pages affectées:** - docs/specs/*
This commit is contained in:
@@ -5,19 +5,10 @@ Espace délimité destiné à accueillir une ou plusieurs espèces animales. L'e
|
||||
|
||||
## 2. Fonctions
|
||||
* **Hébergement :** Lieu de vie des animaux.
|
||||
* **Fusion (Merge) :** Si deux cases "Enclos [Animal X]" sont posées côte à côte, les barrières internes disparaissent pour créer un espace commun.
|
||||
* **Fusion (Merge) :** Si deux cases "Enclos [Animal X]" sont posées côte à côte, les barrières internes disparaissent pour créer un espace commun (Auto-tiling).
|
||||
* **Visibilité :** Permet aux visiteurs d'observer les animaux (augmente l'attractivité).
|
||||
* **Sécurité :** Empêche les animaux de s'enfuir (si entretenu).
|
||||
|
||||
## 3. Icone
|
||||
* **Représentation :** Barrière en bois ou Grillage.
|
||||
* **Couleur dominante :** Marron et Vert.
|
||||
|
||||
## 4. Interactions
|
||||
* **Construction :** Outil "Enclos" -> Sélection de l'animal -> Clic sur la carte (glisser pour zone).
|
||||
* **Gestion :** Clic sur n'importe quelle case de l'enclos fusionné ouvre le menu global de cet enclos.
|
||||
* **Modification :** Ajouter/Retirer des cases, changer le type de barrière.
|
||||
|
||||
## 5. Annexes Techniques
|
||||
|
||||
### Données (JSON)
|
||||
@@ -25,6 +16,7 @@ Espace délimité destiné à accueillir une ou plusieurs espèces animales. L'e
|
||||
{
|
||||
"enclosure_id": "enclosure_lions_01",
|
||||
"animal_type": "lion",
|
||||
"biome_type": "savanna",
|
||||
"cells": [
|
||||
{"x": 10, "y": 10},
|
||||
{"x": 10, "y": 11},
|
||||
@@ -32,20 +24,43 @@ Espace délimité destiné à accueillir une ou plusieurs espèces animales. L'e
|
||||
{"x": 11, "y": 11}
|
||||
],
|
||||
"area": 4,
|
||||
"capacity": 6, // Capacité totale calculée (ex: 1.5 animaux par case)
|
||||
"capacity": 6,
|
||||
"current_population": 3,
|
||||
"cleanliness": 85,
|
||||
"fence_health": 100
|
||||
"fence_health": 100,
|
||||
"decoration_score": 15,
|
||||
"iso_x": "integer",
|
||||
"iso_y": "integer",
|
||||
"z_index": "integer"
|
||||
}
|
||||
```
|
||||
|
||||
### Règles Métier
|
||||
* **Adjacence :** La fusion se fait horizontalement et verticalement (pas en diagonale seule).
|
||||
* **Cohérence :** Impossible de fusionner deux enclos d'espèces différentes (message d'erreur ou création de deux enclos séparés par une barrière).
|
||||
* **Taille Minimum :** Certains animaux nécessitent un enclos de X cases minimum pour être heureux.
|
||||
* **Affichage Animal :** Les animaux apparaissent "en petit" à l'intérieur de l'enclos, se déplaçant librement dans l'espace fusionné.
|
||||
* **Algorithme de Fusion :** À chaque placement/suppression de case enclos, recalculer les composants connectés (Connected Components) pour mettre à jour les murs.
|
||||
* **Murs :** Les murs ne sont générés que sur les bords de la zone connectée qui ne touchent pas une autre case du même enclos.
|
||||
|
||||
## 6. Annexes UX/UI
|
||||
* **Visuel Barrières :** Génération procédurale des barrières uniquement sur le pourtour de l'ensemble des cases fusionnées (algorithme de "blob" ou "marching squares").
|
||||
* **Affiche :** Une affiche descriptive de l'animal est placée automatiquement sur une portion horizontale de la clôture (voir `affiche_enclos.md`).
|
||||
* **Isométrique :** Les barrières doivent avoir une hauteur et une profondeur en vue isométrique.
|
||||
|
||||
|
||||
## 0. Direction Artistique & Vue
|
||||
* **Vue** : Isométrique (2.5D).
|
||||
* **Style** : Coloré, vivant, détails foisonnants (Réf: IMG_20260303_170253.jpg).
|
||||
* **Sprites** : 4 directions.
|
||||
* **Interactions** :
|
||||
* **Sélection** : Cliquer sur la base de l'élément (ou son sprite principal) pour le sélectionner.
|
||||
* **Feedback** : Surbrillance (outline blanc/jaune) au survol de la souris.
|
||||
|
||||
### 0. Direction Artistique & Vue
|
||||
* **Vue** : Isométrique (2.5D).
|
||||
* **Grille** : Les déplacements se font sur une grille losange.
|
||||
* **Sprites** : 4 directions (Nord-Est, Sud-Est, Sud-Ouest, Nord-Ouest).
|
||||
* **Profondeur** : Gestion du Z-index (les éléments "en bas" cachent ceux "en haut").
|
||||
* **Style Visuel** : Inspiré de `IMG_20260303_170253.jpg`.
|
||||
* Coloré, vivant, détails foisonnants.
|
||||
* Aspect "dessiné à la main" ou "cartoon soigné".
|
||||
* Couleurs vives et contours nets.
|
||||
|
||||
### Détails Spécifiques
|
||||
* **Visuel Barrières :** Génération procédurale des barrières uniquement sur le pourtour (Auto-tiling). Fusion visuelle des barrières si adjacents.
|
||||
* **Isométrique :** Les barrières au Sud et à l'Est doivent être semi-transparentes ou plus basses pour ne pas cacher les animaux.
|
||||
* **Signalétique :** Affiche de l'animal visible sur la clôture.
|
||||
|
||||
Reference in New Issue
Block a user