LifePlay-Revival/Docs/Migration/etat/VQ/VQ3/VQ3-VAL.md
edujiro5972 0f1a61c9fe VQ : qualite video (sous-systeme LPVideoQuality, onglet Reglages, DefaultScalability), lots VQ0 a VQ5 et correctifs (CHG-237 a 242)
LifePlay.uproject : SupportedTargetPlatforms Win64 sur LPAnimCore, origine non revendiquee, range ici.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 01:40:47 +02:00

3.8 KiB

VQ3-VAL — Validation Recommended (VRAM) et sync Video

Fiche : VQ3-T2 Rôle : A-VAL Date : 07 octobre 2026 Entrée : VQ3-IMPL-H.md

Modèle

Modèle
Attendu claude-sonnet-5-5-high (repli M3)
Réel claude-sonnet-5-5-high (Claude Sonnet 5.5)

Verdict : PASS (avec BLOCKED-UI sur le test manuel Settings)

Checklist code-review

Case Résultat Preuve
Chemin Overall : FromOverall existe PASS LPVideoQualitySubsystem.cpp : FLPVideoLevels::FromOverall met Overall, Shadows, Textures, Effects, AA au niveau borné (ClampLevel, 0..3). OnOverallChanged → SetLevels(FromOverall(round(valeur)), true) ; SetLevels avec bFromOverall et Overall >= 0 réaligne les 4 groupes.
Individuel → Normalize / Custom PASS OnShadows/Textures/Effects/AAChanged : copie de Levels, un champ modifié, SetLevels(L, false) → Normalize() : Overall = (4 niveaux égaux) ? niveau : -1. LevelLabel(-1) = « Custom » (RefreshWidgets affiche Levels.Overall pour la ligne Overall).
Recommended : lecture VRAM et seuils PASS QueryDedicatedVideoMemoryBytes (garde GDynamicRHI, max(.., 0)), LevelFromVramGB : 0 → 2 ; < 4 → 0 ; < 6 → 1 ; < 10 → 2 ; sinon 3. OnRecommendedClicked → SetLevels(FromOverall(Level), true). API vérifiée dans RHIStats.h / DynamicRHI.h / D3D12Texture.cpp (UE 5.5). Compile OK.
Persistance Load/Save PASS (code) Save() : section LPVideoQuality, Version=1, Overall, Shadows, Textures, Effects, AA vers Saved/Config/Windows/LPVideoQuality.ini, appelé par SetLevels. Load() (appelé par Initialize) relit les 4 niveaux, Normalize() recalcule Overall, bConfigured = true si au moins une clé ; ApplyToScalability() suit dans Initialize.
Compile LifePlayEditor PASS exit 0, DLL UnrealEditor-LifePlay.dll relié (voir IMPL-H).
Non-régression démarrage -nullrhi PASS voir ci-dessous.
Test manuel Settings (clic Recommended) BLOCKED-UI non automatisable ici.

Smoke -nullrhi

Commande : UnrealEditor-Cmd.exe LifePlay.uproject -game -nullrhi -nosound -unattended -nosplash -ExecCmds="quit", exit code 0, environ 47 s. Journal : Saved/Logs/VQ3VAL.log.

LogLifePlay: Display: Video : pas de .../Saved/Config/Windows/LPVideoQuality.ini, niveaux lus depuis Scalability (Overall 3, Shadows 3, Textures 3, Effects 3, AA 3)
  • Aucun Warning ni Error du sous-système vidéo. Seule Error du journal : LogPlayerController: InputMode:UIOnly ... Non-Focusable widget (déjà vue en VQ2-VAL, sans lien).
  • Le clic n'est pas déclenché en -nullrhi : ce smoke ne couvre que l'absence de régression au démarrage.
  • Hors scope : en -nullrhi, le NullRHI renvoie des stats par défaut ; la garde « VRAM ≤ 0 → High » couvre ce cas.

BLOCKED-UI — test manuel à faire

  1. Settings > Video, cliquer Recommended : les 4 curseurs et Overall s'alignent sur le même niveau ; journal Video : Recommended = <niveau> (niveau N), VRAM dediee detectee X Go (X cohérent avec le GPU : < 4 Low, < 6 Med, < 10 High, sinon Epic).
  2. Vérifier Saved/Config/Windows/LPVideoQuality.ini : Overall = niveau choisi, 4 niveaux identiques.
  3. Modifier un curseur individuel : Overall passe à Custom. Cliquer Recommended : retour à un niveau unique.
  4. Quitter et relancer : Video : relu Overall N, ....
  5. GPU intégré : noter le niveau obtenu (Low/Med attendu, limite documentée).

Synthèse

Critère Statut
Overall → FromOverall PASS
Individuel → Custom PASS
Recommended VRAM PASS
Persistance Load/Save PASS (code)
Compile + démarrage -nullrhi PASS
Test manuel Settings BLOCKED-UI