> ## 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.

# D3D12XBOX_PRESENT_PLANE_PARAMETERS (famille XBOX One)

> Configure un plan de présentation pour la composition avec ID3D12CommandQueue::PresentX.

Configure un plan de présentation pour la composition avec [ID3D12CommandQueue::PresentX](/fr-CA/reference/graphics/d3d12_x/interfaces/id3d12commandqueue/methods/id3d12commandqueue_presentx).

## Syntaxe

```cpp theme={null}
typedef struct D3D12XBOX_PRESENT_PLANE_PARAMETERS
{
    D3D12XBOX_FRAME_PIPELINE_TOKEN Token;
    UINT ResourceCount;
    ID3D12Resource** ppResources;
    D3D12_RECT* pSrcViewRects;
    D3D12XBOX_VIEW_RECT* pDestPlacementBase;
    DXGI_COLOR_SPACE_TYPE ColorSpace;
    D3D12XBOX_PRESENT_PLANE_SCALE_FILTER ScaleFilter;
    UINT ExtendedDescCount;
    D3D12XBOX_PRESENT_PLANE_DESC* pExtendedDescs;
    D3D12XBOX_PRESENT_PLANE_FLAGS Flags;
} D3D12XBOX_PRESENT_PLANE_PARAMETERS;
```

### Membres

*pTokens*
Type : [D3D12XBOX\_FRAME\_PIPELINE\_TOKEN](/fr-CA/reference/graphics/d3d12_x/enums/d3d12xbox_frame_pipeline_token)

Jeton de pipeline qui identifie la trame utilisée pour produire les *ppResources* qui constituent le plan. Le *Token* est généré à l'origine de la trame et retourné par un appel à [ID3D12Device::WaitFrameEventX](/fr-CA/reference/graphics/d3d12_x/interfaces/id3d12device/methods/id3d12device_waitframeeventx) avec l'événement [D3D12XBOX\_FRAME\_EVENT\_ORIGIN](/fr-CA/reference/graphics/d3d12_x/enums/d3d12xbox_frame_event_type).

*ResourceCount*
Type : UINT

Nombre de ressources à présenter pour le plan. Plusieurs ressources peuvent consister en des textures de couleur et alpha dédiées et/ou en des vues uniques pour chaque joueur.

*ppResources*
Type : [ID3D12Resource](https://learn.microsoft.com/en-us/windows/win32/api/d3d12/nn-d3d12-id3d12resource)\*

Pointeur vers le premier élément d'un tableau de ressources à présenter à l'écran pour le plan. Si la prise en charge des ressources de vues uniques doit être ajoutée à l'avenir, le tableau doit être organisé par groupe de canaux (par exemple, RGBE ou A8), puis par joueur. Lors de la présentation d'une paire RGBE + A8, la ressource RGBE doit être placée avant la ressource A8.

*pSrcViewRects*
Type : [D3D12\_RECT](https://learn.microsoft.com/en-us/windows/win32/direct3d12/d3d12-rect)\*

Pointeur facultatif vers le premier élément d'un tableau de rectangles, correspondant à la région de vue de chaque joueur inclus dans la présentation. La taille du tableau est définie par le paramètre [ViewCount](/fr-CA/reference/graphics/d3d12_x/structs/d3d12xbox_present_parameters) passé à [PresentX](/fr-CA/reference/graphics/d3d12_x/interfaces/id3d12commandqueue/methods/id3d12commandqueue_presentx). Pendant la présentation, chaque région de vue définie par son rectangle source est mise à l'échelle vers une région de destination définie à l'écran, comme l'indique *pDestPlacementBase*. Ces rectangles peuvent se chevaucher et/ou être identiques; ils identifient simplement l'étendue souhaitée pour chaque vue de joueur. Une valeur nulle peut être passée pour ce membre afin de définir des rectangles de vue source qui couvrent entièrement le plan, selon les dimensions de la ressource associée au plan.

*pDestPlacementBase*
Type : [D3D12XBOX\_VIEW\_RECT](/fr-CA/reference/graphics/d3d12_x/structs/d3d12xbox_view_rect)\*

Pointeur facultatif vers exactement un rectangle de vue normalisé définissant la région de destination du premier joueur inclus dans la présentation. Pendant la présentation, le rectangle de vue source du premier joueur dans la ressource du plan est mis à l'échelle pour remplir la région de destination définie par *pDestPlacementBase*; les rectangles de vue source de tous les autres joueurs sont mis à l'échelle vers des régions de destination calculées indirectement, selon la relation entre les régions source et de destination du premier joueur. Plus précisément, *pDestPlacementBase* sert à dériver en interne un décalage de placement et des facteurs de mise à l'échelle pour la vue du premier joueur, et toutes les autres vues utilisent une mise à l'échelle identique et des décalages complémentaires. [PresentX](/fr-CA/reference/graphics/d3d12_x/interfaces/id3d12commandqueue/methods/id3d12commandqueue_presentx) ne peut pas être utilisée pour effectuer une mise à l'échelle et une composition indépendantes des vues source vers des régions de destination arbitraires; PresentX met plutôt à l'échelle et décale uniformément les vues source vers l'écran.

Le rectangle de vue de placement de destination est exprimé en coordonnées normalisées à virgule flottante. Des valeurs gauche et haut de 0.0 correspondent à l'extrémité supérieure gauche de l'écran de destination. Des valeurs droite et bas de 1.0 correspondent à l'extrémité inférieure droite de l'écran de destination. Une valeur nulle peut être passée pour ce membre afin de définir une couverture complète de la destination pour la vue du premier joueur.

Comme exemple d'utilisation de *pDestPlacementBase* en présence de plusieurs *pSrcViewRects*, considérez un jeu en écran partagé à trois joueurs. Pour présenter les vues des joueurs à partir d'une ressource d'échange de 3840 x 2160 sous la forme d'une seule rangée de trois colonnes de taille identique couvrant tout l'écran, un appelant fournirait ce qui suit :

*pSrcViewRects* :  \{0, 0, 1280, 2160}, \{1280, 0, 2560, 2160}, \{2560, 0, 3840, 2160}
*pDestPlacementBase* :  \{0.0f, 0.0f, 1.0f / 3.0f, 1.0f}

*ColorSpace*
Type : [DXGI\_COLOR\_SPACE\_TYPE](https://learn.microsoft.com/en-us/windows/win32/api/dxgicommon/ne-dxgicommon-dxgi_color_space_type)\*

Espace colorimétrique dans lequel interpréter les données de ressource fournies pour le plan. L'espace colorimétrique peut également servir à déterminer quelles ressources des plans fournis doivent être sélectionnées pour la présentation à l'écran (HDR) et lesquelles doivent être utilisées pour l'encodage GameDVR (SDR). Si aucun espace colorimétrique n'est indiqué (c'est-à-dire si les [D3D12XBOX\_PRESENT\_PLANE\_PARAMETERS](/fr-CA/reference/graphics/d3d12_x/structs/d3d12xbox_present_plane_parameters) eux-mêmes sont nuls), l'espace colorimétrique est défini comme **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G22\_NONE\_P709**. Les espaces colorimétriques valides sont **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G22\_NONE\_P709** et **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G2084\_NONE\_P2020**, tous deux avec correction gamma. XBOX Series X|S autorise les espaces colorimétriques avec correction gamma **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G2084\_NONE\_P709** et **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G2084\_NONE\_D65P3**. De plus, XBOX Series X|S autorise les espaces colorimétriques à lumière linéaire **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G10\_NONE\_P709**, **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G10\_NONE\_D65P3** et **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G10\_NONE\_P2020**. Les espaces colorimétriques à lumière linéaire ne sont autorisés qu'avec le format de ressource d'échange **DXGI\_FORMAT\_R9G9B9E5\_SHAREDEXP**. Les espaces colorimétriques SDR avec correction gamma sont autorisés avec des ressources d'échange de tout format, mais les espaces colorimétriques HDR ne sont autorisés qu'avec des ressources d'échange au format **DXGI\_FORMAT\_R10G10B10A2\_UNORM**.

Avec **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G10\_NONE\_P709**, le contenu de la mémoire tampon d'échange doit utiliser les primaires 709 et la plage de valeurs par canal doit être comprise entre 0.0 et 1.0. En mode HDR, la plage de 0.0 à 1.0 est interprétée comme allant de 0 à 10 000 nits. Autrement dit, un blanc D65 de 10 000 nits est représenté par (1.0, 1.0, 1.0). De même, avec **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G10\_NONE\_D65P3**, la plage de 0.0 à 1.0 est interprétée comme allant de 0 à 10 000 nits et un blanc D65 de 10 000 nits est (1.0, 1.0, 1.0). La mémoire tampon d'échange doit contenir du contenu créé avec des primaires de couleur P3 et un point blanc D65. Cela diffère de l'espace colorimétrique DCI\_P3, dont le point blanc n'est pas D65. Avec **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G10\_NONE\_P2020**, la mémoire tampon d'échange doit contenir des primaires de couleur 2020 avec un point blanc D65, dans la plage de 0.0 à 1.0, interprétée comme allant de 0 à 10 000 nits. Un blanc D65 de 10 000 nits est (1.0, 1.0, 1.0).

L'espace colorimétrique **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G2084\_NONE\_P709** s'attend à ce que le contenu de la mémoire tampon d'échange soit créé avec des primaires de couleur Rec. 709 et un point blanc D65, mais encodé avec la courbe PQ (ST.2084). L'espace colorimétrique **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G2084\_NONE\_D65P3** s'attend à ce que le contenu de la mémoire tampon d'échange soit créé avec des primaires de couleur P3 et un point blanc D65, mais encodé avec la courbe PQ (ST.2084) et non avec une courbe de puissance 1.0/2.6 ou sRGB. Cela diffère de DCI\_P3, qui utilise un encodage et un point blanc différents. L'espace colorimétrique **DXGI\_COLOR\_SPACE\_RGB\_FULL\_G2084\_NONE\_P2020** s'attend à ce que le contenu de la mémoire tampon d'échange soit créé avec des primaires de couleur Rec. 2020 et un point blanc D65, et encodé avec une courbe PQ (ST.2084).

*ScaleFilter*
Type : [D3D12XBOX\_PRESENT\_PLANE\_SCALE\_FILTER](/fr-CA/reference/graphics/d3d12_x/enums/d3d12xbox_present_plane_scale_filter)

Filtre de mise à l'échelle préféré à utiliser lors du suréchantillonnage d'une source de plan vers une destination d'affichage plus grande. Le filtre fourni n'est qu'une demande et son application en sortie n'est pas garantie. Le filtre de mise à l'échelle est ignoré sur XBOX Series X|S.

*ExtendedDescCount*
Type : UINT

Nombre de descriptions de plan étendues fournies dans la liste *pExtendedDescs*.

*pExtendedDescs*
Type : [D3D12XBOX\_PRESENT\_PLANE\_DESC](/fr-CA/reference/graphics/d3d12_x/structs/d3d12xbox_present_plane_desc)\*

Pointeur facultatif vers le premier élément d'un tableau de descriptions de plan étendues. Utilisez ce pointeur pour personnaliser davantage le plan utilisé dans la présentation.

*Flags*
Type : [D3D12XBOX\_PRESENT\_PLANE\_FLAGS](/fr-CA/reference/graphics/d3d12_x/enums/d3d12xbox_present_plane_flags)

Ensemble d'indicateurs utilisés pour fournir un contrôle supplémentaire sur la composition et l'affichage du plan.

## Remarques

Les titres peuvent configurer deux plans d'affichage qui peuvent servir à composer automatiquement l'interface utilisateur/HUD sur leur scène. Dans ce cas, la composition est effectuée par le matériel d'affichage sans coût supplémentaire en GPU, en mémoire ou en latence. Pour plus d'informations sur la façon de configurer cela, consultez [Superpositions matérielles et ressources d'échange](https://learn.microsoft.com/en-us/gaming/gdk/_content/gc/graphics/directx/hardware-overlays.md)

## Configuration requise

**En-tête :** d3d12\_x.h

**Plateformes prises en charge :** famille XBOX One

## Voir aussi

[PresentX](/fr-CA/reference/graphics/d3d12_x/interfaces/id3d12commandqueue/methods/id3d12commandqueue_presentx)


## Related topics

- [Répertoire des rubriques NDA : liens actifs vers Microsoft Learn](/fr/nda/nda-topic-directory.md)
- [XGameStreamingVideoFlags](/reference/system/xgamestreaming/enums/xgamestreamingvideoflags.md)
- [NDA topic directory - live Microsoft Learn links](/nda/nda-topic-directory.md)
- [NDA 主題目錄 - Microsoft Learn 線上連結](/zh-TW/nda/nda-topic-directory.md)
- [NDA 主题目录 - Microsoft Learn 在线链接](/zh-CN/nda/nda-topic-directory.md)
