Skip to main content
Query information about graphics-pipeline activity in between calls to BeginQuery and EndQuery.

Syntax

Members

IAVertices
Type: UINT64
Number of vertices read by input assembler. IAPrimitives
Type: UINT64
Number of primitives read by the input assembler. This number can be different depending on the primitive topology used. For example, a triangle strip with 6 vertices will produce 4 triangles, however a triangle list with 6 vertices will produce 2 triangles. VSInvocations
Type: UINT64
Specifies the number of vertex shader invocations. Direct3D invokes the vertex shader once per vertex. GSInvocations
Type: UINT64
Specifies the number of geometry shader invocations. When the geometry shader is set to NULL, this statistic may or may not increment depending on the graphics adapter. GSPrimitives
Type: UINT64
Specifies the number of geometry shader output primitives. CInvocations
Type: UINT64
Number of primitives that were sent to the rasterizer. When the rasterizer is disabled, this will not increment. CPrimitives
Type: UINT64
Number of primitives that were rendered. This may be larger or smaller than CInvocations because after a primitive is clipped sometimes it is either broken up into more than one primitive or completely culled. PSInvocations
Type: UINT64
Specifies the number of pixel shader invocations. HSInvocations
Type: UINT64
Specifies the number of hull shader invocations. DSInvocations
Type: UINT64
Specifies the number of domain shader invocations. CSInvocations
Type: UINT64
Specifies the number of compute shader invocations.

Remarks

Use this structure with D3D12_QUERY_HEAP_TYPE and CreateQueryHeap.

Requirements

Header: d3d12_xs.h or d3d12_x.h
Library: d3d12_xs.lib or d3d12_x.lib
Supported Platforms: XBOX Series consoles and XBOX One family

See Also

Core Structures
Last modified on August 20, 2026