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

# SetViewInstanceMask

> Définit un masque qui contrôle quelles instances de vue sont activées pour les dessins subséquents.

Définit un masque qui contrôle quelles instances de vue sont activées pour les dessins subséquents.

## Syntaxe

```cpp theme={null}
void SetViewInstanceMask(
    UINT Mask
)
```

### Paramètres

*Mask \[in]*\
Type : UINT

Masque qui spécifie quelles vues sont activées ou désactivées. Si le bit <i>i</i>, à partir du bit le moins significatif, est défini, l'instance de vue <i>i</i> est activée.

### Valeur de retour

Type : void

Aucune.

## Remarques

Le masque d'instances de vue n'affecte que les PSO qui déclarent le masquage d'instances de vue en spécifiant l'indicateur D3D12\_VIEW\_INSTANCING\_FLAG\_ENABLE\_VIEW\_INSTANCE\_MASKING lors de leur création. Toute tentative de création d'un PSO qui déclare le masquage d'instances de vue échouera sur les adaptateurs qui ne prennent pas en charge l'instanciation de vues.

Le masque d'instances de vue a la valeur 0 par défaut, ce qui désactive toutes les vues. Cela oblige les applications qui déclarent le masquage d'instances de vue à choisir explicitement les vues à activer; sinon, rien ne sera rendu. Si le masque d'instances de vue activait toutes les vues par défaut, l'application pourrait oublier de désactiver les vues inutilisées, ce qui entraînerait une perte de performances due à du travail inutile.

Les bundles n'héritent pas du masque d'instances de vue de leur appelant et ont plutôt la valeur 0 par défaut. En effet, la valeur du masque doit être connue lors de l'enregistrement du bundle si elle influe sur la façon dont une implémentation enregistre les dessins. Le masque d'instances de vue défini par un bundle persiste toutefois chez l'appelant une fois le bundle terminé. Cette sémantique d'héritage est semblable à celle des PSO.

Aucun chemin de code de nuanceur dépendant de SV\_ViewID n'est exécuté à quelque étape de nuanceur que ce soit pour les instances de vue masquées, et aucun découpage, traitement de fenêtre d'affichage ou rastérisation n'est effectué. Les implémentations qui inspectent le masque pendant le rendu peuvent subir une légère pénalité de performances par rapport aux PSO qui ne déclarent aucunement le masquage d'instances de vue, mais cette pénalité est généralement compensée par les gains de performances obtenus en ignorant le travail associé aux vues masquées. Selon la fréquence et la quantité de travail ignoré, les gains de performances peuvent être importants.

## Configuration requise

**En-tête :** d3d12\_xs.h ou d3d12\_x.h\
**Bibliothèque :** d3d12\_xs.lib ou d3d12\_x.lib\
**Plateformes prises en charge :** consoles XBOX Series et famille XBOX One

## Voir aussi

[ID3D12GraphicsCommandList1](/fr-CA/reference/graphics/d3d12/interfaces/id3d12graphicscommandlist1/id3d12graphicscommandlist1_public)


## Related topics

- [D3D12_VIEW_INSTANCE_LOCATION](/fr-CA/reference/graphics/d3d12/structs/d3d12_view_instance_location_public.md)
- [D3D12_VIEW_INSTANCING_DESC](/fr-CA/reference/graphics/d3d12/structs/d3d12_view_instancing_desc_public.md)
- [D3D12_VIEW_INSTANCING_FLAGS](/fr-CA/reference/graphics/d3d12/enums/d3d12_view_instancing_flags_public.md)
- [chat_manager::set_thread_affinity_mask](/fr-CA/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_set_thread_affinity_mask.md)
- [PFMultiplayerSetThreadAffinityMask](/fr-CA/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmultiplayer/functions/pfmultiplayersetthreadaffinitymask.md)
