# VQ1-CART — Cartographie et audit de conformité `DefaultScalability.ini`
- **Date :** 2026-10-07
- **Fiche :** VQ1-T3 | **Agent :** A-CART | **Rôle :** Cartographie & Audit de conformité VQ1
- **Modèle prévu :** `gemini-3.8-flash-high` (M1) | **Modèle utilisé :** `gemini-3.8-flash-high` (M1)
- **Workspace :** `d:\Game\LifePlay-master 5.5`
- **Référence spécification :** `Docs/Migration/etat/VQ/VQ1/VQ1-SPEC.md` (VQ1-T1)
- **Référence implémentation :** `Docs/Migration/etat/VQ/VQ1/VQ1-IMPL.md` (VQ1-T2)
- **Référence verrous moteur :** `Config/DefaultEngine.ini` (lots L6a / L7c)
- **Statut :** **OK** (0 hit bloquant, 0 OUBLI) — **PASS**
---
## 1. Périmètre et Objectifs
L'objectif de cette cartographie (fiche **VQ1-T3**) est d'auditer le fichier de configuration de scalabilité nouvellement créé `Config/DefaultScalability.ini` par rapport aux verrous stricts du moteur et de rendu définis dans `Config/DefaultEngine.ini` (notamment lots **L6a** et **L7c**).
Le contrat de conformité exige :
1. Recherche ciblée (Grep) des 5 termes/variables interdits ou verrouillés :
- `DynamicGlobalIllumination`
- `Virtual.Enable`
- `AntiAliasingMethod`
- `Lumen`
- `ReflectionMethod`
2. Confrontation systématique avec les verrous définis dans `Config/DefaultEngine.ini` (sections `[/Script/Engine.RendererSettings]` et `[/Script/WindowsTargetPlatform.WindowsTargetSettings]`, lot L7c / L6a).
3. Classification stricte en **OK** ou **OUBLI** (critère d'acceptation : **0 hit bloquant**).
4. Émission du verdict **PASS / FAIL**.
---
## 2. État des verrous dans `Config/DefaultEngine.ini` (Lots L6a / L7c)
Dans `Config/DefaultEngine.ini`, les paramètres de rendu ont été explicitement verrouillés au niveau projet (`SetByProjectSetting`, priorité supérieure à `SetByScalability`) pour garantir la parité stricte avec le rendu validé UE 4.27 et prévenir les instabilités ou scintillements de maillages :
```ini
[/Script/Engine.RendererSettings]
; Lot L6a (ERR-032) : r.DefaultFeature.AntiAliasing est ignoree par UE5 (variable fantome),
; le jeu tournait donc en TSR (defaut UE5 = 4). TAA (2), comme en 4.27 : TSR fait scintiller
; les maillages deformes par morphs (personnages).
r.AntiAliasingMethod=2
; Lot L7c : rendu 5.5 rendu explicite, aux valeurs effectivement jouees et validees (identiques aux
; valeurs par defaut du moteur 5.5, qui correspondent au rendu 4.27) : pas d'illumination globale
; dynamique (Lumen), reflets SSR, pas d'ombres virtuelles. Ainsi un changement de valeur par defaut du
; moteur ou un modele de projet UE5 ne modifie pas le rendu sans decision.
r.DynamicGlobalIlluminationMethod=0
r.ReflectionMethod=2
r.Shadow.Virtual.Enable=0
r.DefaultFeature.AutoExposure=False
r.TextureStreaming=True
r.DefaultFeature.AmbientOcclusionStaticFraction=False
r.AllowStaticLighting=True
r.MinScreenRadiusForCSMDepth=0.010000
r.AllowOcclusionQueries=True
[/Script/WindowsTargetPlatform.WindowsTargetSettings]
; Lot L7c : D3D12 (SM5), RHI par defaut de UE 5.5 sur lequel toutes les sessions de validation ont ete
; jouees (UE 4.27 utilisait D3D11).
DefaultGraphicsRHI=DefaultGraphicsRHI_DX12
```
Ces réglages interdisent formellement à `Config/DefaultScalability.ini` d'introduire :
- Des ombres virtuelles (`r.Shadow.Virtual.*` / VSM),
- Une méthode d'illumination dynamique (`r.DynamicGlobalIlluminationMethod`, Lumen),
- Une méthode de réflexion alternative (`r.ReflectionMethod`),
- Un changement de la méthode d'anti-aliasing (`r.AntiAliasingMethod`, TSR étant banni au profit de TAA = 2).
---
## 3. Audit Grep de `Config/DefaultScalability.ini`
Une recherche insensible à la casse a été exécutée sur l'intégralité du fichier `Config/DefaultScalability.ini` pour les cinq motifs sous revue :
| Clé / Motif recherché | Présence dans `DefaultScalability.ini` | Nombre de hits | Statut | Classification |
|---|---|---:|---|---|
| `DynamicGlobalIllumination` | Absent | 0 | Conforme | **OK** |
| `Virtual.Enable` | Absent | 0 | Conforme | **OK** |
| `AntiAliasingMethod` | Absent | 0 | Conforme | **OK** |
| `Lumen` | Absent | 0 | Conforme | **OK** |
| `ReflectionMethod` | Absent | 0 | Conforme | **OK** |
### Synthèse des motifs audités
- **Hits totaux trouvés :** 0
- **Hits bloquants :** 0
- **OUBLI détecté :** 0
---
## 4. Inventaire et vérification des sections implémentées
Le fichier `Config/DefaultScalability.ini` comprend exactement 16 sections correspondant aux 4 groupes autorisés par `VQ1-SPEC.md` :
| Groupe de scalabilité | Sections présentes | Cvars configurées par niveau | Conformité SPEC §4 |
|---|---|---|---|
| `sg.ShadowQuality` | `[ShadowQuality@0]`
`[ShadowQuality@1]`
`[ShadowQuality@2]`
`[ShadowQuality@3]` | `r.Shadow.CSM.MaxCascades`
`r.Shadow.MaxResolution`
`r.Shadow.MaxCSMResolution`
`r.Shadow.RadiusThreshold`
`r.Shadow.DistanceScale`
`r.Shadow.CSM.TransitionScale`
`r.Shadow.PreShadowResolutionFactor` | **OK** (Cascade Shadow Maps traditionnelles, aucune ombre virtuelle) |
| `sg.TextureQuality` | `[TextureQuality@0]`
`[TextureQuality@1]`
`[TextureQuality@2]`
`[TextureQuality@3]` | `r.Streaming.MipBias`
`r.MaxAnisotropy`
`r.Streaming.PoolSize`
`r.Streaming.MaxEffectiveScreenSize` | **OK** (Streaming standard conforme) |
| `sg.EffectsQuality` | `[EffectsQuality@0]`
`[EffectsQuality@1]`
`[EffectsQuality@2]`
`[EffectsQuality@3]` | `r.TranslucencyLightingVolumeDim`
`r.RefractionQuality`
`r.SSS.Scale`
`r.SSS.SampleSet`
`r.DetailMode`
`fx.Niagara.QualityLevel` | **OK** (Effets classiques, aucun Lumen/SSR injecté) |
| `sg.AntiAliasingQuality` | `[AntiAliasingQuality@0]`
`[AntiAliasingQuality@1]`
`[AntiAliasingQuality@2]`
`[AntiAliasingQuality@3]` | `r.PostProcessAAQuality` | **OK** (Qualité uniquement, la méthode reste fixée à TAA par `DefaultEngine.ini`) |
### Vérification des groupes interdits
- `GlobalIlluminationQuality` : **Absent** (laisse le moteur intact / GI désactivée par L7c).
- `ReflectionQuality` : **Absent** (SSR verrouillé par L7c).
- `ViewDistanceQuality`, `FoliageQuality`, `LandscapeQuality`, `ShadingQuality` : **Absents** (non surchargés).
- Profil `@Cine` : **Absent** (conservé au comportement moteur).
---
## 5. Bilan comparatif DefaultScalability.ini vs DefaultEngine.ini L7c
| Domaine de rendu | Règle `DefaultEngine.ini` (L6a / L7c) | Implémentation `DefaultScalability.ini` | Alignement |
|---|---|---|---|
| **Global Illumination** | `r.DynamicGlobalIlluminationMethod=0` (Pas de GI dynamique / Lumen) | Aucune cvar GI ni section `GlobalIlluminationQuality` | **OK — Aucun conflit** |
| **Ombres** | `r.Shadow.Virtual.Enable=0` (Ombres CSM classiques, pas de VSM) | Exclusivement des cvars CSM (`r.Shadow.CSM.*`, `r.Shadow.MaxResolution`, etc.) | **OK — Aucun conflit** |
| **Anti-Aliasing** | `r.AntiAliasingMethod=2` (TAA imposé, TSR interdit car morph jitter) | Uniquement `r.PostProcessAAQuality` (qualité du filtre d'accumulation) | **OK — Aucun conflit** |
| **Reflets** | `r.ReflectionMethod=2` (Reflets SSR classiques, pas de Lumen) | Aucune cvar de réflexion injectée | **OK — Aucun conflit** |
| **RHI** | `DefaultGraphicsRHI=DefaultGraphicsRHI_DX12` | Sans objet pour la scalabilité | **OK** |
---
## 6. Conclusion et Verdict
L'audit de `Config/DefaultScalability.ini` démontre une stricte conformité aux spécifications `VQ1-SPEC.md` et aux garde-fous de rendu définis lors des lots **L6a** et **L7c** dans `Config/DefaultEngine.ini`. Aucun mot-clé interdit n'est présent dans le fichier.
- **Hits bloquants :** 0 (seuil requis : 0)
- **OUBLI :** 0
- **Statut final :** **PASS**