Partager via


Niveaux de fonctionnalités matérielles

Décrit les fonctionnalités des niveaux de fonctionnalités matérielles 11_0 à 12_1.

Pour gérer la diversité des cartes vidéo dans les machines nouvelles et existantes, Microsoft Direct3D 11 a introduit le concept de niveaux de fonctionnalités. Chaque carte vidéo implémente un certain niveau de fonctionnalités Microsoft DirectX (DX) en fonction des unités de traitement graphique (GPU) installées. Un niveau de fonctionnalité est un ensemble bien défini de fonctionnalités GPU. Par exemple, le niveau de fonctionnalité 11_0 implémente la fonctionnalité implémentée dans Direct3D 11.

Maintenant, lorsque vous créez un appareil, vous pouvez tenter de créer un appareil pour le niveau de fonctionnalité que vous souhaitez demander. Si la création de l’appareil fonctionne, ce niveau de fonctionnalité existe, sinon, le matériel ne prend pas en charge ce niveau de fonctionnalité. Vous pouvez essayer de recréer un appareil à un niveau de fonctionnalité inférieur ou vous pouvez choisir de quitter l’application.

Les propriétés de base des niveaux de fonctionnalités sont les suivantes :

  • Tous les pilotes Direct3D 12 seront au niveau de fonctionnalité 11_0 ou supérieur.
  • Un GPU qui permet à un appareil d’être créé répond ou dépasse les fonctionnalités de ce niveau de fonctionnalité.
  • Un niveau de fonctionnalité inclut toujours les fonctionnalités des niveaux de fonctionnalités précédents ou inférieurs.
  • Un niveau de fonctionnalité n’implique pas les performances, mais uniquement les fonctionnalités. Les performances dépendent de l’implémentation matérielle.
  • Un niveau de fonctionnalité est choisi lorsque vous appelez D3D12CreateDevice.
  • Pour plus d’informations sur les fonctionnalités prises en charge (en particulier celles marquées facultatives dans le tableau ci-dessous, ce qui signifie que le matériel peut prendre en charge la fonctionnalité, mais n’est pas requis pour) appeler CheckFeatureSupport.

Pour plus d’informations sur les limitations de création d’appareils de type non matériel sur certains niveaux de fonctionnalités, consultez Limitations de création de WARP et d’appareils de référence. Pour plus d’informations sur l’introduction des niveaux de fonctionnalités, reportez-vous à la documentation Direct3D 11 sur niveaux de fonctionnalités Direct3D.

Systèmes de numérotation

Les niveaux de fonctionnalités matérielles ne sont pas identiques aux versions d’API. Par exemple, il existe une API D3D11.3, mais il n’existe aucun niveau de fonctionnalité matérielle 11_3. Les niveaux de fonctionnalité sont définis dans l’énumération D3D_FEATURE_LEVEL.

Il existe trois systèmes de numérotation distincts :

  • Les versions Direct3D utilisent une période ; par exemple, Direct3D 12.0.
  • Les modèles de nuanceur utilisent une période ; par exemple, le modèle de nuanceur 5.1.
  • Les niveaux de fonctionnalité utilisent un trait de soulignement ; par exemple, niveau de fonctionnalité 12_0.

Prise en charge au niveau des fonctionnalités

Les fonctionnalités suivantes sont disponibles pour chaque niveau de fonctionnalité Direct3D.

Les en-têtes de la ligne supérieure sont des niveaux de fonctionnalités Direct3D. Les en-têtes de la colonne de gauche sont des fonctionnalités.

Fonctionnalité \ Niveau de fonctionnalité 12_1⁰ 12_0⁰ 11_1¹ 11_0
Modèle de nuanceur 6.0 6.0 6.0/5.1² 6.0/5.1²
niveau de liaison de ressources Tier2³ Tier2³ Tier1³ Tier1³
ressources en mosaïques Tier2³ Tier2³ Optionnel Optionnel
de rastérisation conservatrice Tier1³ Optionnel Optionnel Non
vues triées ratériseur Oui Optionnel Optionnel Non
filtres min/max Oui Oui Optionnel Non
Mapper la mémoire tampon par défaut Optionnel Optionnel Optionnel Optionnel
valeur de référence du gabarit spécifié Optionnel Optionnel Optionnel Non
type de vue d’accès non trié charge 18 formats, plus facultatifs 18 formats, plus facultatifs 3 formats, plus facultatifs 3 formats, plus facultatifs
du nuanceur geometry Oui Oui Oui Oui
stream out Oui Oui Oui Oui
DirectCompute / Nuanceur de calcul Oui Oui Oui Oui
Hull and Domain Shaders Oui Oui Oui Oui
Tableaux de ressources de texture Oui Oui Oui Oui
Tableaux de ressources Cubemap Oui Oui Oui Oui
BC1 à BC7 Compression Oui Oui Oui Oui
alpha-à-couverture Oui Oui Oui Oui
opérations logiques (fusion de sortie) Oui Oui Oui Optionnel
Rastérisation indépendante de la cible Oui Oui Oui Non
cible de rendu multiple (MRT) avec ForcedSampleCount 1 Oui Oui Oui Optionnel
nombre maximal d’exemples forcés pour le rendu en UAV uniquement 16 16 16 8
Dimension de texture maximale 16384 16384 16384 16384
Max Cubemap Dimension 16384 16384 16384 16384
Étendue maximale du volume 2048 2048 2048 2048
Répétition de texture maximale 16384 16384 16384 16384
Max Anisotropy 16 16 16 16
Nombre maximal de primitives 2^32 – 1 2^32 – 1 2^32 – 1 2^32 – 1
Index de vertex maximal 2^32 – 1 2^32 – 1 2^32 – 1 2^32 – 1
Emplacements d’entrée max. 32 32 32 32
Cibles de rendu simultanées 8 8 8 8
Requêtes d’occlusion Oui Oui Oui Oui
Mélange alpha distinct Oui Oui Oui Oui
Miroir une fois Oui Oui Oui Oui
Chevauchement d’éléments de vertex Oui Oui Oui Oui
Masques d’écriture indépendants Oui Oui Oui Oui
Instanciation Oui Oui Oui Oui

 

  • ⁰ Nécessite le runtime Direct3D 11.3 ou Direct3D 12.
  • ¹ Nécessite le runtime Direct3D 11.1.
  • Le modèle de nuanceur 5.0 ² peut éventuellement prendre en charge des nuanceurs à double précision, des nuanceurs de double précision étendus, des nuanceurs SAD4 et des nuanceurs de précision partielle. Pour déterminer les options du modèle de nuanceur 5.0 disponibles, appelez ID3D12Device ::CheckFeatureSupport. Certaines compatibilités dépendent du matériel sur lequel vous exécutez : le modèle de nuanceur 5.1 est uniquement pris en charge sur le matériel qui prend en charge l’API DirectX 12, quel que soit le niveau de fonctionnalité utilisé. Le matériel DirectX 11 prend uniquement en charge le modèle de nuanceur 5.0. L’API DirectX 12 passe uniquement au niveau de fonctionnalité 11_0.
  • Les niveaux supérieurs sont facultatifs.
  • Les niveaux de fonctionnalité 12_0 et 12_1 nécessitent le runtime Direct3D 11.3 ou Direct3D 12.
  • Le niveau de fonctionnalité 11_1 nécessite le runtime Direct3D 11.1.
  • Le niveau de fonctionnalité 11_0 nécessite le runtime Direct3D 11.0.

Prise en charge matérielle des formats DXGI

Pour afficher les tables des formats DXGI et des fonctionnalités matérielles, reportez-vous à :

fonctionnalité d’interrogation de

Comprendre direct3D 12