Mapper entre les déclarations D3D9 et D3D8
Ce tableau mappe les membres d’une déclaration D3DVERTEXELEMENT9 à une déclaration Direct3D 8.
Utilisation de Direct3D 9 | Index d’utilisation de Direct3D 9 | Direct3D 8 |
---|---|---|
D3DDECLUSAGE_POSITION | 0 | D3DVSDE_POSITION |
D3DDECLUSAGE_POSITION | 1 | D3DVSDE_POSITION2 |
D3DDECLUSAGE_NORMAL | 0 | D3DVSDE_NORMAL |
D3DDECLUSAGE_NORMAL | 1 | D3DVSDE_NORMAL2 |
D3DDECLUSAGE_BLENDWEIGHT | 0 | D3DVSDE_BLENDWEIGHT |
D3DDECLUSAGE_BLENDINDICES | 0 | D3DVSDE_BLENDINDICES |
D3DDECLUSAGE_PSIZE | 0 | D3DVSDE_PSIZE |
D3DDECLUSAGE_COLOR | 0 | D3DVSDE_DIFFUSE |
D3DDECLUSAGE_COLOR | 1 | D3DVSDE_SPECULAR |
D3DDECLUSAGE_TEXCOORD | n | D3DVSDE_TEXCOORDn |
Lorsqu’une déclaration est utilisée avec le traitement du vertex matériel sur un pilote Direct3D 7, le runtime Direct3D la convertit en FVF avec les règles suivantes :
- Seul le flux 0 doit être utilisé (comme le montre la limite MaxStreams).
- L’ordre des éléments de vertex doit être le même que celui des bits FVF.
- Les écarts dans les coordonnées de texture ne sont pas autorisés.
- Tout élément de vertex non décrit dans la table ne peut pas être converti en FVF valide pour tous les pilotes antérieurs à DirectX 8 et, par conséquent, ne peut pas être utilisé sur ces pilotes.
- Seule D3DDECLTYPE_FLOAT2 est autorisée pour les éléments de vertex avec D3DDECLUSAGE_TEXCOORD si l’appareil ne définit pas les limites de D3DPTEXTURECAPS_PROJECTED ou de D3DPTEXTURECAPS_CUBEMAP.
Rubriques connexes