D3D_PRIMITIVE_TOPOLOGY Enumeration

Values that indicate how the pipeline interprets vertex data that is bound to the input-assembler stage. These primitive topology values determine how the vertex data is rendered on screen.

Syntax

typedef enum D3D_PRIMITIVE_TOPOLOGY {
  D3D_PRIMITIVE_TOPOLOGY_UNDEFINED,
  D3D_PRIMITIVE_TOPOLOGY_POINTLIST,
  D3D_PRIMITIVE_TOPOLOGY_LINELIST,
  D3D_PRIMITIVE_TOPOLOGY_LINESTRIP,
  D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST,
  D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP,
  D3D_PRIMITIVE_TOPOLOGY_LINELIST_ADJ,
  D3D_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ,
  D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ,
  D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ,
  D3D_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST,
  D3D_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST,
  D3D10_PRIMITIVE_TOPOLOGY_UNDEFINED,
  D3D10_PRIMITIVE_TOPOLOGY_POINTLIST,
  D3D10_PRIMITIVE_TOPOLOGY_LINELIST,
  D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP,
  D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST,
  D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP,
  D3D10_PRIMITIVE_TOPOLOGY_LINELIST_ADJ,
  D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ,
  D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ,
  D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ,
  D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED,
  D3D11_PRIMITIVE_TOPOLOGY_POINTLIST,
  D3D11_PRIMITIVE_TOPOLOGY_LINELIST,
  D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP,
  D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST,
  D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP,
  D3D11_PRIMITIVE_TOPOLOGY_LINELIST_ADJ,
  D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ,
  D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ,
  D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ,
  D3D11_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST,
  D3D11_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST
} ;

Constants

D3D_PRIMITIVE_TOPOLOGY_UNDEFINED The IA stage has not been initialized with a primitive topology. The IA stage will not function properly unless a primitive topology is defined.
D3D_PRIMITIVE_TOPOLOGY_POINTLIST Interpret the vertex data as a list of points.
D3D_PRIMITIVE_TOPOLOGY_LINELIST Interpret the vertex data as a list of lines.
D3D_PRIMITIVE_TOPOLOGY_LINESTRIP Interpret the vertex data as a line strip.
D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST Interpret the vertex data as a list of triangles.
D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP Interpret the vertex data as a triangle strip.
D3D_PRIMITIVE_TOPOLOGY_LINELIST_ADJ Interpret the vertex data as a list of lines with adjacency data.
D3D_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ Interpret the vertex data as a line strip with adjacency data.
D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ Interpret the vertex data as a list of triangles with adjacency data.
D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ Interpret the vertex data as a triangle strip with adjacency data.
D3D_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D10_PRIMITIVE_TOPOLOGY_UNDEFINED The IA stage has not been initialized with a primitive topology. The IA stage will not function properly unless a primitive topology is defined.
D3D10_PRIMITIVE_TOPOLOGY_POINTLIST Interpret the vertex data as a list of points.
D3D10_PRIMITIVE_TOPOLOGY_LINELIST Interpret the vertex data as a list of lines.
D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP Interpret the vertex data as a line strip.
D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST Interpret the vertex data as a list of triangles.
D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP Interpret the vertex data as a triangle strip.
D3D10_PRIMITIVE_TOPOLOGY_LINELIST_ADJ Interpret the vertex data as a list of lines with adjacency data.
D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ Interpret the vertex data as a line strip with adjacency data.
D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ Interpret the vertex data as a list of triangles with adjacency data.
D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ Interpret the vertex data as a triangle strip with adjacency data.
D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED The IA stage has not been initialized with a primitive topology. The IA stage will not function properly unless a primitive topology is defined.
D3D11_PRIMITIVE_TOPOLOGY_POINTLIST Interpret the vertex data as a list of points.
D3D11_PRIMITIVE_TOPOLOGY_LINELIST Interpret the vertex data as a list of lines.
D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP Interpret the vertex data as a line strip.
D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST Interpret the vertex data as a list of triangles.
D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP Interpret the vertex data as a triangle strip.
D3D11_PRIMITIVE_TOPOLOGY_LINELIST_ADJ Interpret the vertex data as a list of lines with adjacency data.
D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ Interpret the vertex data as a line strip with adjacency data.
D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ Interpret the vertex data as a list of triangles with adjacency data.
D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ Interpret the vertex data as a triangle strip with adjacency data.
D3D11_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.
D3D11_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST Interpret the vertex data as a patch list.

Remarks

Use the ID3D11DeviceContext::IASetPrimitiveTopology method and a value from D3D_PRIMITIVE_TOPOLOGY to bind a primitive topology to the input-assembler stage. Use the ID3D11DeviceContext::IAGetPrimitiveTopology method to retrieve the primitive topology for the input-assembler stage.

The following diagram shows the various primitive types for a geometry shader object.

Illustration of the various primitive types for a geometry shader object

Requirements

   
Header d3dcommon.h

See Also

Common Version Enumerations