- Vue d’ensemble
- Initialisation
- Tampons d’échange
- Rendu
- Mappage de tons automatique
- Préférence entre HDR et 120 Hz
- Étalonnage HDR des jeux
- Dolby Vision pour les jeux XBOX
- HDR automatique
Vue d’ensemble
La grande plage dynamique (HDR) et la gamme de couleurs étendue (WCG) offrent la meilleure qualité visuelle grâce à une luminosité et un contraste accrus, ce qui permet de voir simultanément des détails jamais vus auparavant dans les zones sombres comme dans les blancs, avec davantage de couleurs qu’auparavant. Pour plus de détails sur le HDR, consultez la présentation Xfest 2016 intitulée An Introduction to HDR and Wide Color Gamut on UHD Displays (XBOX Developer Downloads->Conference Material->Xfest 2016 GPU Track Videos), et recherchez les normes HDR et WCG prises en charge.- SMPTE ST.2084 High Dynamic Range Electro-Optical Transfer Function of Mastering Reference Displays
- BT.2020 Parameter values for ultra-high definition television systems for production and international programme exchange
Initialisation
Pour produire une sortie HDR et WCG, un titre doit appeler XDisplayTryEnableHdrMode pendant l’initialisation (…\reference\system\xdisplay\xdisplay_members.md)). Si le téléviseur connecté prend en charge le HDR et le WCG et que le HDR est également activé dans les paramètres de la console, cet appel fait passer le téléviseur en mode HDR. Cette API retourne également les valeurs de luminance du téléviseur, qui peuvent servir à optimiser la sortie HDR du titre pour l’écran connecté. C’est ce qu’on appelle le mappage d’affichage. XDisplayTryEnableHdrMode est le seul mécanisme permettant à un titre de faire passer le téléviseur de la plage dynamique standard (SDR) au mode HDR. Il n’existe aucun mécanisme permettant à un titre d’activer et de désactiver le mode HDR du téléviseur à volonté. Nous recommandons d’appeler XDisplayTryEnableHdrMode une seule fois pendant l’initialisation. L’activation et la désactivation du mode HDR peuvent entraîner un écran noir et une coupure du son sur le téléviseur pendant une durée allant de quelques centaines de millisecondes à plusieurs secondes. Cette durée dépend du téléviseur et des autres appareils HDMI situés entre la console et le téléviseur. Le téléviseur quitte puis réintègre le mode HDR si l’utilisateur lance une autre application qui occupe plus d’espace à l’écran que le titre, c’est-à-dire si l’autre application s’exécute en plein écran ou en mode remplissage. Le retour à l’Accueil n’entraîne pas de changement de mode. La fermeture du titre ou le lancement d’un autre titre fait revenir le téléviseur en mode SDR.Tampons d’échange
Après l’initialisation, un titre doit créer des ressources D3D12 servant de tampons d’échange pour deux plans d’affichage. Le premier plan d’affichage est utilisé pour le HDR, tandis que le second est utilisé pour le SDR. Pour prendre en charge GameDVR, la diffusion et la diffusion en continu en mode HDR, le titre doit fournir une image SDR avec mappage de tons. Le fait que le titre fournisse l’image SDR lui permet d’offrir des images SDR de la plus haute qualité. Notez que le système produit automatiquement une image SDR avec mappage de tons pour les captures d’écran. Voici les détails des tampons d’échange.- La ressource D3D12 du tampon d’échange HDR doit être au format DXGI_FORMAT_R10G10B10A2_UNORM. Pour XBOX Series X|S, le format DXGI_FORMAT_R9G9B9E5_SHAREDEXP est également pris en charge.
- La ressource D3D12 du tampon d’échange SDR peut être au format DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_FORMAT_R8G8B8A8_UNORM_SRGB ou DXGI_FORMAT_R10G10B10A2_UNORM. Pour XBOX Series X|S, le format DXGI_FORMAT_R9G9B9E5_SHAREDEXP est également pris en charge.
Rendu
Un titre doit utiliser un nuanceur pour effectuer le rendu de valeurs HDR10 dans les tampons d’échange du premier plan d’affichage. Autrement dit, les valeurs de couleur doivent se trouver dans l’espace colorimétrique Rec.2020 (et, en plus, pour XBOX Series X|S, Rec. 709 et P3) et être encodées à l’aide de la courbe gamma ST.2084. Les valeurs de couleur des tampons d’échange du second plan d’affichage doivent se trouver dans l’espace colorimétrique Rec.709 et peuvent utiliser le même encodage de courbe gamma que celui normalement utilisé pour le rendu SDR destiné à un écran SDR. Pour XBOX Series X|S, le second plan d’affichage est facultatif. Pour XBOX Series X|S, un titre a la possibilité d’effectuer le rendu de valeurs HDR linéaires plutôt que de valeurs non linéaires auxquelles la courbe gamma ST.2084 est appliquée. Les valeurs de couleur peuvent se trouver dans l’espace colorimétrique Rec. 709, Rec.2020 ou P3 et être normalisées entre 0,0 et 1,0. Un blanc D65 de 10 000 nits est toujours représenté par (1.0, 1.0, 1.0), quel que soit l’espace colorimétrique utilisé. Pour cette option, le titre doit utiliser le format de tampon d’échange DXGI_FORMAT_R9G9B9E5_SHAREDEXP avec l’espace colorimétrique de présentation DXGI_COLOR_SPACE_RGB_FULL_G10_NONE_P2020, DXGI_COLOR_SPACE_RGB_FULL_G10_NONE_D65P3 ou DXGI_COLOR_SPACE_RGB_FULL_G10_NONE_P709. Consultez la section Paramètres des plans de présentation pour plus de détails. Si le contenu du titre n’utilise pas toute la gamme de couleurs Rec. 2020, il est conseillé d’effectuer le rendu dans les gammes plus restreintes P3 et Rec. 709, car cela améliore la précision des couleurs, surtout avec le format de tampon d’échange DXGI_FORMAT_R9G9B9E5_SHAREDEXP. Cela évite également la surcharge d’une conversion de gamme vers Rec. 2020, puisque la conversion est effectuée sans frais par le matériel d’affichage.Mappage de tons automatique
Dans certains cas, un titre peut compter sur le système pour générer automatiquement une image SDR avec mappage de tons, un processus appelé mappage de tons automatique. Lorsque cette fonctionnalité est activée, le nuanceur du titre reçoit l’instruction de ne pas effectuer le rendu des valeurs de couleur dans un plan d’affichage secondaire. Deux indicateurs clés interviennent dans ce processus : D3D12XBOX_RESOURCE_FLAG_ALLOW_AUTOMATIC_GAMEDVR_TONE_MAP et D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET. Le système, au nom du titre, fait appel à un nuanceur de calcul pour effectuer le mappage de tons. Le fonctionnement de ce nuanceur de calcul peut être observé dans une capture GPU PIX, plus précisément dans le bloc d’événements intitulé Auto Tone Mapping, qui se produit juste avant l’appel Present. Il est important de noter que cette fonctionnalité utilise une quantité de mémoire, de bande passante et de ressources GPU semblable à celle qui serait nécessaire si le titre produisait lui-même l’image SDR. Autrement dit, le pilote graphique alloue des ressources supplémentaires pour le plan d’affichage secondaire. Consultez également l’API XBOX One SetHDRToneMapperX. Pour XBOX Series X|S, le mappage de tons automatique peut améliorer les performances, puisqu’il est effectué par le matériel. Le titre n’a donc pas à consacrer de cycles GPU ni de mémoire supplémentaire à la production de l’image SDR avec mappage de tons. Vous pouvez vous attendre à une économie de 0,12 ms sur XBOX Series X en 4K, ainsi que sur XBOX Series S en 1440p. En ce qui concerne la mémoire, avec une triple mise en mémoire tampon en 4K, un titre économise près de 100 Mo en n’ayant pas à allouer de tampons de chaîne d’échange supplémentaires pour le SDR.Préférence entre HDR et 120 Hz
Un titre peut vouloir prendre en charge à la fois le HDR et le 120 Hz. Lors de l’activation du HDR au moyen de XDisplayTryEnableHdrMode, un titre peut définir une préférence pour le HDR ou le 120 Hz dans le cas où la configuration de la console et du téléviseur de l’utilisateur ne peut pas prendre en charge les deux. Consultez l’exemple Simple120Hz. Lors de l’appel à l’API pour tenter d’activer le HDR, un titre peut définir la préférence afin d’indiquer s’il préfère le HDR ou une fréquence de rafraîchissement élevée. Si possible, nous offrons les deux; sinon, nous tenons compte de la préférence du titre. Un titre peut demander à l’utilisateur ou prendre une décision pour lui (par exemple en fonction du mode de jeu, comme le mode multijoueur); c’est au jeu de décider. Pour plus d’informations, consultez la rubrique de l’API XDisplayTryEnableHdrMode.Étalonnage HDR des jeux
L’application d’étalonnage HDR des jeux affiche une série de mires de test pour déterminer les caractéristiques d’un téléviseur HDR. L’application se trouve dans les Paramètres de la console, sous « Options du téléviseur et de l’affichage », « Étalonner le HDR pour les jeux ».
- Ne pas implémenter d’écran d’étalonnage propre au jeu et simplement utiliser les valeurs d’étalonnage de l’API pour implémenter le mappage d’affichage.
- Implémenter un écran d’étalonnage propre au jeu, mais utiliser les valeurs d’étalonnage de l’API comme valeurs par défaut et comme valeurs de départ pour l’écran d’étalonnage du jeu. L’avantage de cette option est que même si le joueur n’utilise pas l’écran d’étalonnage du jeu, celui-ci utilise quand même des valeurs par défaut correctes. De plus, si le joueur utilise l’écran d’étalonnage du jeu, celui-ci démarre déjà avec de bonnes valeurs.
