D3DVERTEXELEMENT9 structure
Defines the vertex data layout. Each vertex can contain one or more data types, and each data type is described by a vertex element.
Syntax
typedef struct D3DVERTEXELEMENT9 { WORD Stream; WORD Offset; BYTE Type; BYTE Method; BYTE Usage; BYTE UsageIndex; } D3DVERTEXELEMENT9, *LPD3DVERTEXELEMENT9;
Members
- Stream
-
Type: WORD
-
Stream number.
- Offset
-
Type: WORD
-
Offset from the beginning of the vertex data to the data associated with the particular data type.
- Type
-
Type: BYTE
-
The data type, specified as a D3DDECLTYPE. One of several predefined types that define the data size. Some methods have an implied type.
- Method
-
Type: BYTE
-
The method specifies the tessellator processing, which determines how the tessellator interprets (or operates on) the vertex data. For more information, see D3DDECLMETHOD.
- Usage
-
Type: BYTE
-
Defines what the data will be used for; that is, the interoperability between vertex data layouts and vertex shaders. Each usage acts to bind a vertex declaration to a vertex shader. In some cases, they have a special interpretation. For example, an element that specifies D3DDECLUSAGE_NORMAL or D3DDECLUSAGE_POSITION is used by the N-patch tessellator to set up tessellation. See D3DDECLUSAGE for a list of the available semantics. D3DDECLUSAGE_TEXCOORD can be used for user-defined fields (which don't have an existing usage defined).
- UsageIndex
-
Type: BYTE
-
Modifies the usage data to allow the user to specify multiple usage types.
Remarks
Vertex data is defined using an array of D3DVERTEXELEMENT9 structures. Use D3DDECL_END to declare the last element in the declaration.
Requirements
|
Header |
|
|---|
See also