> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Création et utilisation de Direct3D sur XBOX One

> Création et utilisation de Direct3D sur XBOX One

Il existe certaines différences entre Direct3D sur XBOX One et sur Windows concernant la sélection du runtime, les ressources d'échange, les formats vidéo planaires, l'obtention de l'état plein écran, le langage HLSL (High-Level Shader Language) et le composant WIC (Windows Imaging Component).

* [Sélection du runtime](#ID4EWB)
* [Ressources d'échange](#ID4EGC)
* [Formats vidéo planaires](#ID4E5C)
* [Obtention de l'état plein écran](#ID4ERD)
* [Langage HLSL (High-Level Shader Language)](#ID4EYE)
* [Composant WIC (Windows Imaging Component)](#ID4EBG)

<a id="ID4EWB" />

## Sélection du runtime

Pour les applications de titre XBOX One, l'adaptateur WARP (Windows Advanced Rasterization Platform) n'est pas disponible. ID3D12Debug::EnableDebugLayer peut être utilisé pour activer la validation de débogage dans le runtime, mais pas au moyen de la superposition de couches traditionnelle employée sous Windows. ID3D12Debug::SetProcessDebugFlags peut également être utilisé pour sélectionner un runtime instrumenté qui prend en charge le profilage PIX et dont les performances sont plus proches de celles du runtime commercial.

<a id="ID4EGC" />

## Ressources d'échange

La XBOX One ne prend pas en charge les chaînes d'échange et permet plutôt la présentation directe d'objets de ressources affichables. Il appartient au titre de créer et de gérer son propre pool de ressources d'échange. Pour plus d'informations sur les modifications apportées à la présentation, consultez [Présentation et planification des images sur XBOX One](/fr/build/core-features/graphics/directx/frame-scheduling-and-presentation).

Les formats actuellement pris en charge pour les ressources d'échange sont répertoriés ci-dessous. La différence entre certains formats réside simplement dans l'ordre des couleurs.

* DXGI\_FORMAT\_B8G8R8A8\_UNORM
* DXGI\_FORMAT\_R8G8B8A8\_UNORM
* DXGI\_FORMAT\_B8G8R8A8\_UNORM\_SRGB
* DXGI\_FORMAT\_R8G8B8A8\_UNORM\_SRGB
* DXGI\_FORMAT\_R10G10B10A2\_UNORM

<a id="ID4E5C" />

## Formats vidéo planaires

Les formats vidéo actuellement pris en charge sur XBOX One sont NV12, P010, P016, 420\_opaque et NV11.

Pour plus d'informations, consultez [Énumération DXGI\_FORMAT](https://learn.microsoft.com/windows/desktop/api/dxgiformat/ne-dxgiformat-dxgi_format).

<a id="ID4ERD" />

## Obtention de l'état plein écran

**GetFullScreenState** ne peut pas être appelée sur XBOX One. En effet, les chaînes d'échange ne peuvent pas être créées et cette méthode est réservée aux applications DirectX de bureau. Si vous avez besoin de savoir quand vos premiers graphismes sont affichés à l'utilisateur, appelez plutôt ID3D12Device::GetFrameStatisticsX avec le type D3D12XBOX\_FRAME\_STATISTICS\_TYPE\_DISPLAY.

Vous devez considérer que la fenêtre de votre jeu reste dans le même état tant qu'elle se trouve dans l'état d'exécution de la gestion de la durée de vie des processus (PLM).

Pour plus d'informations, consultez :

* [Cycle de vie des jeux XBOX](/fr/build/console-features/console-workflows/xbox-game-life-cycle)

<a id="ID4EYE" />

## Langage HLSL (High-Level Shader Language)

Le langage HLSL (High-Level Shader Language) sur XBOX One est une implémentation complète de [Microsoft HLSL](https://msdn.microsoft.com/library/windows/desktop/bb509561\(v=vs.85\).aspx).

HLSL et le [pipeline graphique](https://msdn.microsoft.com/library/windows/desktop/ff476882\(v=vs.85\).aspx) sont documentés sur Microsoft Docs. Toutefois, cette documentation comporte quelques petites erreurs :

* **GetRenderTargetSamplePosition** est indiquée comme renvoyant un UINT, mais cette méthode renvoie en réalité un **float2**.
* Le type de retour UINT ne s'applique pas dans le langage de shader. La valeur correcte est **uint** en minuscules ou **unsigned int** en toutes lettres.

<a id="ID4EBG" />

## Composant WIC (Windows Imaging Component)

Le composant WIC (Windows Imaging Component) est une plateforme extensible qui fournit une API de bas niveau pour les images numériques.

La XBOX One prend en charge WIC2. Pour plus d'informations sur les nouvelles fonctionnalités de WIC2, consultez [Nouveautés de WIC](https://learn.microsoft.com/windows/win32/wic/what-s-new-in-wic-for-windows-8-1). Pour plus d'informations sur le format WIC, consultez [Windows Imaging Component](https://learn.microsoft.com/windows/win32/wic/-wic-lh) ou le [wiki DirectXTex sur GitHub](https://github.com/microsoft/DirectXTex/wiki/DirectXTex).

La prise en charge de WIC par les titres XBOX One (Game OS) comporte un certain nombre de restrictions.

* Les expressions de stratégie de métadonnées de photo ne sont pas prises en charge.
* Le codec HD Photo / JPEG-XR (identifié par GUID\_ContainerFormatWmp et associé aux extensions de fichier .jxr, .hdp et .wdp) n'est pas pris en charge.
* Le codec BMP ne prend pas en charge certaines variantes de format plus anciennes propres à GDI.
* Certaines conversions de format de pixel ne sont pas prises en charge.
  * GUID\_WICPixelFormat48bppRGBFixedPoint
  * GUID\_WICPixelFormat48bppBGRFixedPoint
  * GUID\_WICPixelFormat16bppGrayFixedPoint
  * GUID\_WICPixelFormat96bppRGBFixedPoint
  * GUID\_WICPixelFormat64bppRGBAFixedPoint
  * GUID\_WICPixelFormat64bppBGRAFixedPoint
  * GUID\_WICPixelFormat128bppRGBAFixedPoint
  * GUID\_WICPixelFormat64bppRGBAHalf
  * GUID\_WICPixelFormat48bppRGBHalf
  * GUID\_WICPixelFormat32bppRGBE
  * GUID\_WICPixelFormat16bppGrayHalf
  * GUID\_WICPixelFormat32bppGrayFixedPoint
  * GUID\_WICPixelFormat64bppRGBFixedPoint
  * GUID\_WICPixelFormat128bppRGBFixedPoint
  * GUID\_WICPixelFormat64bppRGBHalf
  * GUID\_WICPixelFormat64bppPRGBAHalf
  * Tous les formats CMJN et les formats nChannel

Pour des informations connexes, consultez [Windows Imaging Component (WIC) sur XBOX](/fr/build/core-features/graphics/image-processing-overview).

<a id="ID4EABAC" />


## Related topics

- [Répertoire des rubriques NDA : liens actifs vers Microsoft Learn](/fr/nda/nda-topic-directory.md)
- [Sampler Feedback et SFS sur XBOX Series X|S](/fr/build/core-features/graphics/newfeatures/sfs/index.md)
- [Guide de programmation Direct3D 12](/fr/build/gdk-and-engines/guides/directx-12-programming-guide.md)
- [Mesh shaders et meshlets sur XBOX Series X|S](/fr/build/core-features/graphics/newfeatures/ms/index.md)
- [Graphismes](/fr/build/core-features/graphics/gc-graphics-toc.md)
