Skip to main content
MSIXVC2 change fondamentalement la façon dont les mises à jour de contenu sont calculées et distribuées. Avec le format MSIXVC d’origine, les mises à jour de contenu fonctionnent sur des limites de blocs fixes de 4 Ko et sont sensibles à la disposition des fichiers, à l’ordre des segments et à l’alignement au sein des fichiers pack. Avec MSIXVC2, les mises à jour de contenu utilisent une segmentation basée sur le contenu pour suivre les modifications au niveau de l’octet, ce qui élimine les contraintes d’alignement qui augmentent la taille des mises à jour dans MSIXVC.
Pour obtenir des conseils sur les mises à jour de contenu propres au format MSIXVC d’origine, consultez Bonnes pratiques relatives aux mises à jour de contenu.

Fonctionnement des mises à jour de contenu MSIXVC2

Segmentation basée sur le contenu

MSIXVC2 divise les données des fichiers en segments de taille variable en fonction du contenu réel plutôt que de limites de blocs fixes. Chaque segment est identifié par un hachage de son contenu. Cette approche signifie que :
  • Le déplacement d’un fichier entre des segments de package (chunks) ne déclenche pas de nouveau téléchargement. Les hachages du contenu du fichier restent identiques, quel que soit le chunk auquel il appartient.
  • La réorganisation des fichiers au sein d’un chunk ne déclenche pas de nouveau téléchargement. Les limites des segments sont déterminées par le contenu, et non par la position.
  • La réorganisation des chunks ne déclenche pas de nouveau téléchargement. La disposition des chunks est un concept logique qui n’affecte pas la segmentation physique des données.
  • L’insertion ou la suppression de données n’a pas d’effet en cascade. Contrairement aux systèmes à blocs fixes, une petite insertion ne décale pas tous les blocs suivants et n’impose pas de nouveau téléchargement du contenu inchangé.

Déduplication lors du chargement

Chaque segment est haché avant le chargement. Le processus de chargement interroge le CDN pour déterminer quels segments existent déjà dans les versions précédentes. Seuls les segments nouveaux ou modifiés sont chargés et distribués aux joueurs. Cette déduplication s’effectue automatiquement ; aucune action n’est requise de la part du développeur.

Chiffrement et compression par segment

Chaque segment est compressé et chiffré indépendamment. Ainsi, la mise à jour d’un segment n’affecte pas les autres.

Ce qui change par rapport à MSIXVC

Les contraintes d’alignement et de disposition suivantes liées aux mises à jour de contenu MSIXVC ne s’appliquent pas à MSIXVC2 :
Si vous consacrez actuellement des efforts à maintenir un ordre de fichiers stable, à figer la disposition des ressources ou à gérer soigneusement l’alignement sur 4 Ko dans votre pipeline de build, MSIXVC2 rend ce travail inutile. Ces optimisations restent toutefois valables si vous distribuez des packages XVC pour console.

Comparaison de la taille des mises à jour

Les données suivantes comparent la taille des mises à jour de contenu entre MSIXVC et MSIXVC2 pour les mêmes builds de titres. Aucune modification n’a été apportée aux jeux : mêmes ressources, mêmes builds, format d’empaquetage différent. Le jeu D présente une amélioration moindre, car le titre était déjà optimisé manuellement pour les mises à jour de contenu MSIXVC (CUv3). La plupart des titres qui n’ont pas effectué ce travail d’optimisation constateront des réductions plus importantes. Avec MSIXVC2, ce travail d’optimisation n’est plus nécessaire.

Réduction de la surcharge des packages

Chaque package MSIXVC inclut un arbre de hachage minimal fixe dont la taille augmente avec la taille totale du jeu. Cette surcharge est toujours entièrement téléchargée à chaque mise à jour. Pour les titres volumineux, cette surcharge est importante : La surcharge MSIXVC2 peut également être téléchargée partiellement, ce qui signifie que les joueurs ne reçoivent que les parties des métadonnées pertinentes pour leur mise à jour.

Amélioration de la taille du jeu de base

La segmentation basée sur le contenu et la compression intégrée réduisent également la taille de téléchargement du jeu de base : Les titres dont le contenu n’est pas compressé ou qui comportent d’importantes données dupliquées entre les chunks bénéficient des plus fortes réductions de taille de base. Les titres qui compressent déjà tout leur contenu et ne présentent aucune duplication (comme le jeu D) bénéficient d’améliorations plus modestes, mais néanmoins significatives.

Évaluation de MSIXVC2 pour votre titre

Pour mesurer l’amélioration des mises à jour de contenu pour votre propre titre :
  1. Prenez deux builds consécutives de votre jeu (par exemple, une build de version et le correctif suivant).
  2. Empaquetez les deux builds à l’aide de makepkg.
  1. Comparez la taille de mise à jour obtenue à celle d’une build MSIXVC (v1) équivalente.
  2. Utilisez les résultats de la comparaison pour planifier votre migration vers MSIXVC2.
Chargez les packages MSIXVC2 dans une branche distincte de Partner Center (par exemple, msixvc2). Ne mélangez pas les packages MSIXVC2 et MSIXVC dans la même branche : le retour d’une branche de MSIXVC2 à MSIXVC nécessite un nouveau chargement complet et impose un nouveau téléchargement complet aux joueurs de cette branche. Pour plus de détails, consultez Bonnes pratiques relatives aux branches de packages.

Considérations relatives au remplissage (padding) pour les titres multiplateformes

Si votre titre est distribué à la fois sur PC (MSIXVC2) et sur console (XVC), vous pouvez utiliser des configurations de remplissage distinctes pour chaque plateforme. Avec MSIXVC2, vous pouvez réduire ou supprimer en toute sécurité le remplissage de votre build PC sans affecter l’efficacité des mises à jour. Si vous préférez conserver la même configuration sur toutes les plateformes, cette configuration fonctionne également sans pénalité : MSIXVC2 gère les deux cas.

Voir aussi

Vue d’ensemble de l’empaquetage MSIXVC2 Bonnes pratiques relatives aux mises à jour de contenu (MSIXVC) Modèle de chiffrement MSIXVC2 Prise en main de MSIXVC2 pour PC Make Package (makepkg.exe)
Last modified on October 6, 2026