LifePlay-Revival/Docs/Migration/etat/ST/STG/STG-B2qb-IMPL.md
edujiro5972 8084622450 LifePlay UE 5.8 : état de développement au 2026-10-19
Tickets : REP1-T4

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 22:57:42 +02:00

3.9 KiB

Fiche STG-B2qb-IMPL — Niveau N3 — Modèle prévu claude-opus-5-5 | utilisé claude-opus-5-5 — Agent orchestrateur STG (session principale) — Skills lp-lot, sk-change-safety

STG-B2qb-IMPL : B2q-b1, plancher à l'échelle d'origine, plafond 25, racine au témoin (2026-10-14)

GO de Big Boss du 2026-10-14 pour B2q-b1 (STG-B2q-DIAG.md § 8.3), avec le complément du témoin (§ 8.4). Sans UE ni compilation ; VAL statique par un agent distinct ; il entre dans COMMUN-9. B2q-b2 à b4 sont notés par Big Boss pour après l'alpha. Lot STG, registre STG-TACHES.md.

1. Instantané

Snapshot.ps1 -Lot STG-B2qb (état B2q-a, build COMMUN-8) : LPDirectControlSubsystem.cpp 7448C8FB1091BD2A994CCA4AA7F8B7A6, .h 5F3492917B8202B267D8879E4613966B (D:\Game\LifePlay_Backup_5.5\STG-B2qb\manifest.csv).

2. Changements (STG-B2qb.diff ; git diff --no-index --numstat : .cpp 19 ajoutées / 5 retirées, .h 2 / 0)

LPDirectControlSubsystem.h : le membre OriginalBoundsScale (TMap<TWeakObjectPtr<UPrimitiveComponent>, float>) contient l'échelle d'origine des bornes de chaque corps.

LPDirectControlSubsystem.cpp (CRLF, 1 738 CR pour 1 738 LF), dans FitPersonBounds :

  • plafond : MaxScale passe de 4 à 25 ;
  • plancher : à la première vue d'un corps, sa BoundsScale est relevée avant toute retouche et ramenée dans [1 ; 25]. Dans le jeu d'origine, elle vaut 3 (journal COMMUN-8 : 3.00 -> …). Le facteur est ensuite Clamp(besoin par axe, origine, 25). Le corps ne descend donc plus sous son échelle d'origine : plus de ligne -> 1.00 pour une personne debout ;
  • les entrées de corps détruits sont retirées de OriginalBoundsScale à chaque balayage, comme pour MeasuredSeats ;
  • témoin : la ligne T-cull mesure se termine par ; racine <os 0> a N cm du bassin, a M cm du composant ;
  • le commentaire d'en-tête de la fonction est mis à jour (bornes [origine ; 25], raison du plafond).

Inchangé :

  • le besoin par axe, avec une tolérance de 0,3 demi-étendue ;
  • l'hystérésis de 10 % ;
  • la boucle unique toutes les 0,5 s sur les Person visibles ;
  • l'alerte T-cull, au plus une par seconde ;
  • aucun effet sur les collisions ni les tracés.

3. Coût attendu

Au café, les personnes assises (racine à ≈ 3 m du bassin) montent à S ≈ 23. Leurs bornes deviennent assez grandes pour qu'elles ne soient plus jamais éliminées (ni frustum ni occlusion), ombres comprises : 4 à 6 corps Daz au café. Debout, rien ne change par rapport à l'origine (S = 3). C'est à mesurer à l'essai.

4. Points à confirmer (fiche d'essai COMMUN-9)

  1. Café (fnt_new048) et bar :
    • C2 tout autour des personnes assises, joueur compris : plus aucune disparition, et aucune alerte T-cull … non rendue ;
    • au journal : B2q-a : … BoundsScale 3.00 -> 2x.xx au café, et T-cull mesure … racine … a ≈ 290-300 cm du bassin.
  2. Debout : aucune ligne B2q-a … -> 1.00.
  3. Coût : lignes LPDebug hitch au café et au bar, comparées à COMMUN-8 (même endroit) ; stat unit si la console est accessible.

5. Ce qui n'a pas été fait

  • Compilation et essai : au build COMMUN-9.
  • B2q-b2 (recentrer RootBoneTranslation), B2q-b3 (asset physique en mémoire) et B2q-b4 (animations) : après l'alpha.

6. MD5 après

Fichier MD5
LPDirectControlSubsystem.cpp 4CF589B266FF61C8D61AE68B323FD381
LPDirectControlSubsystem.h A82ED5CFFD97152B9237034BD7F49F4A

7. Retour arrière (proposé, jamais lancé sans accord)

Restore.ps1 -Lot STG-B2qb, qui ramène l'état B2q-a (7448C8FB… / 5F349291…). Avant tout, prendre l'instantané STG-B2qb-retour.

8. Fichiers à commiter

M Source/LifePlay/LPDirectControlSubsystem.cpp, M Source/LifePlay/LPDirectControlSubsystem.h, A Docs/Migration/etat/ST/STG/STG-B2qb-IMPL.md, A Docs/Migration/etat/ST/STG/STG-B2qb.diff.

Tours : 5