Architecture Direct3D (Direct3D 9)
Cette rubrique fournit deux vues générales de l’architecture de Direct3D :
- pipeline Graphique Direct3D : vue de l’architecture de traitement interne du système de rendu Direct3D.
- Intégration du système Direct3D : vue de la façon dont Direct3D médiatisée entre une application et le matériel graphique.
Pipeline graphique Direct3D
Le pipeline graphique fournit la puissance pour traiter et restituer efficacement les scènes Direct3D à un affichage, en tirant parti du matériel disponible. Le diagramme suivant montre les blocs de construction du pipeline :
diagramme
Composant de pipeline | Description | Rubriques connexes |
---|---|---|
Données de vertex | Les sommets de modèle non transformés sont stockés dans des mémoires tampons de vertex. | tampons de vertex (Direct3D 9), IDirect3DVertexBuffer9 |
Données primitives | Les primitives géométriques, y compris les points, les lignes, les triangles et les polygones, sont référencées dans les données de vertex avec des mémoires tampons d’index. | tampons d’index (Direct3D 9), IDirect3DIndexBuffer9, Primitives, primitives Higher-Order (Direct3D 9) |
Pavage | L’unité de pavage convertit les primitives d’ordre supérieur, les cartes de déplacement et les correctifs de maillage en emplacements de vertex et stocke ces emplacements dans les mémoires tampons de vertex. | Tessellation (Direct3D 9) |
Traitement de vertex | Les transformations Direct3D sont appliquées aux sommets stockés dans la mémoire tampon de vertex. | pipeline de vertex (Direct3D 9) |
Traitement géométrique | Le découpage, le culage du visage arrière, l’évaluation des attributs et la rastérisation sont appliqués aux sommets transformés. | pipeline de pixels (Direct3D 9) |
Surface texture | Les coordonnées de texture des surfaces Direct3D sont fournies à Direct3D via l’interface IDirect3DTexture9. | textures Direct3D (Direct3D 9), IDirect3DTexture9 |
Texture Sampler | Le filtrage de niveau de détail de texture est appliqué aux valeurs de texture d’entrée. | textures Direct3D (Direct3D 9) |
Traitement des pixels | Les opérations de nuanceur de pixels utilisent des données geometry pour modifier les données de vertex d’entrée et de texture, ce qui génère des valeurs de couleur de pixel de sortie. | pipeline de pixels (Direct3D 9) |
Rendu des pixels | Les processus de rendu finaux modifient les valeurs de couleur des pixels avec des tests alpha, de profondeur ou de gabarit, ou en appliquant un mélange alpha ou un brouillard. Toutes les valeurs de pixel résultantes sont présentées à l’affichage de sortie. | pipeline de pixels (Direct3D 9) |
Intégration du système Direct3D
Le diagramme suivant montre les relations entre une application Window, Direct3D, GDI et le matériel :
diagramme
Direct3D expose une interface indépendante de l’appareil à une application. Les applications Direct3D peuvent exister en même temps que les applications GDI et ont tous deux accès au matériel graphique de l’ordinateur via le pilote de périphérique pour la carte graphique. Contrairement à GDI, Direct3D peut tirer parti des fonctionnalités matérielles en créant un appareil hal.
Un appareil hal fournit une accélération matérielle aux fonctions de pipeline graphique, en fonction de l’ensemble de fonctionnalités pris en charge par la carte graphique. Les méthodes Direct3D sont fournies pour récupérer les fonctionnalités d’affichage des appareils au moment de l’exécution. (Voir IDirect3DDevice9 ::GetDeviceCaps.) Si une fonctionnalité n’est pas fournie par le matériel, la hal ne le signale pas en tant que fonctionnalité matérielle.
Pour plus d’informations sur hal et les appareils de référence pris en charge par Direct3D, consultez Types d’appareils (Direct3D 9).