Skip to main content
La famille de consoles XBOX Series X|S comprend une unité de décompression matérielle capable de décompresser des données directement à partir du stockage NVMe vers la mémoire avec une assistance négligeable du CPU. Deux algorithmes de compression sont pris en charge. Le premier est un nouvel algorithme de compression basé sur rANS, conçu expressément pour les données de texture BC_n_, que nous appelons BCPack. Le second est l’algorithme bien connu Deflate (c.-à-d. Zlib), maintenant doté d’une fenêtre complète de 32 Ko. Le pipeline de décompression permet d’utiliser les deux algorithmes en série sans perte de débit. Deux unités de décompression fonctionnent en parallèle pour une vitesse d’écriture combinée pouvant dépasser 6 Go par seconde. Pour utiliser les unités de décompression, les développeurs doivent tirer parti de l’API DirectStorage. Cette API asynchrone de bas niveau a été conçue pour réduire au minimum la surcharge du CPU lors de l’émission de requêtes de lecture NVMe et expose des fonctionnalités fixes comme les opérations de décompression et de swizzling des textures. Pour plus d’informations, consultez l’exemple : Graphics\TextureCompression

Outil XBOX Texture Compressor (XBTC)

Pour tirer parti de la décompression matérielle intégrée de la XBOX Series X|S, nous offrons un outil de compression logiciel appelé XBTC.exe. Actuellement, l’outil prend uniquement en charge la compression de textures BC_n_, mais les textures non BC_n_ peuvent être encodées en BC à la demande (lorsque vous fournissez un format BC_n_ cible.) XBTC se présente sous la forme d’un outil en ligne de commande pour le traitement hors ligne des textures. L’outil produit un fichier d’archive XBTC spécialement conçu pour interagir efficacement avec DirectStorage. Un fichier d’en-tête (XBTC.h) à inclure dans votre titre XBOX Series X|S est également fourni. Il permet d’exploiter facilement le format de fichier d’archive. L’outil peut également produire un fichier DDS compressé par blocs si vous utilisez l’encodeur BC et que le chemin de sortie a l’extension .dds. XBTC.exe prend en entrée un fichier de texture et le compresse dans une archive à texture unique. Selon les préférences de diffusion en continu (pages de mémoire ou niveaux de mip), le nombre de flux compressés peut varier. La table des matières (TOC) de l’archive permet d’accéder à des flux compressés individuels. Une archive peut contenir plusieurs textures (et tampons) de sorte que la TOC puisse être conservée en mémoire, ce qui permet de récupérer efficacement des sous-flux précis avec DirectStorage. XBTC.exe peut également traiter un lot de textures et les compresser dans une archive à plusieurs textures. Pour utiliser cette capacité, vous définissez le contenu de l’archive et les options de compression dans un fichier JSON que vous fournissez en entrée à la place d’un fichier image.

DLL d’outil personnalisé XBTC

Une autre façon d’utiliser la compression XBTC consiste à écrire vos propres outils C++ et à tirer parti de XBTC à partir d’une DLL. XBTC.dll est offert sous forme de binaire Windows. Les exportations sont définies dans XBTC.h et comprennent des fonctionnalités de compression par blocs (encodage BCn), de mosaïquage/démosaïquage et de compression/décompression. Ajoutez XBTC.lib aux entrées de l’éditeur de liens de votre outil pour importer la DLL.

Dans cette section

Outil XBOX Texture Compressor (XBTC.exe) Décrit XBTC.exe, un outil de compression de textures DDS encodées en BC destinées à la XBOX Series X|S. Spécification du fichier d’archive XBTC Décrit la spécification du fichier d’archive utilisée par l’outil XBOX Texture Compressor (XBTC). Configuration par lots JSON Décrit la configuration par lots JSON. Une série de textures peut être compressée dans une seule archive à l’aide d’un fichier de configuration JSON. Le fichier JSON contient une section pour les options globales ainsi qu’une liste de textures avec leurs options associées.

Documentation de référence de l’API

Voir aussi

Vues d’ensemble des fonctionnalités graphiques de la XBOX Series X|S Vue d’ensemble des graphiques Graphiques Optimisation du contenu compressé à l’aide de DirectStorage et XBTC
Last modified on October 6, 2026