D3D_PRIMITIVE enumeration (d3dcommon.h)

Indicates how the pipeline interprets geometry or hull shader input primitives.

Note

For programming with Direct3D 10, this API has a type alias that begins D3D10_ instead of D3D_. These Direct3D 10 type aliases are defined in d3d10.h, d3d10misc.h, and d3d10shader.h.

Syntax

typedef enum D3D_PRIMITIVE {
  D3D_PRIMITIVE_UNDEFINED = 0,
  D3D_PRIMITIVE_POINT = 1,
  D3D_PRIMITIVE_LINE = 2,
  D3D_PRIMITIVE_TRIANGLE = 3,
  D3D_PRIMITIVE_LINE_ADJ = 6,
  D3D_PRIMITIVE_TRIANGLE_ADJ = 7,
  D3D_PRIMITIVE_1_CONTROL_POINT_PATCH = 8,
  D3D_PRIMITIVE_2_CONTROL_POINT_PATCH = 9,
  D3D_PRIMITIVE_3_CONTROL_POINT_PATCH = 10,
  D3D_PRIMITIVE_4_CONTROL_POINT_PATCH = 11,
  D3D_PRIMITIVE_5_CONTROL_POINT_PATCH = 12,
  D3D_PRIMITIVE_6_CONTROL_POINT_PATCH = 13,
  D3D_PRIMITIVE_7_CONTROL_POINT_PATCH = 14,
  D3D_PRIMITIVE_8_CONTROL_POINT_PATCH = 15,
  D3D_PRIMITIVE_9_CONTROL_POINT_PATCH = 16,
  D3D_PRIMITIVE_10_CONTROL_POINT_PATCH = 17,
  D3D_PRIMITIVE_11_CONTROL_POINT_PATCH = 18,
  D3D_PRIMITIVE_12_CONTROL_POINT_PATCH = 19,
  D3D_PRIMITIVE_13_CONTROL_POINT_PATCH = 20,
  D3D_PRIMITIVE_14_CONTROL_POINT_PATCH = 21,
  D3D_PRIMITIVE_15_CONTROL_POINT_PATCH = 22,
  D3D_PRIMITIVE_16_CONTROL_POINT_PATCH = 23,
  D3D_PRIMITIVE_17_CONTROL_POINT_PATCH = 24,
  D3D_PRIMITIVE_18_CONTROL_POINT_PATCH = 25,
  D3D_PRIMITIVE_19_CONTROL_POINT_PATCH = 26,
  D3D_PRIMITIVE_20_CONTROL_POINT_PATCH = 27,
  D3D_PRIMITIVE_21_CONTROL_POINT_PATCH = 28,
  D3D_PRIMITIVE_22_CONTROL_POINT_PATCH = 29,
  D3D_PRIMITIVE_23_CONTROL_POINT_PATCH = 30,
  D3D_PRIMITIVE_24_CONTROL_POINT_PATCH = 31,
  D3D_PRIMITIVE_25_CONTROL_POINT_PATCH = 32,
  D3D_PRIMITIVE_26_CONTROL_POINT_PATCH = 33,
  D3D_PRIMITIVE_27_CONTROL_POINT_PATCH = 34,
  D3D_PRIMITIVE_28_CONTROL_POINT_PATCH = 35,
  D3D_PRIMITIVE_29_CONTROL_POINT_PATCH = 36,
  D3D_PRIMITIVE_30_CONTROL_POINT_PATCH = 37,
  D3D_PRIMITIVE_31_CONTROL_POINT_PATCH = 38,
  D3D_PRIMITIVE_32_CONTROL_POINT_PATCH = 39,
  D3D10_PRIMITIVE_UNDEFINED,
  D3D10_PRIMITIVE_POINT,
  D3D10_PRIMITIVE_LINE,
  D3D10_PRIMITIVE_TRIANGLE,
  D3D10_PRIMITIVE_LINE_ADJ,
  D3D10_PRIMITIVE_TRIANGLE_ADJ,
  D3D11_PRIMITIVE_UNDEFINED,
  D3D11_PRIMITIVE_POINT,
  D3D11_PRIMITIVE_LINE,
  D3D11_PRIMITIVE_TRIANGLE,
  D3D11_PRIMITIVE_LINE_ADJ,
  D3D11_PRIMITIVE_TRIANGLE_ADJ,
  D3D11_PRIMITIVE_1_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_2_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_3_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_4_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_5_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_6_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_7_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_8_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_9_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_10_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_11_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_12_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_13_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_14_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_15_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_16_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_17_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_18_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_19_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_20_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_21_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_22_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_23_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_24_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_25_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_26_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_27_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_28_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_29_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_30_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_31_CONTROL_POINT_PATCH,
  D3D11_PRIMITIVE_32_CONTROL_POINT_PATCH
} ;

Constants

 
D3D_PRIMITIVE_UNDEFINED
Value: 0
D3D_PRIMITIVE_POINT
Value: 1
D3D_PRIMITIVE_LINE
Value: 2
D3D_PRIMITIVE_TRIANGLE
Value: 3
D3D_PRIMITIVE_LINE_ADJ
Value: 6
D3D_PRIMITIVE_TRIANGLE_ADJ
Value: 7
D3D_PRIMITIVE_1_CONTROL_POINT_PATCH
Value: 8
D3D_PRIMITIVE_2_CONTROL_POINT_PATCH
Value: 9
D3D_PRIMITIVE_3_CONTROL_POINT_PATCH
Value: 10
D3D_PRIMITIVE_4_CONTROL_POINT_PATCH
Value: 11
D3D_PRIMITIVE_5_CONTROL_POINT_PATCH
Value: 12
D3D_PRIMITIVE_6_CONTROL_POINT_PATCH
Value: 13
D3D_PRIMITIVE_7_CONTROL_POINT_PATCH
Value: 14
D3D_PRIMITIVE_8_CONTROL_POINT_PATCH
Value: 15
D3D_PRIMITIVE_9_CONTROL_POINT_PATCH
Value: 16
D3D_PRIMITIVE_10_CONTROL_POINT_PATCH
Value: 17
D3D_PRIMITIVE_11_CONTROL_POINT_PATCH
Value: 18
D3D_PRIMITIVE_12_CONTROL_POINT_PATCH
Value: 19
D3D_PRIMITIVE_13_CONTROL_POINT_PATCH
Value: 20
D3D_PRIMITIVE_14_CONTROL_POINT_PATCH
Value: 21
D3D_PRIMITIVE_15_CONTROL_POINT_PATCH
Value: 22
D3D_PRIMITIVE_16_CONTROL_POINT_PATCH
Value: 23
D3D_PRIMITIVE_17_CONTROL_POINT_PATCH
Value: 24
D3D_PRIMITIVE_18_CONTROL_POINT_PATCH
Value: 25
D3D_PRIMITIVE_19_CONTROL_POINT_PATCH
Value: 26
D3D_PRIMITIVE_20_CONTROL_POINT_PATCH
Value: 27
D3D_PRIMITIVE_21_CONTROL_POINT_PATCH
Value: 28
D3D_PRIMITIVE_22_CONTROL_POINT_PATCH
Value: 29
D3D_PRIMITIVE_23_CONTROL_POINT_PATCH
Value: 30
D3D_PRIMITIVE_24_CONTROL_POINT_PATCH
Value: 31
D3D_PRIMITIVE_25_CONTROL_POINT_PATCH
Value: 32
D3D_PRIMITIVE_26_CONTROL_POINT_PATCH
Value: 33
D3D_PRIMITIVE_27_CONTROL_POINT_PATCH
Value: 34
D3D_PRIMITIVE_28_CONTROL_POINT_PATCH
Value: 35
D3D_PRIMITIVE_29_CONTROL_POINT_PATCH
Value: 36
D3D_PRIMITIVE_30_CONTROL_POINT_PATCH
Value: 37
D3D_PRIMITIVE_31_CONTROL_POINT_PATCH
Value: 38
D3D_PRIMITIVE_32_CONTROL_POINT_PATCH
Value: 39
D3D10_PRIMITIVE_UNDEFINED
D3D10_PRIMITIVE_POINT
D3D10_PRIMITIVE_LINE
D3D10_PRIMITIVE_TRIANGLE
D3D10_PRIMITIVE_LINE_ADJ
D3D10_PRIMITIVE_TRIANGLE_ADJ
D3D11_PRIMITIVE_UNDEFINED
The shader has not been initialized with an input primitive type.
D3D11_PRIMITIVE_POINT
Interpret the input primitive as a point.
D3D11_PRIMITIVE_LINE
Interpret the input primitive as a line.
D3D11_PRIMITIVE_TRIANGLE
Interpret the input primitive as a triangle.
D3D11_PRIMITIVE_LINE_ADJ
Interpret the input primitive as a line with adjacency data.
D3D11_PRIMITIVE_TRIANGLE_ADJ
Interpret the input primitive as a triangle with adjacency data.
D3D11_PRIMITIVE_1_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_2_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_3_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_4_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_5_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_6_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_7_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_8_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_9_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_10_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_11_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_12_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_13_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_14_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_15_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_16_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_17_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_18_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_19_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_20_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_21_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_22_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_23_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_24_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_25_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_26_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_27_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_28_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_29_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_30_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_31_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.
D3D11_PRIMITIVE_32_CONTROL_POINT_PATCH
Interpret the input primitive as a control point patch.

Remarks

The ID3D11ShaderReflection::GetGSInputPrimitive method returns a D3D11_PRIMITIVE-typed value.

The D3D11_PRIMITIVE enumeration is type defined in the D3D11.h header file as a D3D_PRIMITIVE enumeration, which is fully defined in the D3DCommon.h header file.

typedef D3D_PRIMITIVE D3D11_PRIMITIVE;

Requirements

Requirement Value
Header d3dcommon.h

See also

Core Enumerations