A 3D primitive is a collection of vertices that form a single 3D entity. The simplest primitive is a collection of points in a 3D coordinate system, which is called a point list.
Often, 3D primitives are polygons. A polygon is a closed 3D figure delineated by at least three vertices. The simplest polygon is a triangle. Microsoft Direct3D uses triangles to compose most of its polygons because all three vertices in a triangle are guaranteed to be coplanar. Rendering nonplanar vertices is inefficient. You can combine triangles to form large, complex polygons and meshes.
Defines the primitives supported by Direct3D.
typedef enum D3DPRIMITIVETYPE
D3DPT_POINTLIST = 1,
D3DPT_LINELIST = 2,
D3DPT_LINESTRIP = 3,
D3DPT_TRIANGLELIST = 4,
D3DPT_TRIANGLESTRIP = 5,
D3DPT_TRIANGLEFAN = 6,
D3DPT_FORCE_DWORD = 0x7fffffff,
} D3DPRIMITIVETYPE, *LPD3DPRIMITIVETYPE;
- Renders the vertices as a collection of isolated points. This value is unsupported for indexed primitives.
- Renders the vertices as a list of isolated straight line segments.
- Renders the vertices as a single polyline.
Renders the specified vertices as a sequence of isolated triangles. Each group of three vertices defines a separate triangle.
- Back-face culling is affected by the current winding-order render state.
- Renders the vertices as a triangle strip. The backface-culling flag is automatically flipped on even-numbered triangles.
- Renders the vertices as a triangle fan.
- Forces this enumeration to compile to 32 bits in size. Without this value, some compilers would allow this enumeration to
compile to a size other than 32 bits. This value is not used.