D3DFVF
Las constantes flexibles de formato de vértices o los códigos FVF se usan para describir el contenido de los vértices intercalados en un único flujo de datos que la canalización de función fija procesará.
Marcas de datos de vértices
Las marcas siguientes describen un formato de vértice. Para obtener información sobre los formatos de vértice, vea Fixed Function FVF Codes (Direct3D 9).
#define | Descripción | Orden de datos y tipo |
---|---|---|
D3DFVF_DIFFUSE | El formato de vértice incluye un componente de color difuso. | DWORD en orden ARGB. Consulte D3DCOLOR_ARGB. |
D3DFVF_NORMAL | El formato de vértice incluye un vector normal de vértice. Esta marca no se puede usar con la marca D3DFVF_XYZRHW. | float, float, float |
D3DFVF_PSIZE | Formato de vértice especificado en el tamaño de punto. Este tamaño se expresa en unidades de espacio de cámara para vértices que no se transforman y iluminan, y en unidades de espacio de dispositivo para vértices transformados e iluminados. | FLOAT |
D3DFVF_SPECULAR | El formato de vértice incluye un componente de color especular. | DWORD en orden ARGB. Consulte D3DCOLOR_ARGB. |
D3DFVF_XYZ | El formato de vértice incluye la posición de un vértice no transformado. Esta marca no se puede usar con la marca D3DFVF_XYZRHW. | float, float, float. |
D3DFVF_XYZRHW | El formato de vértice incluye la posición de un vértice transformado. Esta marca no se puede usar con las marcas D3DFVF_XYZ o D3DFVF_NORMAL. | float, float, float, float. |
D3DFVF_XYZB1 a través de D3DFVF_XYZB5 | El formato de vértice contiene datos de posición y un número correspondiente de valores de ponderación (beta) que se van a usar para las operaciones de fusión de vértices multimatrix. Actualmente, Direct3D puede combinarse con hasta tres valores de ponderación y cuatro matrices de mezcla. Para obtener más información sobre el uso de matrices de mezcla, vea Indexed Vertex Blending (Direct3D 9). | 1, 2 o 3 flotadores. Cuando se usa D3DFVF_LASTBETA_UBYTE4, el último peso de mezcla se trata como DWORD. |
D3DFVF_XYZW | El formato de vértice contiene datos transformados y recortados (x, y, z, w). ProcessVertices no invoca el clipper, sino que genera datos en coordenadas de recorte. Esta constante está diseñada para, y solo se puede usar con la canalización de vértices programables. | float, float, float, float |
Marcas de textura
Las marcas siguientes describen las marcas de textura usadas por la canalización de función fija.
#define | Descripción |
---|---|
D3DFVF_TEX0: D3DFVF_TEX8 | Número de conjuntos de coordenadas de textura para este vértice. Los valores reales de estas marcas no son secuenciales. |
D3DFVF_TEXCOORDSIZEN(coordIndex) | Defina un conjunto de datos de coordenadas de textura. n indica la dimensión de las coordenadas de textura. coordIndex indica el número de índice de coordenadas de textura. Consulte D3DFVF_TEXCOORDSIZEN y coordenadas de textura y fases de textura. |
Marcas de máscara
Las marcas siguientes describen las marcas de máscara usadas por la canalización de función fija.
#define | Descripción |
---|---|
D3DFVF_POSITION_MASK | Máscara para bits de posición. |
D3DFVF_RESERVED0, D3DFVF_RESERVED2 | Enmascara los valores de bits reservados en FVF. No debe usarse. |
D3DFVF_TEXCOUNT_MASK | Valor de máscara para bits de marca de textura. |
Marcas varias
Las marcas siguientes describen una variedad de marcas usadas por la canalización de función fija.
#define | Descripción | |
D3DFVF_LASTBETA_D3DCOLOR | El último campo beta de los datos de posición de vértice será de tipo D3DCOLOR. Los datos de los campos beta se usan con la máscara de paleta de matrices para especificar índices de matriz. | |
D3DFVF_LASTBETA_UBYTE4 | El último campo beta de los datos de posición de vértice será de tipo UBYTE4. Los datos de los campos beta se usan con la máscara de paleta de matrices para especificar índices de matriz.
Dado que el FVF se declara como: D3DFVF_XYZB5 | D3DFVF_LASTBETA_UBYTE4. Weight y MatrixIndices se incluyen en beta[5], donde D3DFVF_LASTBETA_UBYTE4 dice interpretar el último DWORD en beta[5] como tipo UBYTE4. |
|
D3DFVF_TEXCOUNT_SHIFT | Número de bits por el que se va a desplazar un valor entero que identifica el número de coordenadas de textura de un vértice. Este valor se puede usar como se muestra a continuación.
|
Ejemplos
En los ejemplos siguientes se muestran otras combinaciones de marcas comunes.
// 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 );
Información constante
Requisito | Value |
---|---|
Encabezado | d3d9types.h |
Sistema operativo mínimo | Windows 98 |
Temas relacionados