Flags to control multidraw methods.
typedef enum D3D11X_MULTI_DRAW_FLAG
{
D3D11X_MULTI_DRAW_DRAWID_NONE,
D3D11X_MULTI_DRAW_DRAWID_AUTO_GENERATE,
D3D11X_MULTI_DRAW_DRAWID_FROM_BUFFER_FOR_ARGS,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_0,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_1,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_2,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_3,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_4,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_5,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_6,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_7,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_8,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_9,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_10,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_11,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_12,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_13,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_14,
D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_15,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_0,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_1,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_2,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_3,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_4,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_5,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_6,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_7,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_8,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_9,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_10,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_11,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_12,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_13,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_14,
D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_15,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_0,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_1,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_2,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_3,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_4,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_5,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_6,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_7,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_8,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_9,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_10,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_11,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_12,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_13,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_14,
D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_15,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_0,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_1,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_2,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_3,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_4,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_5,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_6,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_7,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_8,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_9,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_10,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_11,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_12,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_13,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_14,
D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_15,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_0,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_1,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_2,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_3,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_4,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_5,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_6,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_7,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_8,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_9,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_10,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_11,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_12,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_13,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_14,
D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_15
} D3D11X_MULTI_DRAW_FLAG;
| Constant | Description |
|---|---|
| D3D11X_MULTI_DRAW_DRAWID_NONE | No draw ID. |
| D3D11X_MULTI_DRAW_DRAWID_AUTO_GENERATE | Auto-generate the draw ID. The draw ID will start at 0 and increase by one for each draw within the multidraw. |
| D3D11X_MULTI_DRAW_DRAWID_FROM_BUFFER_FOR_ARGS | The draw ID is specified as part of the arguments buffer pBufferForArgs in the MultiDraw methods. When this flag is used, the arguments buffer will contain one additional UINT per draw. For indexed multidraws, the layout of the indirect buffer must adhere to the layout of the D3D11X_DRAW_INDEXED_INSTANCED_INDIRECT_WITH_DRAWID_ARGS structure. For non-indexed multidraws, the layout of the indirect buffer must adhere to the layout of the D3D11X_DRAW_INSTANCED_INDIRECT_WITH_DRAWID_ARGS structure. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_0 | The draw ID value will be placed in the vertex shader user data register 0. For more information about the vertex shader user data registers, see the HLSL intrinsic __XB_GetShaderUserData. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_1 | The draw ID value will be placed in the vertex shader user data register 1. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_2 | The draw ID value will be placed in the vertex shader user data register 2. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_3 | The draw ID value will be placed in the vertex shader user data register 3. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_4 | The draw ID value will be placed in the vertex shader user data register 4. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_5 | The draw ID value will be placed in the vertex shader user data register 5. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_6 | The draw ID value will be placed in the vertex shader user data register 6. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_7 | The draw ID value will be placed in the vertex shader user data register 7. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_8 | The draw ID value will be placed in the vertex shader user data register 8. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_9 | The draw ID value will be placed in the vertex shader user data register 9. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_10 | The draw ID value will be placed in the vertex shader user data register 10. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_11 | The draw ID value will be placed in the vertex shader user data register 11. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_12 | The draw ID value will be placed in the vertex shader user data register 12. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_13 | The draw ID value will be placed in the vertex shader user data register 13. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_14 | The draw ID value will be placed in the vertex shader user data register 14. |
| D3D11X_MULTI_DRAW_DRAWID_VERTEX_SHADER_USER_DATA_REG_15 | The draw ID value will be placed in the vertex shader user data register 15. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_0 | The draw ID value will be placed in the hull shader user data register 0. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_1 | The draw ID value will be placed in the hull shader user data register 1. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_2 | The draw ID value will be placed in the hull shader user data register 2. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_3 | The draw ID value will be placed in the hull shader user data register 3. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_4 | The draw ID value will be placed in the hull shader user data register 4. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_5 | The draw ID value will be placed in the hull shader user data register 5. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_6 | The draw ID value will be placed in the hull shader user data register 6. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_7 | The draw ID value will be placed in the hull shader user data register 7. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_8 | The draw ID value will be placed in the hull shader user data register 8. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_9 | The draw ID value will be placed in the hull shader user data register 9. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_10 | The draw ID value will be placed in the hull shader user data register 10. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_11 | The draw ID value will be placed in the hull shader user data register 11. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_12 | The draw ID value will be placed in the hull shader user data register 12. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_13 | The draw ID value will be placed in the hull shader user data register 13. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_14 | The draw ID value will be placed in the hull shader user data register 14. |
| D3D11X_MULTI_DRAW_DRAWID_HULL_SHADER_USER_DATA_REG_15 | The draw ID value will be placed in the hull shader user data register 15. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_0 | The draw ID value will be placed in the domain shader user data register 0. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_1 | The draw ID value will be placed in the domain shader user data register 1. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_2 | The draw ID value will be placed in the domain shader user data register 2. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_3 | The draw ID value will be placed in the domain shader user data register 3. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_4 | The draw ID value will be placed in the domain shader user data register 4. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_5 | The draw ID value will be placed in the domain shader user data register 5. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_6 | The draw ID value will be placed in the domain shader user data register 6. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_7 | The draw ID value will be placed in the domain shader user data register 7. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_8 | The draw ID value will be placed in the domain shader user data register 8. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_9 | The draw ID value will be placed in the domain shader user data register 9. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_10 | The draw ID value will be placed in the domain shader user data register 10. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_11 | The draw ID value will be placed in the domain shader user data register 11. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_12 | The draw ID value will be placed in the domain shader user data register 12. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_13 | The draw ID value will be placed in the domain shader user data register 13. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_14 | The draw ID value will be placed in the domain shader user data register 14. |
| D3D11X_MULTI_DRAW_DRAWID_DOMAIN_SHADER_USER_DATA_REG_15 | The draw ID value will be placed in the domain shader user data register 15. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_0 | The draw ID value will be placed in the geometry shader user data register 0. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_1 | The draw ID value will be placed in the geometry shader user data register 1. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_2 | The draw ID value will be placed in the geometry shader user data register 2. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_3 | The draw ID value will be placed in the geometry shader user data register 3. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_4 | The draw ID value will be placed in the geometry shader user data register 4. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_5 | The draw ID value will be placed in the geometry shader user data register 5. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_6 | The draw ID value will be placed in the geometry shader user data register 6. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_7 | The draw ID value will be placed in the geometry shader user data register 7. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_8 | The draw ID value will be placed in the geometry shader user data register 8. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_9 | The draw ID value will be placed in the geometry shader user data register 9. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_10 | The draw ID value will be placed in the geometry shader user data register 10. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_11 | The draw ID value will be placed in the geometry shader user data register 11. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_12 | The draw ID value will be placed in the geometry shader user data register 12. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_13 | The draw ID value will be placed in the geometry shader user data register 13. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_14 | The draw ID value will be placed in the geometry shader user data register 14. |
| D3D11X_MULTI_DRAW_DRAWID_GEOMETRY_SHADER_USER_DATA_REG_15 | The draw ID value will be placed in the geometry shader user data register 15. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_0 | The draw ID value will be placed in the pixel shader user data register 0. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_1 | The draw ID value will be placed in the pixel shader user data register 1. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_2 | The draw ID value will be placed in the pixel shader user data register 2. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_3 | The draw ID value will be placed in the pixel shader user data register 3. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_4 | The draw ID value will be placed in the pixel shader user data register 4. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_5 | The draw ID value will be placed in the pixel shader user data register 5. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_6 | The draw ID value will be placed in the pixel shader user data register 6. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_7 | The draw ID value will be placed in the pixel shader user data register 7. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_8 | The draw ID value will be placed in the pixel shader user data register 8. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_9 | The draw ID value will be placed in the pixel shader user data register 9. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_10 | The draw ID value will be placed in the pixel shader user data register 10. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_11 | The draw ID value will be placed in the pixel shader user data register 11. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_12 | The draw ID value will be placed in the pixel shader user data register 12. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_13 | The draw ID value will be placed in the pixel shader user data register 13. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_14 | The draw ID value will be placed in the pixel shader user data register 14. |
| D3D11X_MULTI_DRAW_DRAWID_PIXEL_SHADER_USER_DATA_REG_15 | The draw ID value will be placed in the pixel shader user data register 15. |
For more information about the vertex shader user data registers, see the HLSL intrinsic __XB_GetShaderUserData.
This enumeration is used by the following methods:
See Multi-Draw calls.
Header: Declared in d3d11_x.h.