D3DXMESH
Flags used to specify creation options for a mesh.
typedef enum D3DXMESH
{
D3DXMESH_32BIT = 0x001,
D3DXMESH_DONOTCLIP = 0x002,
D3DXMESH_POINTS = 0x004,
D3DXMESH_RTPATCHES = 0x008,
D3DXMESH_NPATCHES = 0x4000,
D3DXMESH_VB_SYSTEMMEM = 0x010,
D3DXMESH_VB_MANAGED = 0x020,
D3DXMESH_VB_WRITEONLY = 0x040,
D3DXMESH_VB_DYNAMIC = 0x080,
D3DXMESH_VB_SOFTWAREPROCESSING = 0x8000,
D3DXMESH_IB_SYSTEMMEM = 0x100,
D3DXMESH_IB_MANAGED = 0x200,
D3DXMESH_IB_WRITEONLY = 0x400,
D3DXMESH_IB_DYNAMIC = 0x800,
D3DXMESH_IB_SOFTWAREPROCESSING = 0x10000,
D3DXMESH_VB_SHARE = 0x1000,
D3DXMESH_USEHWONLY = 0x2000,
D3DXMESH_SYSTEMMEM = 0x110,
D3DXMESH_MANAGED = 0x220,
D3DXMESH_WRITEONLY = 0x440,
D3DXMESH_DYNAMIC = 0x880,
D3DXMESH_SOFTWAREPROCESSING = 0x18000,
} D3DXMESH, *LPD3DXMESH;
Constants
- D3DXMESH_32BIT
- The mesh has 32-bit indices instead of 16-bit indices. See Remarks.
- D3DXMESH_DONOTCLIP
- Use the D3DUSAGE_DONOTCLIP usage flag for vertex and index buffers.
- D3DXMESH_POINTS
- Use the D3DUSAGE_POINTS usage flag for vertex and index buffers.
- D3DXMESH_RTPATCHES
- Use the D3DUSAGE_RTPATCHES usage flag for vertex and index buffers.
- D3DXMESH_NPATCHES
- Specifying this flag causes the vertex and index buffer of the mesh to be created with D3DUSAGE_NPATCHES flag. This is required if the mesh object is to be rendered using N-patch enhancement using Direct3D.
- D3DXMESH_VB_SYSTEMMEM
- Use the D3DPOOL_SYSTEMMEM usage flag for vertex buffers.
- D3DXMESH_VB_MANAGED
- Use the D3DPOOL_MANAGED usage flag for vertex buffers.
- D3DXMESH_VB_WRITEONLY
- Use the D3DUSAGE_WRITEONLY usage flag for vertex buffers.
- D3DXMESH_VB_DYNAMIC
- Use the D3DUSAGE_DYNAMIC usage flag for vertex buffers.
- D3DXMESH_VB_SOFTWAREPROCESSING
- Use the D3DUSAGE_SOFTWAREPROCESSING usage flag for vertex buffers.
- D3DXMESH_IB_SYSTEMMEM
- Use the D3DPOOL_SYSTEMMEM usage flag for index buffers.
- D3DXMESH_IB_MANAGED
- Use the D3DPOOL_MANAGED usage flag for index buffers.
- D3DXMESH_IB_WRITEONLY
- Use the D3DUSAGE_WRITEONLY usage flag for index buffers.
- D3DXMESH_IB_DYNAMIC
- Use the D3DUSAGE_DYNAMIC usage flag for index buffers.
- D3DXMESH_IB_SOFTWAREPROCESSING
- Use the D3DUSAGE_SOFTWAREPROCESSING usage flag for index buffers.
- D3DXMESH_VB_SHARE
- Forces the cloned meshes to share vertex buffers.
- D3DXMESH_USEHWONLY
- Use hardware processing only. For mixed-mode device, this flag will cause the system to use hardware (if supported in hardware) or will default to software processing.
- D3DXMESH_SYSTEMMEM
- Equivalent to specifying both D3DXMESH_VB_SYSTEMMEM and D3DXMESH_IB_SYSTEMMEM.
- D3DXMESH_MANAGED
- Equivalent to specifying both D3DXMESH_VB_MANAGED and D3DXMESH_IB_MANAGED.
- D3DXMESH_WRITEONLY
- Equivalent to specifying both D3DXMESH_VB_WRITEONLY and D3DXMESH_IB_WRITEONLY.
- D3DXMESH_DYNAMIC
- Equivalent to specifying both D3DXMESH_VB_DYNAMIC and D3DXMESH_IB_DYNAMIC.
- D3DXMESH_SOFTWAREPROCESSING
- Equivalent to specifying both D3DXMESH_VB_SOFTWAREPROCESSING and D3DXMESH_IB_SOFTWAREPROCESSING.
Remarks
A 32-bit mesh (D3DXMESH_32BIT) can theoretically support (2^32)-1 faces and vertices. However, allocating memory for a mesh that large on a 32-bit operating system is not practical.