Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Defines vertex element formats.
Namespace: Microsoft.Xna.Framework.Graphics
Assembly: Microsoft.Xna.Framework (in microsoft.xna.framework.dll)
Syntax
public enum VertexElementFormat
Members
Member name | Description | |
---|---|---|
Single | Single-component, 32-bit floating-point, expanded to (float, 0, 0, 1). | |
Vector2 | Two-component, 32-bit floating-point, expanded to (float, Float32 value, 0, 1). | |
Vector3 | Three-component, 32-bit floating point, expanded to (float, float, float, 1). | |
Vector4 | Four-component, 32-bit floating point, expanded to (float, float, float, float). | |
HalfVector2 | Two-component, 16-bit floating point expanded to (value, value, value, value). This type is valid for vertex shader version 2.0 or higher. | |
HalfVector4 | Four-component, 16-bit floating-point expanded to (value, value, value, value). This type is valid for vertex shader version 2.0 or higher. | |
Rgba64 | Normalized, four-component, unsigned short, expanded to (first byte/65535.0, second byte/65535.0, third byte/65535.0, fourth byte/65535.0). This type is valid for vertex shader version 2.0 or higher. | |
Color | Four-component, packed, unsigned byte, mapped to 0 to 1 range. Input is in Int32 format (ARGB) expanded to (R, G, B, A). | |
Rgba32 | Four-component byte with each byte normalized by dividing the component with 255.0f. This type is valid for vertex shader version 2.0 or higher. | |
Rg32 | Normalized, two-component, unsigned short, expanded to (first byte/65535.0, second byte/65535.0, 0, 1). This type is valid for vertex shader version 2.0 or higher. | |
NormalizedShort2 | Normalized, two-component, signed short, expanded to (first short/32767.0, second short/32767.0, 0, 1). This type is valid for vertex shader version 2.0 or higher. | |
NormalizedShort4 | Normalized, four-component, signed short, expanded to (first short/32767.0, second short/32767.0, third short/32767.0, fourth short/32767.0). This type is valid for vertex shader version 2.0 or higher. | |
Normalized101010 | Three-component, signed, 10 10 10 format normalized and expanded to (v[0]/511.0, v[1]/511.0, v[2]/511.0, 1). | |
Short2 | Two-component, signed short expanded to (value, value, 0, 1). | |
Short4 | Four-component, signed short expanded to (value, value, value, value). | |
Byte4 | Four-component, unsigned byte. | |
UInt101010 | Three-component, unsigned, 10 10 10 format expanded to (value, value, value, 1). | |
Unused | Type field in the declaration is unused. This is designed for use with VertexElementMethod.UV and VertexElementMethod.LookUpPresampled. |
Remarks
Vertex data is declared with an array of VertexElement structures. Each element in the array contains a vertex declaration method. These values can be passed into the constructor or to the VertexElementMethod property.
A mapping of each Direct3D 9 format name to the VertexElementFormat equivalent is listed in the following table.
Direct3D 9 Vertex Format | VertexElementFormat equivalent | |
---|---|---|
Floating Point | ||
Float32 | D3DDECLTYPE_FLOAT1 | Single |
D3DDECLTYPE_FLOAT2 | Vector2 | |
D3DDECLTYPE_FLOAT3 | Vector3 | |
D3DDECLTYPE_FLOAT4 | Vector4 | |
Float16 | D3DDECLTYPE_FLOAT16_2 | HalfVector2 |
D3DDECLTYPE_FLOAT16_4 | HalfVector4 | |
Unsigned Normalized | ||
64 bpp | D3DDECLTYPE_USHORT4N | Rgba64 |
32 bpp | D3DDECLTYPE_D3DCOLOR | Color |
D3DDECLTYPE_UBYTE4N | Rgba32 | |
D3DDECLTYPE_USHORT2N | Rg32 | |
Signed Normalized | ||
D3DDECLTYPE_SHORT2N | NormalizedShort2 | |
D3DDECLTYPE_SHORT4N | NormalizedShort4 | |
D3DDECLTYPE_DEC3N | Normalized101010 | |
Signed Integer | ||
D3DDECLTYPE_SHORT2 | Short2 | |
D3DDECLTYPE_SHORT4 | Short4 | |
Unsigned Integer | ||
D3DDECLTYPE_UBYTE4 | Byte4 | |
D3DDECLTYPE_UDEC3 | UInt101010 |
See Also
Reference
VertexElement Constructor
VertexElement.VertexElementFormat Property
GraphicsDeviceCapabilities.DeclarationTypeCaps Properties
VertexElementMethod Enumeration
Microsoft.Xna.Framework.Graphics Namespace
Platforms
Xbox 360, Windows XP SP2, Windows Vista