82 lines
3.7 KiB
Markdown
82 lines
3.7 KiB
Markdown
|
|
# S6-VAL — Validation du lot S6 (stack Mesure sur liaison addon)
|
|||
|
|
|
|||
|
|
- **Date :** 2026-10-06
|
|||
|
|
- **Fiche :** S6-T3 | **Rôle :** A-VAL
|
|||
|
|
- **Modèle prévu :** `composer-2.5-fast` | **Modèle utilisé :** `composer-2.5-fast`
|
|||
|
|
- **Pin addon :** `c1fdd29e2c1036c7d6365ba6389eff5d2f8c8c96` (`S3-INT.md`, inchangé depuis S5)
|
|||
|
|
- **Références :** `S2-VAL.md` (module + bat Mesure), `S3-VAL.md` (plugin monté), `20_Chaine_Animations.md`, `09_Commandes_Utiles.md`
|
|||
|
|
|
|||
|
|
## Verdict : **PASS**
|
|||
|
|
|
|||
|
|
| # | Contrôle | Résultat |
|
|||
|
|
|---|---|---|
|
|||
|
|
| 1 | `LifePlayEditorTools.Build.cs` : `LPAnimMeasure` en `PublicDependencyModuleNames` | **PASS** (l. 22, commentaire lot S2) |
|
|||
|
|
| 2 | Includes commandlets anim (`LPPoseMeasure.h`, `LPSkeletonProfile.h`, `LPAnimChecks.h`) sans `Source/LPAnimMeasure/` dans le jeu | **PASS** (module uniquement dans l'addon ; 0 fichier sous `Source/LPAnimMeasure/`) |
|
|||
|
|
| 3 | `LifePlayEditor Win64 Development` | **PASS** (`Target is up to date`, 2026-10-06) |
|
|||
|
|
| 4 | Commandlet court `-run=LPAnimEval` (addon chargé) | **PASS** (1 clip, 1 instant, ~1,3 s, code 0, `rapport.json` `valide: true`) |
|
|||
|
|
| 5 | Bat Mesure sur liaison addon | **PASS** (déjà `S2-VAL.md` : 269 lignes `LogLPAnimMeasure`, sorties `Saved/Measurement/` ; non rejoué ici) |
|
|||
|
|
|
|||
|
|
## 1. S6-T1 — Build et linkage
|
|||
|
|
|
|||
|
|
`Source/LifePlayEditorTools/LifePlayEditorTools.Build.cs` :
|
|||
|
|
|
|||
|
|
```csharp
|
|||
|
|
PublicDependencyModuleNames.AddRange(new string[]
|
|||
|
|
{
|
|||
|
|
// ...
|
|||
|
|
"LifePlay",
|
|||
|
|
"LPAnimMeasure"
|
|||
|
|
});
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Consommateurs vérifiés (includes inchangés, résolus via le module plugin) :
|
|||
|
|
|
|||
|
|
| Fichier | Headers `LPAnimMeasure` |
|
|||
|
|
|---|---|
|
|||
|
|
| `LPAnimEvalCommandlet.cpp` | `LPPoseMeasure.h`, `LPSkeletonProfile.h`, `LPAnimChecks.h` |
|
|||
|
|
| `LPAnimCatalogCommandlet.cpp` | `LPPoseMeasure.h` |
|
|||
|
|
| `LPAnimTwistCommandlet.cpp` | `LPPoseMeasure.h`, `LPSkeletonProfile.h` |
|
|||
|
|
| `LPAnimChecks.cpp` | `LPPoseMeasure.h`, `LPSkeletonProfile.h` |
|
|||
|
|
|
|||
|
|
`Source/LifePlay/LifePlay.Build.cs` : `PublicDependencyModuleNames.Add("LPAnimMeasure")` (commentaire S2/S3).
|
|||
|
|
|
|||
|
|
Binaires (jeu + plugin sibling) :
|
|||
|
|
|
|||
|
|
| DLL | Horodatage |
|
|||
|
|
|---|---|
|
|||
|
|
| `UnrealEditor-LPAnimMeasure.dll` | 2026-10-06 20:37:07 |
|
|||
|
|
| `UnrealEditor-LifePlayEditorTools.dll` | 2026-10-06 19:20:23 |
|
|||
|
|
|
|||
|
|
Aucune correction de sources nécessaire pour S6-T1.
|
|||
|
|
|
|||
|
|
## 2. S6-T2 — Documentation
|
|||
|
|
|
|||
|
|
Mises à jour : `Docs/Migration/20_Chaine_Animations.md` (§ 1 état actuel + écart pose T), `Docs/Migration/09_Commandes_Utiles.md` (§ 3 : bats `Tools/debug`, sorties `Saved/Measurement`, commandlets `LPAnimEval` / `LPAnimTwist` / `LPAnimCatalog`).
|
|||
|
|
|
|||
|
|
## 3. S6-T3 — Commandlet `LPAnimEval` (court)
|
|||
|
|
|
|||
|
|
```powershell
|
|||
|
|
$UE = 'D:\Game\Launcher\Engine\UE_5.5\Engine\Binaries\Win64\UnrealEditor-Cmd.exe'
|
|||
|
|
$Proj = 'D:\Game\LifePlay-master 5.5\LifePlay.uproject'
|
|||
|
|
& $UE $Proj -run=LPAnimEval "-Clips=Idle_Loop" "-Instants=1" `
|
|||
|
|
"-Out=D:\Game\LifePlay-master 5.5\Saved\AnimPipeline\S6-VAL" -unattended -nopause `
|
|||
|
|
-abslog="D:\Game\LifePlay-master 5.5\Saved\Logs\S6-VAL-LPAnimEval.log"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
| Constat | Valeur |
|
|||
|
|
|---|---|
|
|||
|
|
| Code de sortie | 0 |
|
|||
|
|
| Durée commandlet | ~1,34 s |
|
|||
|
|
| `rapport.json` | `"valide": true`, 1 clip, 2 corps, 0 échec |
|
|||
|
|
| Pose T | `rapport_poseT_Bridget.json`, `rapport_poseT_Michael.json` (profil `genesis8`, symétrie 0,000°) |
|
|||
|
|
| Évaluation | `eval_Bridget.csv`, `eval_Michael.csv` ; pire formule ≈ 10⁻⁷ %, pire clip ≈ 3×10⁻⁵ % |
|
|||
|
|
| Journal | `LogLPAnimMeasure` (POSET) actif — module addon bien lié |
|
|||
|
|
|
|||
|
|
Artefacts locaux (non versionnés) : `Saved/AnimPipeline/S6-VAL/`, `Saved/Logs/S6-VAL-LPAnimEval.log`.
|
|||
|
|
|
|||
|
|
## 4. Limites
|
|||
|
|
|
|||
|
|
- Pas de relecture du bat Mesure ni comparaison `tour.csv` après S3 (report sur preuve S2-VAL + commandlet ci-dessus).
|
|||
|
|
- Pas de relance complète 43 clips × 3 instants (déjà AP4 / CHG-208).
|
|||
|
|
- Contrôle visuel sandbox non refait.
|