LifePlay-Revival/Docs/Migration/etat/OPT/BC/BC-R7.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

11 KiB

BC-R7 : cuisson, IoStore et Zen en UE 5.8

Date 2026-10-15, auteur sous-agent Sonnet OPT0-R, 12 entrées : 8 établi / 3 estimé / 1 non vérifié (R7-12 devient R7-11 par renumérotation non faite : les ids restent R7-01 à R7-10, R7-12, R7-13). R10 : +3 entrée(s) établi (R7-101…), voir BC-R10-SOURCES.md.

id affirmation (1-2 phrases, sans copie de texte) source (URL, date, version UE) niveau (établi / estimé / non vérifié) application à LifePlay (système ou fichier) action proposée skill de destination
R7-01 Le Zen Loader est le chargeur d'exécution d'UE5 : il utilise un graphe de dépendances calculé hors ligne à l'étape de stage, et il est actif par défaut dès que des conteneurs IoStore existent. L'ancien chargeur EDL est déprécié. https://dev.epicgames.com/documentation/unreal-engine/zen-loader-in-unreal-engine / date inconnue / UE 5.8 établi Build/packaging : le paquet doit sortir en IoStore, pas en EDL. Vérifier que bUseIoStore n'est pas à False dans DefaultGame.ini et que le stage produit .utoc/.ucas. ue-cpp-build
R7-02 Les .utoc décrivent le conteneur (taille/offset de chunk, format de compression, chiffrement) et les .ucas contiennent les données. Les .pak ne gardent que des fichiers peu consultés ; monter un .pak monte aussi son conteneur. même URL Zen Loader / date inconnue / UE 5.8 établi Packaging : inspecter la répartition pak / IoStore d'un paquet. Utiliser UnrealPak IoStore -Describe sur global.ucas pour auditer un paquet. lp-perf
R7-03 Limitations du Zen Loader : pas de recherche des données par chemin de fichier, redirections de package non résolues à l'exécution (CoreRedirects ignorés au chargement), données bulk inline non rechargeables après déchargement. même URL Zen Loader / date inconnue / UE 5.8 établi Héritage UE4 : CoreRedirects et redirecteurs anciens à résoudre (fix-up) avant la cuisson ; données fréquemment relues à cuire en non-inline. Lister les redirecteurs restants et les redirections de classes/assets dépendant des CoreRedirects ; les corriger avant tout passage IoStore. lp-ue-compat
R7-04 Options de diagnostic du chargement : -LogCmds="LogStreaming veryverbose", -s.VerbosePackageNames, -s.DebugPackageNames, et -SkipIoStore pour retomber sur EDL en comparaison. même URL Zen Loader / date inconnue / UE 5.8 établi Build/tests : diagnostic d'un échec de chargement en build packagé. Documenter ces options dans la procédure de test d'un paquet. lp-validate
R7-05 La cuisson multi-processus (bêta) répartit la cuisson sur plusieurs workers via CookProcessCount > 1 (section CookSettings de l'ini éditeur, -cookprocesscount=N, ou AdditionalCookerOptions via UAT). Epic annonce environ 40 % de gain sur un gros projet à 4 processus, au prix de plus de RAM ; peu utile sur un petit projet. https://dev.epicgames.com/documentation/unreal-engine/using-multi-process-cooking-for-unreal-engine / date inconnue / UE 5.8 établi Durée de cuisson : option à mesurer, le poste est limité par RAM/cœurs (disque D: USB à noter). Mesurer la cuisson à 1, 2, 4 processus et consigner temps et RAM. lp-perf
R7-06 Limites connues de la cuisson multi-processus : les niveaux World Partition peuvent produire un message répétitif de retraction sans correctif, un worker planté donne l'erreur CookWorker disconnected, et les plugins agrégeant des données entre packages doivent utiliser l'API IMPCollector. même URL multi-process / date inconnue / UE 5.8 établi Plugins tiers (Fab) et niveaux WP : risque de cuisson incorrecte en multi-processus. Si activée, comparer le contenu du paquet avec une cuisson mono-processus. lp-validate
R7-07 Cas rapporté en UE 5.7 (mai-juin 2026) : en cuisson multi-processus Pak+IoStore, tout est tombé dans pakchunk0 car une sous-classe de PrimaryAssetLabel n'était pas chargée ; un employé d'Epic (Matt.Peters) a proposé de surcharger ApplyPrimaryAssetLabels et soumis un changement (CL 54900060). https://forums.unrealengine.com/t/5-7-pak-iostore-multicook-assets-do-not-get-assigned-to-pak-utoc-ucas-correctly/2735138 / 2026-05-26 à 2026-06-13 / UE 5.7 (correctif non rattaché à une branche) établi Chunking : si le projet utilise des labels personnalisés, le multi-processus peut les ignorer. Rester sur les PrimaryAssetLabel de base, ou vérifier AllChunksInfo.csv après chaque cuisson multi-processus. lp-validate
R7-08 Le chunking s'appuie sur les règles de l'Asset Manager et les Primary Asset Labels (data assets avec Chunk ID et priorité) ; les assets sans chunk valide vont au chunk 0, et chaque chunk produit un paquet séparé. La page ne traite pas d'IoStore. https://dev.epicgames.com/documentation/unreal-engine/cooking-content-and-creating-chunks-in-unreal-engine / date inconnue / UE 5.8 établi Packaging : utile seulement pour DLC/mods ou téléchargement par morceaux ; inutile si un seul paquet. Décider si un chunking est voulu avant d'en créer. lp-perf
R7-09 La cuisson itérative (-iterative) réutilise les assets déjà cuits dans Saved/Cooked ; sur CitySample un exemple passe de 815 s à 58 s. La cuisson incrémentale, plus fine (config, code), était encore en développement en 5.4 avec de possibles faux positifs. Journal d'une 5.5 : l'itératif ne garde les paquets que si les réglages globaux sont toujours valides. https://docswell.com/s/EpicGamesJapan/ZV172L-Improving%20Development%20Iterations / 2024-07-24 / UE 5.4 estimé (voir R7-101 : cuisson incrémentale documentée en 5.6 à 5.8) Itération de build : -iterative sur BuildCookRun pour les essais ; cuisson complète pour tout paquet livré. Utiliser -iterative en développement, jamais pour un paquet de release sans cuisson propre de contrôle. lp-perf
R7-10 Zen utilisé comme sortie de cuisson était en bêta en 5.4 (Zen comme DDC local en production). Les chiffres cités (lancement PS5 ~1,8x, ouverture de cartes ~3,1x) viennent d'une présentation d'Epic sur console, non transposables au PC. https://docswell.com/s/EpicGamesJapan/ZV172L-Improving%20Development%20Iterations / 2024-07-24 / UE 5.4 estimé DDC/Zen du poste : statut en 5.8 non confirmé par ces sources. Relever le statut courant de Zen Store dans la doc 5.8 avant de s'y fier. lp-ue-compat
R7-12 Ce qui gonfle le paquet : répertoires listés dans « Additional Asset Directories to Cook », bCookAll, contenu éditeur, cultures inutiles, plugins inutilisés, textures sans plafond de taille, matériaux à permutations de shaders nombreuses, symboles de débogage. Le guide revendique 40-60 % de réduction (exemple 6360 Mo vers 3610 Mo), chiffre non vérifié. Il cite aussi bShareMaterialShaderCode et DirectoriesToNeverCook. https://www.strayspark.studio/blog/ue5-packaging-shipping-build-size-optimization / 2026-03-25 / UE 5 (exemples 5.7) estimé Config packaging, textures, matériaux, plugins ; Size Map (Window > Developer Tools) pour classer les plus gros assets. Faire une mesure de référence avec Size Map avant toute réduction et comparer ensuite. lp-perf
R7-13 Cuire par références (cartes et Primary Assets) plutôt que par dossiers évite d'inclure du contenu inutilisé ; les références dures (variables de Blueprint, composants, valeurs par défaut) chargent leurs cibles, les soft references non. Reference Viewer et Asset Audit servent à repérer les assets sans référence. https://bugnet.io/blog/how-to-fix-unreal-cooking-unused-assets-into-the-package / 2026-06-18 / version UE non précisée non vérifié Blueprints hérités UE4 : références dures en chaîne vers de gros assets ; dossiers de test cuits par erreur. Auditer les références dures des Blueprints principaux et retirer les dossiers inutiles de la liste de cuisson. lp-bp-audit
R7-101 La cuisson incrémentale (analyse des assets modifiés contre la sortie stockée dans Zen Server) est expérimentale en 5.6, bêta en 5.7 et reste bêta en 5.8 ; le paramètre -cookincremental de BuildCookRun apparaît en 5.6. Remplace en pratique la lacune de R7-09 (source 5.4). https://dev.epicgames.com/documentation/unreal-engine/unreal-engine-5-6-release-notes?application_version=5.6 ; https://dev.epicgames.com/documentation/unreal-engine/unreal-engine-5-7-release-notes?application_version=5.7 ; https://dev.epicgames.com/documentation/unreal-engine/unreal-engine-5-8-release-notes / date inconnue (lues 2026-10-15) / UE 5.6 à 5.8 établi Cuisson de développement et paquet d'essai : essai de -cookincremental sur le banc. Tester -cookincremental en développement, cuisson complète pour tout paquet livré. lp-perf
R7-102 Les notes 5.8 indiquent que Zenserver comme stockage de sortie de préparation est activé par défaut, et que le streaming Zenserver est utilisé automatiquement par les flux de l'éditeur lors du lancement sur appareil. https://dev.epicgames.com/documentation/unreal-engine/unreal-engine-5-8-release-notes / date inconnue (lue 2026-10-15) / UE 5.8 établi Chaîne de lancement et de préparation (staging) : Zen actif par défaut en 5.8. Vérifier l'état de Zen dans le journal de cuisson avant de comparer les durées. lp-perf
R7-103 UnrealPak gagne en 5.8 une option de déduplication des chunks d'assets pour les conteneurs IoStore (bDeduplicateChunks=true dans [/Script/UnrealEd.ProjectPackagingSettings]) et le support de -SkipEncryption. https://dev.epicgames.com/documentation/unreal-engine/unreal-engine-5-8-release-notes / date inconnue (lue 2026-10-15) / UE 5.8 établi Taille du paquet : réglage de packaging à essayer. Mesurer la taille du paquet avec et sans l'option (A/B). lp-perf

Lacunes et doutes

  • Aucune page Epic ouverte sur la compression des conteneurs IoStore (Oodle, niveaux, réglages ini) : la page Zen Loader dit seulement que le .utoc stocke le format. Sujet non couvert.
  • Cook on the fly : non trouvé en 5.6-5.8. Les notes de version 5.7 et 5.8 ont été ouvertes mais tronquées ; aucune information cuisson/Zen n'a pu en être extraite.
  • Page Epic de Size Map en anglais introuvable (seule la page UEFN Project Size existe) ; le chemin de menu vient du guide StraySpark (estimé).
  • BuildCookRun : aucune page dédiée consultée ; les options (-iterative, -cookprocesscount via AdditionalCookerOptions, -SkipIoStore) sont dispersées dans les entrées ci-dessus.
  • Statut exact de Zen Store comme sortie de cuisson en 5.8 : page Zen Loader dit « expérimental », présentation 5.4 dit « bêta » ; sources en désaccord possible.
  • Les dates des pages Epic sont absentes ; la mention « UE 5.8 » est celle du titre de la page.
  • Un signalement de blocage ZenStore en 5.6 (fil Epic, page non ouverte) a été écarté faute d'URL ouverte ; id R7-11 volontairement absent.