D3DFVF
Les constantes de format de vertex flexibles, ou codes de la Commission, sont utilisées pour décrire le contenu des vertex entrelacés dans un flux de données unique qui sera traité par le pipeline de fonction fixe.
Indicateurs de données de vertex
Les indicateurs suivants décrivent un format de vertex. Pour plus d’informations sur les formats de vertex, consultez fonction fixe codes de la Commission du prix final (Direct3D 9).
| #définition | Description | Ordre et type des données |
|---|---|---|
| _Diffusion D3DFVF | Le format vertex comprend un composant de couleur diffuse. | DWORD dans l’ordre ARVB. Consultez D3DCOLOR _ ARGB. |
| D3DFVF _ normal | Le format vertex comprend un vecteur normal de vertex. Cet indicateur ne peut pas être utilisé avec l' _ indicateur D3DFVF XYZRHW. | float, float, float |
| D3DFVF _ psize | Format de vertex spécifié en taille en points. Cette taille est exprimée en unités d’espace de caméra pour les vertex qui ne sont pas transformés et allumés, et dans les unités d’espace de l’appareil pour les vertex transformés et allumés. | float |
| D3DFVF _ spéculaire | Le format vertex comprend un composant de couleur spéculaire. | DWORD dans l’ordre ARVB. Consultez D3DCOLOR _ ARGB. |
| D3DFVF _ xyz | Le format vertex comprend la position d’un vertex non transformé. Cet indicateur ne peut pas être utilisé avec l' _ indicateur D3DFVF XYZRHW. | float, float, float. |
| D3DFVF _ XYZRHW | Le format vertex comprend la position d’un vertex transformé. Cet indicateur ne peut pas être utilisé avec les _ indicateurs normaux D3DFVF XYZ ou D3DFVF _ . | float, float, float, float. |
| D3DFVF _ XYZB1 à D3DFVF _ XYZB5 | Le format vertex contient des données de position et un nombre correspondant de valeurs de pondération (bêta) à utiliser pour les opérations de fusion de vertex multimatrix. À l’heure actuelle, Direct3D peut fusionner avec jusqu’à trois valeurs de pondération et quatre matrices de fusion. Pour plus d’informations sur l’utilisation des matrices de fusion, consultez la rubrique fusion des vertex indexés (Direct3D 9). | 1, 2 ou 3 valeurs à virgule flottante. Quand D3DFVF _ LASTBETA _ UBYTE4 est utilisé, la dernière pondération de fusion est traitée comme une valeur DWORD. |
| D3DFVF _ XYZW | Le format vertex contient les données transformées et découpées (x, y, z, w). ProcessVertices n’appelle pas l’Clipper, à la place de données en coordonnées de clip. Cette constante est conçue pour et peut uniquement être utilisée avec le pipeline de vertex programmable. | float, float, float, float |
Indicateurs de texture
Les indicateurs suivants décrivent les indicateurs de texture utilisés par le pipeline de fonction fixe.
| #définition | Description |
|---|---|
| D3DFVF _ TEX0-D3DFVF _ TEX8 | Nombre de jeux de coordonnées de texture pour ce vertex. Les valeurs réelles de ces indicateurs ne sont pas séquentielles. |
| D3DFVF _ TEXCOORDSIZEN (coordIndex) | Définissez un jeu de données de coordonnées de texture. n indique la dimension des coordonnées de texture. coordIndex indique le numéro d’index de la coordonnée de texture. Consultez D3DFVF _ TEXCOORDSIZEN , coordonnées de texture et étapes de texture. |
Indicateurs de masque
Les indicateurs suivants décrivent les indicateurs de masque utilisés par le pipeline de fonction fixe.
| #définition | Description |
|---|---|
| _Masque de position D3DFVF _ | Masque pour les bits de position. |
| D3DFVF _ RESERVED0, D3DFVF _ RESERVED2 | Valeurs de masque pour les bits réservés dans le prix de la Commission. Ne pas utiliser. |
| _Masque D3DFVF TEXCOUNT _ | Valeur de masque pour les bits d’indicateur de texture. |
Indicateurs divers
Les indicateurs suivants décrivent divers indicateurs utilisés par le pipeline de fonction fixe.
| #définition | Description | |
| D3DFVF_LASTBETA_D3DCOLOR | Le dernier champ bêta dans les données de position du vertex sera de type D3DCOLOR. Les données des champs bêta sont utilisées avec l’apparence de palette de matrices pour spécifier des index de matrice. | |
| D3DFVF_LASTBETA_UBYTE4 | Le dernier champ bêta dans les données de position du vertex sera de type UBYTE4. Les données des champs bêta sont utilisées avec l’apparence de palette de matrices pour spécifier des index de matrice.
Étant donné que le prix final est déclaré comme suit : D3DFVF_XYZB5 | D3DFVF_LASTBETA_UBYTE4. Weight et MatrixIndices sont inclus dans la version bêta [5], où D3DFVF_LASTBETA_UBYTE4 indique d’interpréter le dernier DWORD de la version bêta [5] en tant que type UBYTE4. |
|
| D3DFVF_TEXCOUNT_SHIFT | Nombre de bits par lequel décaler une valeur entière qui identifie le nombre de coordonnées de texture pour un vertex. Cette valeur peut être utilisée comme indiqué ci-dessous.
|
Exemples
Les exemples suivants illustrent d’autres combinaisons courantes d’indicateurs.
// Untransformed vertex for lit, untextured, Gouraud-shaded content.
dwFVF = ( D3DFVF_XYZ | D3DFVF_DIFFUSE );
// Untransformed vertex for unlit, untextured, Gouraud-shaded
// content with diffuse material color specified per vertex.
dwFVF = ( D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_DIFFUSE );
// Untransformed vertex for light-map-based lighting.
dwFVF = ( D3DFVF_XYZ | D3DFVF_TEX2 );
// Transformed vertex for light-map-based lighting with shared rhw.
dwFVF = ( D3DFVF_XYZRHW | D3DFVF_TEX2 );
// Heavyweight vertex for unlit, colored content with two
// sets of texture coordinates.
dwFVF = ( D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_DIFFUSE |
D3DFVF_SPECULAR | D3DFVF_TEX2 );
Informations constantes
| Condition requise | Valeur |
|---|---|
| En-tête | d3d9types. h |
| Système d’exploitation minimal | Windows 98 |